2

当我使用 Win32 API CreateProcessAsUser() 在我的 C# .NET 项目中使用模拟用户执行程序时,它是成功的。

但我想使用 .NET Framework API 来实现它。

有类似 System.Diagnostics.Process.Start() 的方法,但它与 CreateProcessAsUser() 不完全相同。

函数 CreateProcessAsUser() 在第一个参数处接收“hToken”。因此,当我复制一个令牌并将其用于该功能时,我可以模拟一个用户并与该用户一起执行一个程序。

但是 System.Diagnostics.Process.Start() 方法没有提供这样的参数。

如果有人知道这个,请告诉我好吗?谢谢

4

2 回答 2

2

ProcessStartInfo 在 NET 2.0 或更高版本中具有 UserName 和 Password 属性。

于 2015-06-26T01:48:14.583 回答
1

没有本机解决方案。很抱歉让你失望了。

正如 Microsoft 的知识库所建议的那样,您只能通过 P/Invocation 来执行此操作(就像您所做的那样): https: //support.microsoft.com/en-us/kb/889251

于 2016-06-15T17:26:48.637 回答