我有一个小型的C#应用程序,它在内部使用多个SCM API,例如OpenService。因此,这是一个应用程序,我知道需要管理权限才能正常运行。我已经通过运行具有管理访问权限的Visual Studio在Visual Studio 2012中成功调试了此应用程序。这意味着Visual Studio调试器启动的任何进程也都是通过提升访问权限启动的。
安装VS 2012更新2后,这不再有效。即使您启动具有管理权限的visual studio,调试的进程也不会以管理访问权限启动。有其他人遇到这个问题或知道解决方法吗?
操作系统:Windows 8(自2012年4月13日起全面更新)
答案 0 :(得分:2)
我安装了Visual Studio Ultimate 2012版本11.0.60315.01 Update 2并使用以下控制台应用程序项目对其进行了测试:
`课程 {
[DllImport("shell32.dll")]
public static extern bool IsUserAnAdmin();
static void Main(string[] args)
{
Console.WriteLine("Elevated: " + IsUserAnAdmin());
Console.ReadLine();
}
}`
从非提升的Visual Studio输出开始时,提升:false' 从提升的Visual Studio输出开始是“高架:真实”
你得到的结果是否相同?