Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi ShellExecute mit Arbeitsverzeichnis (https://www.delphipraxis.net/85979-shellexecute-mit-arbeitsverzeichnis.html)

Anthauri 7. Feb 2007 13:36


ShellExecute mit Arbeitsverzeichnis
 
Hallo zusammen.

So nachdem ich nun diverse Einträge zur ShellExecute gelesen habe, konnte ich zu meinem Problem keine Lösung finden - bin vielleicht auch zu blind.


Folgendes habe ich:

Mein Programm wird in irgendeinem Verzeichnis vom Anwender gestartet. In diesem Verzeichnis liegt eine Text-Datei mit Pfadangaben und Programmnamen der aufzurufenden Programmen vor (die Einträge sind mir vorher nicht bekannt).
Diese wird verarbeitet und die Programme dann per ShellExecute aufgerufen.

Das Problem dabei ist, dass die gerufenen Programme in ihrem eigenen Verzeichnis laufen müssen und nicht in dem Verzeichnis meines (rufenden) Programms, da sich in den eigenen verzeichnissen jeweils notwendige Steuerdateien befinden.


Mein Testcoding sieht derzeit so aus:

Delphi-Quellcode:
ShellExecute(0, 'open', pchar(temp_string), nil, nil, SW_NORMAL);
Dabei enthält Temp_String zum Beispiel ".\Subdir\Analyzer.exe" oder "C:\temp\Clear.exe".
Es können also sowohl relative als auch feste Pfadangaben vorkommen.

Das Programm wird jeweils auch aufgerufen, findet dann aber seine Steuerdateien nicht, da es im Verzeichnis meines (rufenden) Programmes läuft.

Kann man dem ShellExecute irgendwie mitgeben wo das Programm laufen soll (geht bei diversen Windowsanwendungen auch)?

Jelly 7. Feb 2007 13:38

Re: ShellExecute mit Arbeitsverzeichnis
 
Wie wärs denn, wenn du dir einfach mal die Doku zu shellexecute unter Delphi ankuckst, und du dir mal jeden Parameter unter die Lupe nimmst :zwinker:

Anthauri 7. Feb 2007 15:02

Re: ShellExecute mit Arbeitsverzeichnis
 
Wenn ich im Delphieditor direkt die Hilfe aufrufe und Shellexecute eingebe wird nichts dazu gefunden.
Auch in den anderen Hilfedateien, die ich zu Delphi habe, wird im Index nichts dazu gefunden.

Worunter steht denn die Hilfe dazu?

Klaus01 7. Feb 2007 15:09

Re: ShellExecute mit Arbeitsverzeichnis
 
mit dem Cursor auf shellexecute gehen und F1 drücken.

Grüße
Klaus

Luckie 7. Feb 2007 15:17

Re: ShellExecute mit Arbeitsverzeichnis
 
Zitat:

Zitat von Anthauri
Wenn ich im Delphieditor direkt die Hilfe aufrufe und Shellexecute eingebe wird nichts dazu gefunden.
Auch in den anderen Hilfedateien, die ich zu Delphi habe, wird im Index nichts dazu gefunden.

Das ist ja auch eine Win32-API-Funktion, da musst du schon mal in der Dokumentation von Microsoft gucken. Aber man könnte ja auch mal den Begriff in Google eingeben und sich überraschen lassen. :roll:


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:49 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz