Seite 1 von 1

Externes Programm mit Leerzeichen vor Paramatern aufrufen?

Verfasst: 06.04.2005 10:50
von Jet1199
Hallo,
ich versuche mit RunProgram ein Programm incl. Parametern (mit Leerzeichen getrennt) aufzurufen. Folgender Programmschnipsel:

x=RunProgram("c:\lha e "+vsource$+"\"+datei$+" *.dat")

Das erzeugt den Aufruf c:\lha e \\jens\x\1234 *.dat
-> Die gepackten *.dat-Dateien aus 1234.lzh sollen ausgepackt werden.

Windows bringt mir den Fehler, daß das aufgerufene Programm nicht gefunden wird (vermutlich sucht es nicht nach c:\lha, sondern nach der ganzen Zeile als Programmname.
Diese Zeile ins Ausführen-Feld von Windows eingegeben funktioniert alles.

Ausweg könnte sein, diese Zeile in eine Datei zu schreiben, und diese BAT-Datei dann aufzurufen. Gibt's bessere Wege?

Die Windows-Auspack-Funktionen über PB anzusprechen bin ich zu viel Neuling, muß wohl diesen DOS-Umweg gehen.

Verfasst: 06.04.2005 11:36
von NicTheQuick
Schau dir mal die restlichen Parameter von [c]RunProgram()[/c] an.
Vielleicht hilft dir das weiter.
[c]Ergebnis = RunProgram(DateiName$, [, Parameter$, ArbeitsVerzeichnis$ [, Flags]])[/c]

Verfasst: 06.04.2005 12:01
von Jet1199
Danke Quick-Nic :)
Des Rätsels Lösung ist das Trennen von Programmaufruf und Parametern.
x=runprogram(prgname$,parameter$,"",1) funktioniert.

Trotz Deines Hinweises über die schönen Beispiele in der Hilfe: Betriebsblindheit und verbohrte Wege zur falschen Lösung bleiben. Das war bei den unterschiedlichen Event-Abfragen genauso wie bei der Abtrennung der Übergabeparameter.

Jedenfalls Danke, es läuft ... wieder ein Schritt vorwärts :allright: