Das könnte hinkommen, den Wert 0 schein es in SE_ERR_... nicht zu geben, also würde es wohl beides funktionieren.
Ich hatte die 0 nur deswegen weggelassen:
Delphi-Quellcode:
{ Define the severity codes }
ERROR_SUCCESS = 0; { The operation completed successfully. }
NO_ERROR = 0; { No dderror }
Ich hab es jetzt so gemacht:
Delphi-Quellcode:
If (Prog = '') or (ShellExecute(..) <= SE_ERR_DLLNOTFOUND) Then
ShellExecute(...);
{ SE_ERR_DLLNOTFOUND = 32 }