在Windows 7上使用C#.Net4.0,WinForms(不 ASP.NET)
当您 右移 - 右键单击 可执行文件 时,我能获得相同的对话吗?然后选择" 以不同用户身份运行 "?
我想提示用户提供凭据,但是将详细信息传递给操作系统(即我的应用程序永远不会看到或处理用户名/密码)。我希望使用内置提示而不是自己动手。
我知道LogOnUser函数可以在WindowsIdentity类中使用令牌,但我想可能有一个我可以调用的备用API,所以我不需要制作我自己的登录提示。
这里的最终目标是测试用户是否在给定的Windows Group
中(自定义组,而不是内置组)。我还担心这将需要基于MSDN示例代码的管理员权限,但是将部署的帐户不一定是管理员(我的应用程序目前不需要管理员权限,我想要如果可能的话,保持这种方式。)
答案 0 :(得分:3)
您可以使用“runasuser”Shell动词,如下所示:
ProcessStartInfo psi = new ProcessStartInfo(YourExePath);
psi.Verb = "runasuser";
Process.Start(psi);