I create a wmi connection to a server in a separate domain from where the script is running like this:
remote = wmi.connect_server(server=server, user=r"%s\%s" % (domain, user), password=password, impersonation_level="impersonate") self.c = wmi.WMI(wmi=remote) I then successfully run a few Win32_Process.create() commands (which fail if the initial connection above uses impersonation_level="delegate"). Next I use adsi to trust the server for delegation: computer.Put('userAccountControl', value) computer.Setinfo() At this point I want to use Win32_Process.create() to xcopy some files from a third server, so I switch to delegation since impersonate won't allow access to network resources: remote = wmi.connect_server(server=self.server, user=r"%s\%s" % (self.domain, self.user), password=self.password, impersonation_level="delegate") self.c = wmi.WMI(wmi=remote) But then when I try to create the process using: pid, res = self.c.Win32_Process.Create('cmd.exe /c xcopy %s %s \ /s /e /i /y /c /q' % (src, dest)) I get the following exception: AttributeError: '<win32com.gen_py.Microsoft WMI Scripting V1.2 Library.ISWbemSer vices instance at 0x12790040>' object has no attribute 'Win32_Process' However, this works fine if I don't set the userAccountControl attribute above using adsi. It also seems specific to actually setting the attribute, as the code is always using adsi to get DNs and the current value of userAccountControl. Am I doing something wrong, or does anyone have suggestions on what to try next?
_______________________________________________ python-win32 mailing list python-win32@python.org http://mail.python.org/mailman/listinfo/python-win32