vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevAniGif - als kostenlose Vollversion auf unserer vb@rchiv CD Vol.5  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Fortgeschrittene
Windows 2k/XP: Dienst deaktivieren 
Autor: whisky
Datum: 13.05.04 20:37

Kann mir einer sagen wie ich das machen kann? Ich will einen Dienst (de)aktivieren lassen - nicht stoppen und starten - aktivieren und deaktivieren.

Geht das? Wie geht das?

(Visual Basic .net - Version 2008)

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Windows 2k/XP: Dienst deaktivieren 
Autor: WaldiMaywood
Datum: 13.05.04 21:33

Mit der .NET Klasse ServiceController ist das wahrscheinlich nicht möglich, aber mit der WMI schon:
       Dim wmi As ManagementObjectSearcher = New ManagementObjectSearcher( _
         "Select * from WIN32_SERVICE")
        For Each moo As ManagementObject In wmi.Get
            If (moo.Item("Name").ToString.ToUpper = "IISADMIN") Then
                moo.InvokeMethod("ChangeStartMode", New Object() {"Disabled"}) _
                  : Exit For
            End If
        Next
Ein Verweis + Imports auf die System.Management(.dll) setzen, dann sollte es möglich sein, Dienste zu deaktivieren.

Steve
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Windows 2k/XP: Dienst deaktivieren 
Autor: Neo21
Datum: 14.05.04 08:27

mit der klasse servicecontroller kann man einen dienst nicht wirklich aktivieren oder deaktivieren.
sondern pausieren, und fortfahren lassen. (was fast das selbe ist oder?)
dim sc as new system.serviceprocess.servicecontroller
sc.servicename = "Test"
sc.pause
sc.continue
du solltest aber vorher schauen ob sich der dienst anhalten und fortsetzen läßt.

dim sc as new system.serviceprocess.servicecontroller
sc.servicename = "Test"
if sc.canpauseandcontinue = true then
    sc.pause 
    sc.continue
end if
hoffe mal das hilft dir weiter
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Windows 2k/XP: Dienst deaktivieren 
Autor: whisky
Datum: 14.05.04 19:26

<<was fast das selbe ist oder?

Nein ist es leider nicht - ein Pausierter Dienste startet beim nächsten Systemstart wieder


@ WaldiMaywood

Werde probieren - danke erstmal

(Visual Basic .net - Version 2008)

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Windows 2k/XP: Dienst deaktivieren 
Autor: whisky
Datum: 15.05.04 14:12

Klappt nicht - es kommt keine Fehlermeldung oder so - es tut sich einfach nichts

(Visual Basic .net - Version 2008)

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Windows 2k/XP: Dienst deaktivieren 
Autor: WaldiMaywood
Datum: 15.05.04 16:15

>> Klappt nicht - es kommt keine Fehlermeldung oder so - es tut sich einfach nichts

Ohne Code kann man das jetzt schwer beurteilen

Steve
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Windows 2k/XP: Dienst deaktivieren 
Autor: whisky
Datum: 15.05.04 16:41

Ich habe den Code von oben genommen und einem Button zugewiesen

Dim wmi As ManagementObjectSearcher = New ManagementObjectSearcher("Select *" & _
  "from WIN32_SERVICE")
        For Each moo As ManagementObject In wmi.Get
            If (moo.Item("Name").ToString.ToUpper = Dienst.text) Then
                moo.InvokeMethod("ChangeStartMode", New Object() {"Disabled"}) _
                  : Exit For
            End If
        Next

(Visual Basic .net - Version 2008)

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Windows 2k/XP: Dienst deaktivieren 
Autor: WaldiMaywood
Datum: 15.05.04 16:46

An Groß- und Kleinschreibung gedacht? Ist "Dienst" eine TextBox? Wenn ja, dann versuchs mal damit:
        If (moo.Item("Name").ToString.ToUpper = Dienst.text.ToUpper) Then
Steve
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Windows 2k/XP: Dienst deaktivieren 
Autor: whisky
Datum: 15.05.04 17:04

Jetzt Klappts

Noch ne frage:
moo.InvokeMethod("ChangeStartMode", New Object() {"Disabled"}) : Exit For
Was wird da für "Automatisch" und "Manuell" benötigt?

(Visual Basic .net - Version 2008)

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Windows 2k/XP: Dienst deaktivieren 
Autor: WaldiMaywood
Datum: 15.05.04 17:45


Automatic - Service to be started automatically by the service control manager during system startup.
Manual - Service to be started by the service control manager when a process calls the StartService method.
Disabled - Service that can no longer be started.

Das kannst du übrigens hier prima nachlesen.

Steve
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Windows 2k/XP: Dienst deaktivieren 
Autor: whisky
Datum: 15.05.04 18:59

Danke für den Link und für die Antworten

(Visual Basic .net - Version 2008)

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Registry 
Autor: Micke
Datum: 16.05.04 13:09

du könntest auch gleich den Reg Eintrag entsprechend setzen -
entweder selbst in der registry oder schickst den neuen Wert ans system.

Micke

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Windows 2k/XP: Dienst deaktivieren 
Autor: whisky
Datum: 16.05.04 14:32

Ich wollte vor der Änderung meine Einstellungen speichern lassen mit

 
Dim userdir As String = getuserdir()
 
Public Function getuserdir() As String
        Return _ removebackslash(System.Environment.GetEnvironmentVariable( _
          "USERPROFILE"))
    End Function
 
Dim SVC_BAK As String = userdir + "\services.reg"
 
 cache = ("regedit /e " & SVC_BAK & "  _" & _
   "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services") 
 
 Shell(cache, AppWinStyle.Hide, True)
Allerdings klappt es nicht - ich nehme an das das der Grund dafür die Leerzeichen bei "Dokumente und Einstellungen" sind. Wie kann ich " in dein String cache machen lassen damit der ganze Pfad übernommen wird.....

(Visual Basic .net - Version 2008)

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel