Einzelnen Beitrag anzeigen

Delphi.Narium

Registriert seit: 27. Nov 2017
2.415 Beiträge
 
Delphi 7 Professional
 
#4

AW: ShellExcecute Formulierung

  Alt 4. Feb 2022, 08:58
Hier würd' ich zusätzlich noch versuchen, den Rückgabewert von ShellExecute auszuwerten, der könnte dann z. B. "ERROR_FILE_NOT_FOUND = The specified file was not found." oder "ERROR_PATH_NOT_FOUND = The specified path was not found." oder weiteres lauten.

ChDir liefert leider keinen Rückgabewert, ob's geklappt hat oder nicht, aber mit GetCurrentDir kann man das prüfen. (Und in neueren Delphis geht's vermutlich noch eleganter.)
Delphi-Quellcode:
ChDir(WorkPath);
if GetCurrentDir <> WorkPath then
begin
  Fehlermeldung zu ungültigem Pfad
end
else
begin
  iResult := ShellExecute(0, 'open', PChar(WorkFile), PChar(Params), nil, SW_Hide);
  if iResult <= 32 then
  begin
    // Mögliche Fehler sind hier: https://docs.microsoft.com/en-us/windows/win32/api/shellapi/nf-shellapi-shellexecutea
    Fehlermeldung zu erfolglosem ShellExecute.
  end;
end;
  Mit Zitat antworten Zitat