How do I start a service using the WMI library?
The code below throws the exception:
AttributeError: 'list' object has no attribute 'StopService'
import wmi
c = wmi.WMI ('servername',user='username',password='password')
c.Win32_Service.StartService('WIn32_service')
There is documentation regarding the library on github: https://github.com/tjguk/wmi/blob/master/docs/cookbook.rst
I believe the above code is throwing an error because you are not specifying which service to start.
Assuming you don't know what services are available to you:
import wmi
c = wmi.WMI() # Pass connection credentials if needed
# Below will output all possible service names
for service in c.Win32_Service():
print(service.Name)
Once you know the name of the service you want to run:
# If you know the name of the service you can simply start it with:
c.Win32_Service(Name='<service_name>')[0].StartService()
# Same as above, a little differently...
for service in c.Win32_Service():
# Some condition to find the wanted service
if service.Name == 'service_you_want':
service.StartService()
Hopefully with the documentation, and my code snippets, you'll be able to find your solution.