a) Es funktioniert gar nicht. Dann müßte folgendes auch nicht gehen:
Delphi-Quellcode:
program Project1;
uses
Windows, ShellAPI;
begin
if ParamCount() < 1 then
ShellExecute(0, nil, PChar(ParamStr(0)), 'Hello World', nil, SW_SHOWNORMAL)
else
MessageBox(0, GetCommandLine(), 'foo', MB_ICONINFORMATION);
end.
b) Es funktioniert unter den Bedingungen nicht.
c) Das Programm ignoriert die Parameter.
Um zwischen b/c zu unterscheiden, kannst Du
dieses Tool herunterladen und unter 'Environment' die Kommandozeile überprüfen.