Hallo beisammen,
ich habe ein Problem mit der Systemanzeige des Cursors (Sanduhr).
Und zwar möchte ich ein externes Programm (ohne Oberfläche als Service erstellt) starten und fertig.
Also nicht warten auf feedback (Message).
Egal was ich einstelle, ich bekommen immer die Sanduhr (CD) zu sehen. Kann mir jemand einen Tip geben?
Das ist mein Code:
Das aufgerufene Programm wird ebenfalls ein anderes Programm aufrufen mit gleicher Routine.
Kommentiere ich den Aufruf aus, so ist keine Sanduhr zu sehen, es liegt also am CreateProcess. Der Service hat keine Oberfläche.
Compiler: Delphi XE7
Betriebssysteme Win7 oder höher, Serverversionen
Danke euch und Gruß
Peter
ich habe ein Problem mit der Systemanzeige des Cursors (Sanduhr).
Und zwar möchte ich ein externes Programm (ohne Oberfläche als Service erstellt) starten und fertig.
Also nicht warten auf feedback (Message).
Egal was ich einstelle, ich bekommen immer die Sanduhr (CD) zu sehen. Kann mir jemand einen Tip geben?
Das ist mein Code:
Code:
procedure TFMain.RunProcessBC(PStr : string); var FName: string; StartInfo: TStartupInfo; ProcInfo: TProcessInformation; Priority: Integer; begin FillChar(StartInfo,SizeOf(TStartupInfo),#0); FillChar(ProcInfo,SizeOf(TProcessInformation),#0); StartInfo.cb := SizeOf(TStartupInfo); fname := extractfiledir(paramstr(0))+'\myfilehere.exe '+PStr; // priority über Ini- Datei gesteuert UniqueString(fname); try CreateProcess(nil, PChar(FName), nil, nil,False, DETACHED_PROCESS + Priority, nil, nil, StartInfo, ProcInfo); finally CloseHandle(ProcInfo.hProcess); CloseHandle(ProcInfo.hThread); end; end;
Kommentiere ich den Aufruf aus, so ist keine Sanduhr zu sehen, es liegt also am CreateProcess. Der Service hat keine Oberfläche.
Compiler: Delphi XE7
Betriebssysteme Win7 oder höher, Serverversionen
Danke euch und Gruß
Peter
Comment