Modifier le mode de démarrage d'un service [Résolu]

Signaler
Messages postés
58
Date d'inscription
mardi 20 janvier 2004
Statut
Membre
Dernière intervention
9 avril 2008
-
Messages postés
58
Date d'inscription
mardi 20 janvier 2004
Statut
Membre
Dernière intervention
9 avril 2008
-
Bonjours,
Je souhaite pouvoir modifier le mode de démarrage d'un service, j'arrive bien à récupérer son mode de démarrage, mais j'ai pas trouvé comment le modifier...


Dim ServiceObject As SWbemObject
Dim Locator As SWbemLocator
Dim services As SWbemServices


Set Locator = New SWbemLocator
Set services = Locator.ConnectServer("")
Set ServiceObject = services.Get("Win32_Service='PlugPlay'")
MsgBox ServiceObject.StartMode


Qui qui peut me donner un coup de main???


Merci d'avance.

Ben... si j'était dieu..., ben..., je crorais pas en moi .....
Et si j'étais moi..., ben..., j'me méfirais....

6 réponses

Messages postés
58
Date d'inscription
mardi 20 janvier 2004
Statut
Membre
Dernière intervention
9 avril 2008

Enfin !!!!! ca marche, pour ceux que ça interresse, voici la solution (assezz simple en fait....)

faire référence à "Microsoft WMI Scripting"

puis

Dim ServiceObject As SWbemObject
Dim Locator As SWbemLocator
Dim services As SWbemServices

Set Locator = New SWbemLocator
Set services = Locator.ConnectServer("")
Set ServiceObject = services.Get("Win32_Service='Aconvert'")

MsgBox ServiceObject.changestartmode("Automatic") ' ou Boot, System, Manual, Disabled

Et hop, service modifier.....
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 123 internautes nous ont dit merci ce mois-ci

Messages postés
58
Date d'inscription
mardi 20 janvier 2004
Statut
Membre
Dernière intervention
9 avril 2008

Petite précision, c'est en VB6... ;-)
Messages postés
21042
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
24
Regarde ChangeServiceConfig() dans MSDN.

ciao...
http://dev.winsysdev.com
BruNews, MVP VC++
Messages postés
58
Date d'inscription
mardi 20 janvier 2004
Statut
Membre
Dernière intervention
9 avril 2008

Réponse presqu'acceptée... lol
j'en suis à l'ouverture de mon service, mais je bloque au moment de la modification, comment puis-je laisser les valeurs que je ne veux pas modifier.....?

Public Declare Function OpenSCManager Lib "advapi32.dll" Alias "OpenSCManagerA" (ByVal lpMachineName As String, ByVal lpDatabaseName As String, ByVal dwDesiredAccess As Long) As Long

Public Declare Function OpenService Lib "advapi32.dll" Alias "OpenServiceA" (ByVal hSCManager As Long, ByVal lpServiceName As String, ByVal dwDesiredAccess As Long) As Long

Public Declare Function ChangeServiceConfig Lib "advapi32.dll" Alias "ChangeServiceConfigA" (ByVal hService As Long, ByVal dwServiceType As Long, ByVal dwStartType As Long, ByVal dwErrorControl As Long, ByVal lpBinaryPathName As String, ByVal lpLoadOrderGroup As String, lpdwTagId As Long, ByVal lpDependencies As String, ByVal lpServiceStartName As String, ByVal lpPassword As String, ByVal lpDisplayName As String) As Long

Public Function modifService()
Dim scManager As Long
Dim service As Long

scManager = OpenSCManager(vbNullString, vbNullString, SC_MANAGER_ALL_ACCESS)
service = OpenService(scManager, "Messenger", SERVICE_CHANGE_CONFIG)
service = ChangeServiceConfig(service,.............)
End Function
Messages postés
21042
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
24
MSDN donne les fonctions associées en bas de page: QueryServiceConfig().

ciao...
http://dev.winsysdev.com
BruNews, MVP VC++
Messages postés
58
Date d'inscription
mardi 20 janvier 2004
Statut
Membre
Dernière intervention
9 avril 2008

j'en suis à cet état :

Public Function modifService()
Dim scManager As Long
Dim service As Long
Dim ret As Variant

scManager = OpenSCManager(vbNullString, vbNullString, SC_MANAGER_ALL_ACCESS)
service = OpenService(scManager, "Aconvert", SERVICE_CHANGE_CONFIG)

MsgBox ChangeServiceConfig(service, SERVICE_NO_CHANGE, SERVICE_AUTO_START, SERVICE_NO_CHANGE, SERVICE_NO_CHANGE, SERVICE_NO_CHANGE, SERVICE_NO_CHANGE, SERVICE_NO_CHANGE, SERVICE_NO_CHANGE, SERVICE_NO_CHANGE, SERVICE_NO_CHANGE)

CloseServiceHandle service
CloseServiceHandle scManager
End Function

La fonction "ChangeServiceConfig" me renvoit désespérément " 0 "..... :-(