También puedes modificar la función un poquito:
Código Delphi
[-]
function Ejecutar(Filename, Param: string; ShowWindow: WORD): DWORD;
var
StartupInfo:TStartupInfo;
ProcessInfo:TProcessInformation;
begin
GetStartupInfo(StartupInfo);
StartupInfo.wShowWindow:= ShowWindow;
if CreateProcess(nil,PChar(Filename + ' ' + Param),nil,nil, FALSE,
CREATE_NEW_CONSOLE or NORMAL_PRIORITY_CLASS,nil,nil,StartupInfo,
ProcessInfo) then
begin
WaitforSingleObject(ProcessInfo.hProcess,INFINITE);
GetExitCodeProcess(ProcessInfo.hProcess,Result);
end else
Result:= DWORD(-1);
end;
Ejecutar('notepad.exe','hola.txt',sw_show);