Python 2.7 CreateProcessAsUser完成了!如何控制创建的流程?
我正在尝试以另一个用户的身份启动一个应用程序,这非常有效,进程已创建,但我不知道如何处理创建的进程,就像我通常使用comtypes或win32com(COM接口)时所做的那样,下面是脚本:Python 2.7 CreateProcessAsUser完成了!如何控制创建的流程?,python-2.7,pywin32,win32com,Python 2.7,Pywin32,Win32com,我正在尝试以另一个用户的身份启动一个应用程序,这非常有效,进程已创建,但我不知道如何处理创建的进程,就像我通常使用comtypes或win32com(COM接口)时所做的那样,下面是脚本: import win32process import win32security import win32con import cgi import cgitb; cgitb.enable() domain = '.' username = 'me' password = 'mypwd' try:
import win32process
import win32security
import win32con
import cgi
import cgitb; cgitb.enable()
domain = '.'
username = 'me'
password = 'mypwd'
try:
token = win32security.LogonUser (
username,
domain,
password,
win32security.LOGON32_LOGON_NETWORK,
win32security.LOGON32_PROVIDER_DEFAULT
)
except win32security.error:
print "Failed"
else:
appname = "C:/path/to/app.exe"
startup = win32process.STARTUPINFO()
priority = win32con.NORMAL_PRIORITY_CLASS
handle, thread_id ,pid, tid = win32process.CreateProcessAsUser(token, appname, None, None, None, True, priority, None, None, startup)
通常,当我不需要以另一个用户的身份运行该进程时,我使用(例如win32com):
然后我可以用app
对象控制应用程序
作为同一个库,我想我可以使用
handle
或thread\u id
和win32com.client
来保持同一个用户,但我找不到任何东西,请您帮助我。您想如何控制这个过程?我已经编写了调试器循环,允许我逐步执行语句。这就是你要找的吗?我想使用应用程序提供的COM界面,例如excelCreateProcessAsUser
听起来这是一个不适合这份工作的工具。你应该为COM对象寻找Python绑定。我没有找到任何允许以其他用户身份运行应用程序的绑定,你知道这样的工具吗?
import win32com.client
app = win32com.client.Dispatch("app.Application")