Datei Pfad übergabe _argv
-
Leute ich seh mal wieder den wald vor lauter bäumen nicht mehr.
Ich habe eine Anwendung (A.Exe). Es gibt für meine Anwendung einen eigenen Dateityp.
Wenn ich nun diese Datei anklicke öffnet sich mein Programm und möchte ich wissen welche Datei geöffnet wurde.Mir war so als würde mir argv diesen Pfad liefern. Aber er liefert mir mit _argv[0} den Pfad der Exe und sonst nix. Vertuh ich mich da irgendwie?
-
_argv[1] !?
Die VCL bietet hierfür übrigens auch eine Entsprechung namens
ParamStr
.
-
Das ist Richtig liefert mir aber genau das gleiche Ergebnis und zwar den Pfad der Exe und eventuelle Parameter falls vorhanden.
Ich benötige aber den Pfad von der Datei mit der die Exe geöffnet wurde.
-
Hast du dir Jansens Post genau angeschaut? Er schrieb argv[1] und nicht 0.
Wenn du das Programm geschrieben hast, solltest du auch wissen wie die Daten übernommen werden.
-
Hab ich:
argv[1] liefert mir entweder einen Parameter wenn ich ihn übergebe ansonsten ist er leer.
also öffne ich zb über Datei mit parameter zb: C:\a.exe param1
dann steht da param1 drinn
wenn ich ohne parameter öffne über datei dann ist sie leer.
und argv[0] liefert mir immer den pfad zur Exe.
Mir war auch so als ob das eigentlich funktionieren müsste - bzw glaube ich sogar das des schonmal ging. Kann das an Win7 liegen?
-
Ich erklär es mal genauer:
Ich habe eine Datei mit endung filename.a (ist nur beispiel) diese endung ist mit meiner Anwendung verknüpft.
Wenn ich nun zb. auf die datei filetest.a klicke dann öffnet sich meine Anwendung. Das funktioniert. Nun hab ich das Problem das ich rausfinden muss über welche datei meine Anwendung geöffnet wurde denn filetest.a kann sich überall befinden.
angenommen ich übergebe jetzt mal keine extra parameter dann liefert mir _argc 1 zurück.
und in _argv[0] befindet sich der Pfad zur Exe.
_argv[1] ist leer. das sagte mir ja auch _argc schon.gebe ich einen parameter mit.
dann liefert mir _argc 2 zurück.
_argv[0] pfad zur exe
_argv[1] befindert sich der übergebene parameter.Ich brauche jedoch den Pfad zu der Datei filetest.a um zb den Inhalt auslesen zu können mit meiner Anwendung.
-
tomatenaufaugen schrieb:
Ich habe eine Datei mit endung filename.a (ist nur beispiel) diese endung ist mit meiner Anwendung verknüpft.
Dann wird wohl die Verknüpfung, d.h. der entsprechende Registry-Eintrag fehlerhaft sein.
Dazu gibt es m.E. einen FAQ-Eintrag hier, alternativ sollte die Suchfunktion helfen.
-
Das habe ich auch schon leider mehrfach geprüft.
bzw geht der eintrag ja auch. also parameter wenn ich mit angebe werden übergeben und meine Anwendung öffnet sich auch.
Das Icon für meine Anwendung ist auch dem File zugewissen.Also Eigentlich sollte alles funktionieren.
Ich weis da echt net mehr weiter. Ich werd jetzt mal versuchen ein neues Projekt zu beginnen und das mal da versuchen. mal sehen was da passiert.
-
leute ich habs.
Mal wieder ne kleinigkeit was mich zum verzweifeln bringt.
musste als parameter %1 mit übergeben dieser liefert dann den pfad der datei über die die Anwendung geöffnet wurde.
So ne Art Platzhalter.
Egal ich freu mich..... und danke euch.
-
im übrigen scheint euch Google zu lieben. ......
ich google zeitgleich wegen meinem problem und finde den Beitrag den ich gerade eben erst hier selbst geschrieben habe an oberster stelle.
Respeckt
-