Process 在OnAfterInstall中以其他用户身份启动进程会被拒绝访问

Process 在OnAfterInstall中以其他用户身份启动进程会被拒绝访问,process,windows-installer,Process,Windows Installer,我正在尝试在其他用户的上下文中启动一个.bat文件,作为OnAfterInstall的最后一步。我是通过使用进程来实现的。使用用户名、域和密码作为输入启动重载。如果我不检查安装中的“所有人”,它就可以正常工作。如果我选择了“Everyone”,我将拒绝同一用户(管理员)的访问。如果我使用.start方法运行分期付款,并且只使用进程名,那么它可以正常工作 为了测试这一点,我制作了一个Windows From应用程序,在我使用“Everyone”安装后以相同的方式启动该过程,并且运行良好 有人知道为

我正在尝试在其他用户的上下文中启动一个.bat文件,作为OnAfterInstall的最后一步。我是通过使用进程来实现的。使用用户名、域和密码作为输入启动重载。如果我不检查安装中的“所有人”,它就可以正常工作。如果我选择了“Everyone”,我将拒绝同一用户(管理员)的访问。如果我使用.start方法运行分期付款,并且只使用进程名,那么它可以正常工作

为了测试这一点,我制作了一个Windows From应用程序,在我使用“Everyone”安装后以相同的方式启动该过程,并且运行良好


有人知道为什么在选择了“Everyone”(所有人)的情况下,我无法使用其他用户上下文访问OnAfterInstall中的文件吗?

最有可能的情况是,当您检查所有人时,您告诉安装程序它不需要提升权限,这样它就不会要求这些权限。即使您在windows vista或7中以管理员身份运行,您的流程令牌也是用户的,直到UAC提升您的身份。有一套你需要能够调用的策略,这就是下面正在发生的事情。向所有人提供与上述api相关的所有策略,然后看看它是否有效