Malinero 10 Geschrieben 12. Januar 2006 Melden Teilen Geschrieben 12. Januar 2006 Situation: Windows Server 2003 und ein eigener Dienst / Service (MISService) von uns. Dienst "MISService" startet verschiedene weitere Prozesse. Der MISService darf erst beendet werden, wenn alle Prozesse vorher beendet wurden. 1. Versuch den Service zu beenden: Der Dienst kann nicht beendet werden. Das ist auch richtig so, da dies von einem Prozess verhindert wird der von dem Dienst aufgerufen wird. 2. Versuch den Service zu beenden: Der "MISService"-Dienst wird beendet, obwohl die anderen Prozesse noch laufen. DIES DARF ABER NICHT PASSIEREN!!!!!!!!!!!!! Unter W2K-Server tritt das nicht auf. Da kann der MISService nicht beendet werden, solange noch ein Prozess läuft. Hat es am ServiceControlManager (2000 VS 2003) irgendwelche Änderungen gegeben? Danke für die Hilfe Zitieren Link zu diesem Kommentar
traced82 10 Geschrieben 19. Januar 2006 Melden Teilen Geschrieben 19. Januar 2006 hm.... es gibt mit net stop einen "schalter" der abhängige Dienste auch mit beendet, einfach mal mit net stop /? oder so probieren! VG Basti Zitieren Link zu diesem Kommentar
IThome 10 Geschrieben 19. Januar 2006 Melden Teilen Geschrieben 19. Januar 2006 Man kann in der Registry in den entsprechenden Diensten, die vorher beendet werden müssen, einen Eintrag "DependOnService" setzen, da würde dann der MISService stehen. Wenn Du den MISService beendest (net stop misservice) wird vorher gefragt, ob die anderen Dienste (alle, bei denen in DependOnService der MISService eingetragen ist) auch beendet werden sollen. Wenn Du mit JA antwortest, werden erst diese Dienste und zum Schluss der MISService beendet. Nach der Änderung musst Du neu starten ... edit: Prozesse, nicht Dienste, hab´s erst beim dritten Mal lesen geschnallt :rolleyes: , dann klappt das oben natürlich nicht :( Zitieren Link zu diesem Kommentar
Hirgelzwift 10 Geschrieben 20. Januar 2006 Melden Teilen Geschrieben 20. Januar 2006 batch stricken :D Zitieren Link zu diesem Kommentar
lefg 276 Geschrieben 20. Januar 2006 Melden Teilen Geschrieben 20. Januar 2006 Hallo, da stimmt dann etwas Grundsätzliches nicht. Falls diese mit 2k funktionierte, mit 2k3 aber nicht, rate ich beim Hersteller des Programmes nachzufragen, auf dessen Servicesite, in dessen FAQ nachzuschauen, den Servicezu kontaktieren. Gruß Edgar Zitieren Link zu diesem Kommentar
Malinero 10 Geschrieben 20. Januar 2006 Autor Melden Teilen Geschrieben 20. Januar 2006 Falls diese mit 2k funktionierte, mit 2k3 aber nicht, rate ich beim Hersteller des Programmes nachzufragen, auf dessen Servicesite, in dessen FAQ nachzuschauen, den Servicezu kontaktieren. Wir sind der Hersteller ;) Das Problem liegt bei Microsoft. Muss mit dem SCM (Service Control Manager) zusammenhängen. Nochmals zur Verdeutlichung: Dienst |____________Prozess MISService |____________BDIDServ |____________LAHInt |____________DataServ |____________... Der MISService startet die Prozesse BDIDServ, LAHInt, ... MISService darf erst beendet werden, wenn alle Prozesse beendet sind. Läuft noch ein Prozess des Dienstes wird des MISService nicht beendet. (Unter w2k funzt das auch richtig, da kann ich es hundert mal versuchen den Dienst zu beenden). Bei W2k3 wird der Dienst nach dem zweiten Versuch gekillt. Die Prozesse laufen aber noch weiter (siehe Task-Manager). Zitieren Link zu diesem Kommentar
Hirgelzwift 10 Geschrieben 20. Januar 2006 Melden Teilen Geschrieben 20. Januar 2006 edit: falsch ;) edit: Du kannst aus diesen Prozessen keinen eigenen Dienst von deinen Programmieren stricken lassen denn schließlich: Wir sind der Hersteller ;) Zitieren Link zu diesem Kommentar
lefg 276 Geschrieben 20. Januar 2006 Melden Teilen Geschrieben 20. Januar 2006 Hm... Ein Dienst ist -vereinfacht gesehen- ein Programm, das nach dem Systemstart automatisch (vom System) gestartet wird. Der Betrieb des Programms hat einen oder mehrere Prozesse zur Folge. Sollen diese beim Beenden des Programmes geschlossen werden, muss das Programm das machen, es muss dazu programmiert sein. Ich schreib das mal so, meine Nichte sagt es so. ;) Die hat in der Schule Informatik. Zitieren Link zu diesem Kommentar
Malinero 10 Geschrieben 20. Januar 2006 Autor Melden Teilen Geschrieben 20. Januar 2006 Der Betrieb des Programms hat einen oder mehrere Prozesse zur Folge. Stimmt Sollen diese beim Beenden des Programmes geschlossen werden, muss das Programm das machen, es muss dazu programmiert sein. unser Dienst / Programm darf aber erst beendet werden, wenn alle Prozesse beendet sind. (Wie es ja unter w2k richtig funktioniert). Wenn noch ein externer Zugriff von einem Steuerungs-PC auf einen Prozess des Dienstes besteht, darf er nicht beendet werden. Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.