Veröffentlicht 7. April 200223 j Mein Programm soll ein externes Programm mit parametern aufrufen. Das Programm muss aber so aufgerufen werden, wie wenn es aus dem explorer - also aus seinem homeverzeichnis aus - aufgerufen wurde... ich hab da jetzt mit dem "spawnl" rumprobiert, es aber nicht hinbekommen. er startet mit dem aufruf spawnl(P_NOWAIT,myExec.c_str(),myExec.c_str(),myArgv,NULL); das programm, aber aus dem aktuellen startverzeichniss. ich habe es auch mal mit spawnl(P_NOWAIT,"C:\homedir\","myapp.exe",myArgv,NULL); probiert, das hat aber nicht funktioniert. denn da hat er gar nichts mehr gestartet. ich hoffe mir kann einer weiterhelfen. achja, was ich auch noch suche, ist eine möglichkeit tatsturbefehle (wie in vb sendkeys) an andere programme zu schicken. gibt es da ne lösung für borland builder 5? danke
8. April 200223 j Original geschrieben von devil achja, was ich auch noch suche, ist eine möglichkeit tatsturbefehle (wie in vb sendkeys) an andere programme zu schicken. gibt es da ne lösung für borland builder 5? In der User32.dll gibt es die Funktion keybd_event In Delphi wird die dortige Implementierung so Aufgerufen keybd_event(Ord('a'), 0, 0, 0); keybd_event(Ord('a'), 0, KEYEVENTF_KEYUP, 0); Wie es im builder aussieht kannst du dir vielleicht selber denken ... Ach ja, du musst erst Key_down und dann Key_up aufrufen um einen Tastendruck zu simulieren.
10. April 200223 j bei dem anderen Problem kann mir keiner Helfen???? Oder ist das Thema schon zu alt?
10. April 200223 j Eine kleine Möglichkeit, warum das Programm mit der zweiten Variante gar nicht startet: Du mußt \ Durch \\ ersetzen, da nur \\ einen Backslash erzeugt. HTH Jan
12. April 200223 j Ansonsten gäbe es noch den ShellExecute bzw. ShellExecuteEx-API-Call unter Windows. Bei beiden kannst - wenn ich mich jetzt nicht total irre - den Arbeitspfad als Parameter übergeben.
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.