fremden Pfad aufrufen
-
Hallo,
also ich habe folgendes Problem.
Ich habe eine Toolbox, die verschieden kleine Anwendungen aufrufen soll.
Mein Problem ist jetzt, dass das Programm die Anwendungen zwar startet aber nur, wenn ich einen konkreten Pfad angebe.
Ich will aber davon ausgehen, dass ich nicht weiß wo die Programme liegen.
Vielleicht kann man das über die Registry öffnen, aber da is ja auch kein Pfad angegeben.
Habe auf der Suche hier im Forum leider nur das hier:
http://www.c-plusplus.net/forum/viewtopic-var-t-is-116103-and-highlight-is-registry.htm/
gefunden...Wäre super, wenn ihr mir da vlt nen Tipp geben könntet.
Gruß Janinoe
-
Hab ich das richtig verstanden: dein Programm soll IRGENDWELCHE Programme oeffnen, die IRGENDWO liegen?
Das ist nur moeglich wenn (ich nehm mal an du verwendest Windows):
a) die Programmverzeichnisse in der PATH-Umgebungsvariable des Computers gespeichert sind
b) du die Programmverzeichnisse kennst
c) die Programme sowieso im gleichen Verzeichnis liegen wie dein Programm (bzw. in der current working directory)Ob die Programme, die du aufrufst, ihre Verzeichnisse irgendwo ablegen (z. B. Registry) ist von Programm zu Programm unterschiedlich. Da musst du selbst nachforschen. Zum Auslesen der Registry findest du in der MSDN die passenden Funktionen.
-
Also, das sind 4 bestimmte Programme, die auch immer im gleichen Ordner liegen.
(Werden bei der Installation des Hauptprogramms mitinstalliert).
Ja, mein Programm liegt im gleichen Orden...Nur kann ich ja nicht sagen, wo der User hininstalliert...Das muss ich halt irgendwie rausfinden
-
Wenn dein Programm im gleichen Verzeichnis liegt, ist es kein Problem, die anderen aufzurufen.
Dazu nimmst du einfach CreateProcess mit dem gewünschten Dateinamen. Der Pfad kann dir egal sein, die Funktion prüft sowieso zuerst, ob die Datei im aktuellen Verzeichnis (deines Programmes) liegt.
-
Klappt jetzt. Vielen vielen Dank euch, für die Hilfe!!!
