Hallo zusammen
Wie der Tittel schon sagt möchte ich mit Runnshell eine CMD Sarten, die nciht sichtbar ist.
es reicht leider nciht wenn sie in der Taskleiste verschwindet, sie soll so unsichtbar sein, dass man sie wenn überhaupt nur noch üder den Taskmaneger in den Processen findet.
Das ist wichtig weil ich eine cmd habe, die länger läuft und nicht geschlossen werden darf.
gibt es da eine Möglichkeit?
Danke im Vorraus
Mit Runshell eine Unsichtbare cmd starten
Moderator: Moderatoren
-
- Rookie
- Beiträge: 12
- Registriert: Mo, 01. Sep 2008 9:51
- brandelh
- Foren-Moderator
- Beiträge: 15710
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 73 Mal
- Danksagung erhalten: 38 Mal
- Kontaktdaten:
Re: Mit Runshell eine Unsichtbare cmd starten
Hi,
normalerweise geht sowas nicht, aber eventuell könnte es funktionieren, wenn du eine
normale asyncrone CMD startest (die sieht man), welche ihrerseits per START eine andere CMD
unter einem anderen Benutzer startet. Ich meine, dass im Taskmanager eines Benutzers nur
seine eigenen Tasks stehen.
normalerweise geht sowas nicht, aber eventuell könnte es funktionieren, wenn du eine
normale asyncrone CMD startest (die sieht man), welche ihrerseits per START eine andere CMD
unter einem anderen Benutzer startet. Ich meine, dass im Taskmanager eines Benutzers nur
seine eigenen Tasks stehen.
Gruß
Hubert
Hubert
-
- Rookie
- Beiträge: 12
- Registriert: Mo, 01. Sep 2008 9:51
Re: Mit Runshell eine Unsichtbare cmd starten
wenn man die im Tasmanager sieht wer mir noch egal
einen anderen Bentuzer habe ich auch nicht
das Problem ist nur das ich über die cmd eine andere anwendung starte und es im Xbase nur weiter gehen soll wenn,
wenn diese Anwendung wieder beendet wurde.
deshalb geht asynchron sowieso nicht.
und im moment geht das ganze so wie ich das möchte nur wenn man die cmd schließt läuft der xbase code weiter und wartet nicht mehr bis die anwendung geschloßen wird.
einen anderen Bentuzer habe ich auch nicht
das Problem ist nur das ich über die cmd eine andere anwendung starte und es im Xbase nur weiter gehen soll wenn,
wenn diese Anwendung wieder beendet wurde.
deshalb geht asynchron sowieso nicht.
und im moment geht das ganze so wie ich das möchte nur wenn man die cmd schließt läuft der xbase code weiter und wartet nicht mehr bis die anwendung geschloßen wird.
-
- Rekursionen-Architekt
- Beiträge: 315
- Registriert: Mo, 16. Okt 2006 13:04
- Wohnort: Region Stuttgart
Re: Mit Runshell eine Unsichtbare cmd starten
Hallo,
probiere die Funktion RunShellHidden() aus dem Anhang. Etwas Ähnliches verwende ich.
Viele Grüße
Günter
probiere die Funktion RunShellHidden() aus dem Anhang. Etwas Ähnliches verwende ich.
Viele Grüße
Günter
- AUGE_OHR
- Marvin
- Beiträge: 12913
- Registriert: Do, 16. Mär 2006 7:55
- Wohnort: Hamburg
- Hat sich bedankt: 19 Mal
- Danksagung erhalten: 46 Mal
Re: Mit Runshell eine Unsichtbare cmd starten
aber genau das ist doch asynchron !!!ichbindabei hat geschrieben:das Problem ist nur das ich über die cmd eine andere anwendung starte und es im Xbase nur weiter gehen soll wenn,
wenn diese Anwendung wieder beendet wurde.
deshalb geht asynchron sowieso nicht.
und im moment geht das ganze so wie ich das möchte nur wenn man die cmd schließt läuft der xbase code weiter und wartet nicht mehr bis die anwendung geschloßen wird.
wenn beide gleichzeitig laufen sollen musst du die synchron laufen lassen.
ich habe mal kurz in Günter´s Source geschaut und frage mich ob du per
Code: Alles auswählen
lSuccess := DllCall( "SHELL32.DLL" , DLL_STDCALL, ;
"ShellExecuteA", AppDesktop():GetHWND(), "open", cPath+cFile,;
NIL, CurDir(), SW_NORMAL ) // SW_MAXIMIZE
Du rufst also nicht die Application selbst auf sondern den verknüpften Datei Type die dann die Application von selbst öffnet ?
Also statt Word.EXE rufst du "C:\Eigene Dateien\a\MyText.DOC" auf und das startet ja dann Word mit dem Dokument.
Nachtrag : so ein Tool (CMDOPEN.ZIP) liegt in der Wissensbasis
gruss by OHR
Jimmy
Jimmy
-
- Rookie
- Beiträge: 12
- Registriert: Mo, 01. Sep 2008 9:51
Re: Mit Runshell eine Unsichtbare cmd starten
Vielen Dank Günter die Funtion ist genau das was ich brauche.