name=itsm.getParameter('rdpname')#"rdp_1" command=r'mklink %s "C:\Windows\System32\mstsc.exe"'%name import subprocess import ctypes import os users=os.popen("net users").read() lu=[] for i in users.split()[5:-4]: #print i path=r"C:\Users\%s\Desktop"%i.strip() if os.path.exists(path)!=False: lu.append(r"C:\Users\%s\Desktop"%i.strip()) class disable_file_system_redirection: _disable = ctypes.windll.kernel32.Wow64DisableWow64FsRedirection _revert = ctypes.windll.kernel32.Wow64RevertWow64FsRedirection def __enter__(self): self.old_value = ctypes.c_long() self.success = self._disable(ctypes.byref(self.old_value)) def __exit__(self, type, value, traceback): if self.success: self._revert(self.old_value) for i in range(len(lu)): os.chdir(lu[i]) print os.getcwd() with disable_file_system_redirection(): process=subprocess.Popen("cd %s "%lu[i]+" && "+command, shell=True, stdout=subprocess.PIPE,stderr=subprocess.PIPE) result=process.communicate() ret=process.returncode if ret==0: if result[0]: print result[0].strip() else: print None else: print '%s\n%s'%(str(ret), str(result[1]))