AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Paramater wärend der Laufzeit übergeben?
Thema durchsuchen
Ansicht
Themen-Optionen

Paramater wärend der Laufzeit übergeben?

Ein Thema von Tommy1988 · begonnen am 9. Okt 2007 · letzter Beitrag vom 9. Okt 2007
Antwort Antwort
Seite 1 von 2  1 2      
Tommy1988
(Gast)

n/a Beiträge
 
#1

Paramater wärend der Laufzeit übergeben?

  Alt 9. Okt 2007, 16:05
Hallo, kann mir wer vielleicht sagen, wie ich einer normale exe-datei z.B. als Parameter den eigenen Dateinamen wärend der Laufzeit anhängen kann?
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Paramater wärend der Laufzeit übergeben?

  Alt 9. Okt 2007, 16:06
Den eigenen Dateinamen bekommst du automatisch als 1. Parameter ParamStr(0)
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: Paramater wärend der Laufzeit übergeben?

  Alt 9. Okt 2007, 16:06
Was willst?

Code:
D:\irgendetwas.exe meinDelphiProgramm.exe
?
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#4

Re: Paramater wärend der Laufzeit übergeben?

  Alt 9. Okt 2007, 16:06
was meinst du mit anhängen?
Willst du die gleiche Exe nochmal aufrufen nur eben mit (anderen) Parametern?
Oder willst du für die laufende Instanz die Parameter ändern (was keinen Sinn machen würde)
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Paramater wärend der Laufzeit übergeben?

  Alt 9. Okt 2007, 16:08
Parameter werden nur beim Start ausgewertet. Ein nachträgliches übergeben ist nicht möglich ohne die Anwendung neu zu starten.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Tommy1988
(Gast)

n/a Beiträge
 
#6

Re: Paramater wärend der Laufzeit übergeben?

  Alt 9. Okt 2007, 16:17
mhh.. ja da geht es eigentlich nur um einen kleinen test den ich machen möchte:

ich möchte dateiendungen mit einem testprogramm verknüpfen, damit ich die mit meinem programm halt aufrufen kann. aber so bringt das ja nix, weil nur das testprogramm (ein leeres form) zu sehen ist.

da dacht ich muss man doch irgentwe abfragen können, von was für einer datei ich aus geklickt habe
also ich mein, zur visuellen darstellung den dateinamen der geklickten datei vielleicht in ein label eintragen
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#7

Re: Paramater wärend der Laufzeit übergeben?

  Alt 9. Okt 2007, 16:19
Hallo,

den Namen der Datei solltest du in der Regel als ersten Parameter übergeben bekommen. Du hast die Art der Übergabe doch selbst in der Registry angegeben.

Grüße vom marabu
  Mit Zitat antworten Zitat
Benutzerbild von Dunkel
Dunkel

Registriert seit: 26. Mär 2007
Ort: Klingenstadt
541 Beiträge
 
Delphi 2007 Enterprise
 
#8

Re: Paramater wärend der Laufzeit übergeben?

  Alt 9. Okt 2007, 16:22
Zitat von Luckie:
Parameter werden nur beim Start ausgewertet.
Richtig.
Zitat von Luckie:
Ein nachträgliches übergeben ist nicht möglich ohne die Anwendung neu zu starten.
Eingeschränkt falsch.
Erste Instanz des Programms mit Parametern starten -> Programm läuft.
Zweite Instanz des selben Programms mit anderen Parametern starten -> die zweite Instanz "merkt" via Semaphore (oder eine ähnliche Technik) dass schon eine Instanz (und zwar die erste) des Programms läuft und sendet via Pipes (o.Ä.) eine Nachricht an diese in der die übergebenen Parameter übermittelt werden und schließt sich danach wieder.
Die erste Instanz empfängt die Pipe-Nachricht und verarbeitet die übergebenen Parameter entsprechend.

Fazit: Es ist möglich! Such mal nach Semaphore (CreateSemaphore), Pipes & MMF (Memory Mapped Files), damit mache ich ähnliches.
Es ist zu wahr um schön zu sein...
  Mit Zitat antworten Zitat
s-off
(Gast)

n/a Beiträge
 
#9

Re: Paramater wärend der Laufzeit übergeben?

  Alt 9. Okt 2007, 16:44
Zitat von Dunkel:
Zweite Instanz des selben Programms mit anderen Parametern starten -> die zweite Instanz "merkt" via Semaphore (oder eine ähnliche Technik) dass schon eine Instanz (und zwar die erste) des Programms läuft und sendet via Pipes (o.Ä.) eine Nachricht an diese in der die übergebenen Parameter übermittelt werden und schließt sich danach wieder.
Die erste Instanz empfängt die Pipe-Nachricht und verarbeitet die übergebenen Parameter entsprechend.
Das machen Programme wie bspw. MS-Word doch genauso.
  Mit Zitat antworten Zitat
Tommy1988
(Gast)

n/a Beiträge
 
#10

Re: Paramater wärend der Laufzeit übergeben?

  Alt 9. Okt 2007, 19:00
Zitat:
was meinst du mit anhängen?
Naja, eigentich meine ich das hier:
Angenommen ich registriere eine eigene Dateiendung.

Dann klicke ich doppelt auf diese Date mit meiner Dateiendung, was passiert?
Das entsprechende Programm öffnet sich.
So, es sollte sich aber nicht "nur" das Programm öffnen, sondern entsprechend der Datei die ich doppelt geklickt habe, etwas ausführen. Ganz einfach als Beispiel z.b. den Dateinamen der doppelt-geklicketn Datei im Label anzeigen.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:19 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz