Форум сайта python.su
Добрый !
Инструменты - Vista SP2 x86, python 3.2.3 и 2.7, pywin32-217, python WMI 1.4.9
Подскажите плз, как подключиться к WMI на постороннем домене, как явно указать юзера и домен ?
На VBS сделано и работает как написано
http://msdn.microsoft.com/en-us/library/windows/desktop/aa393720(v=vs.85).aspx
Set objSWbemLocator = CreateObject("WbemScripting.SWbemLocator") Set objWMIService = objSWbemLocator.ConnectServer("10.10.10.5", "Root\cimv2", "user", "P@ssw0rd", ,"NTLMDomain:office.local")
objSWbemLocator = win32com.client.Dispatch("WbemScripting.SWbemLocator") objWMIServiceRemote = objSWbemLocator.ConnectServer(r"10.10.10.5", r"Root\cimv2", r"office\user", r"P@ssw0rd")
objSWbemLocator = win32com.client.Dispatch("WbemScripting.SWbemLocator") objWMIServiceRemote = objSWbemLocator.ConnectServer(r"10.10.10.5", r"Root\cimv2", r"user", r"P@ssw0rd",,"NTLMDomain:office.local")
Отредактировано Ace (Сен. 6, 2012 11:54:45)
Офлайн
AceВ таком же как в VBS. Опциональные аргументы - это то же самое, что kwargs в Python.
Пока не нашел , какие параметры и в каком порядке передаются в ConnectServer в питоне
objWMIServiceRemote = objSWbemLocator.ConnectServer(r"10.10.10.5", r"Root\cimv2", r"user", r"P@ssw0rd", strAuthority="NTLMDomain:office.local")
Офлайн
Не получилось
ИМХО это ? Взято из wmi.py
server = Dispatch ("WbemScripting.SWbemLocator").\ ConnectServer ( server, namespace, user, password, locale, authority, security_flags, named_value_set )
Отредактировано Ace (Сен. 6, 2012 14:48:05)
Офлайн
AceКакая ошибка?
Не получилось
Офлайн
Ошибка
pywintypes.com_error: (-2147352567, 'Ошибка.', (0, 'SWbemLocator', 'Отказано в д оступе. ', None, 0, -2147024891), None)
objWMIServiceRemote = objSWbemLocator.ConnectServer(r"10.10.10.5", r"Root\cimv2", r"user", r"P@ssw0rd",,"NTLMDomain:office.local") objWMIServiceRemote = objSWbemLocator.ConnectServer(r"10.10.10.5", r"Root\cimv2", r"user", r"P@ssw0rd","","NTLMDomain:office.local") objWMIServiceRemote = objSWbemLocator.ConnectServer(r"10.10.10.5", r"Root\cimv2", r"user", r"P@ssw0rd",None,"NTLMDomain:office.local")
Офлайн
Верный код
objWMIServiceRemote = objSWbemLocator.ConnectServer(r"10.10.10.5", r"Root\cimv2", r"office\user", r"P@ssw0rd")
objWMIServiceRemote = objSWbemLocator.ConnectServer(r"10.10.10.5", r"Root\cimv2", r"user", r"P@ssw0rd","",r"NTLNDomain:office.local")
objWMIServiceRemote = objSWbemLocator.ConnectServer(r"10.10.10.5", r"Root\cimv2", r"user", r"P@ssw0rd",None,r"NTLNDomain:office.local")
Отредактировано Ace (Сен. 6, 2012 14:29:30)
Офлайн