Modifier le mode de démarrage d'un service

Résolu
manshivas Messages postés 58 Date d'inscription mardi 20 janvier 2004 Statut Membre Dernière intervention 9 avril 2008 - 3 févr. 2006 à 18:55
manshivas Messages postés 58 Date d'inscription mardi 20 janvier 2004 Statut Membre Dernière intervention 9 avril 2008 - 7 févr. 2006 à 15:23
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

manshivas Messages postés 58 Date d'inscription mardi 20 janvier 2004 Statut Membre Dernière intervention 9 avril 2008
7 févr. 2006 à 15:23
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
manshivas Messages postés 58 Date d'inscription mardi 20 janvier 2004 Statut Membre Dernière intervention 9 avril 2008
3 févr. 2006 à 19:00
Petite précision, c'est en VB6... ;-)
0
BruNews Messages postés 21041 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019 19
4 févr. 2006 à 01:22
Regarde ChangeServiceConfig() dans MSDN.

ciao...
http://dev.winsysdev.com
BruNews, MVP VC++
0
manshivas Messages postés 58 Date d'inscription mardi 20 janvier 2004 Statut Membre Dernière intervention 9 avril 2008
6 févr. 2006 à 14:51
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
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
BruNews Messages postés 21041 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019 19
6 févr. 2006 à 17:46
MSDN donne les fonctions associées en bas de page: QueryServiceConfig().

ciao...
http://dev.winsysdev.com
BruNews, MVP VC++
0
manshivas Messages postés 58 Date d'inscription mardi 20 janvier 2004 Statut Membre Dernière intervention 9 avril 2008
6 févr. 2006 à 17:58
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 "..... :-(
0