用LogonUser获得本机管理员句柄,然后调用CreateProcessAsUser运行"cmd.exe"成功,可调用其他exe文件就报错"error:6  句柄无效",如何解决呢?

解决方案 »

  1.   

    WTSGetActiveConsoleSessionId /WTSQueryUserToken /DuplicateTokenEx/CreateEnvironmentBlock/CreateRestrictedToken /CreateProcessAsUser/CloseHandle /DestroyEnvironmentBlock
      

  2.   

    有没有人会用CreateProcessAsUser在服务里调用外部exe的呢?帮帮忙撒
      

  3.   

    你Debug下看看为什么句柄无效嘛。
      

  4.   

    这个问题早解决了。
    我现在的问题是,我要在service里调用CreateProcessAsUser,运行另外的自己用.net 做的msi,这个msi在系统里装一个service,就是一个service运行msi安装另外一个service
      

  5.   

    用表达式“msiecec.exe /quiet /package C:\\xx.msi”没有反应也不报错,只有一个msiexec.exe进程单独跑着