AW: fremdes Programm aufrufen
Befremdlich :-(
Bitte ergänze mal die Batchdatei:
Code:
Was wird beim Start der Batch von der Kommandozeile angezeigt, was beim Start über Shellexecute?
@cd
@echo %0 @path Programmaufruf, so wie per ShellExecute @echo %ERRORLEVEL% pause Gibt es irgendwelche Unterschiede? |
AW: fremdes Programm aufrufen
Ein
Delphi-Quellcode:
zu Beginn im Script setzt das Arbeitsverzeichnis auf das Verzeichnis der Batch. (muß man dann nur noch bissl aufpassen, wenn eine Batch von einer Anderen aufgerufen wird)
cd /d "%~dp0"
z.B. bei "Ausführen als Admin" wird beim Start über den Explorer C:\Windows\System32 verwendet. (normals nimmt der Explorer das aktuell geöffnete Verzeichnis oder bei Links das, was darin abweichend angegeben wurde) Viele Programme geben als ExitCode 0 aus, wenn alles OK war, und 1 oder mehr, bei einem Fehler. Daher ist nach Programmaufrufen in einer Batch ein
Delphi-Quellcode:
oft auch recht praktisch.
@if errorlevel 1 pause
|
AW: fremdes Programm aufrufen
Lösung ist gefunden :-D, nochmals vielen Dank für die vielen Tips.
Letzlich war es erforderlich vor dem Aufruf des Programms mit chDir() in sein Arbeitsverzeichnis zu wechseln. |
AW: fremdes Programm aufrufen
Genau dafür ist der Directory-Parameter von ShellExecute da.
|
AW: fremdes Programm aufrufen
Zitat:
Es wurde Dir die ganze Zeit gesagt dass vermutlich das Verzeichnis falsch ist, unter anderem auch von mir. (gleich am Tag deiner Fragestellung) Du hast also 4 Tage damit verschwendet diese Information zu ignorieren. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:26 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