1

我有一个小型 C# 应用程序,它在内部使用多个 SCM API,例如 OpenService。因此,这是一个我知道需要管理权限才能正常运行的应用程序。通过运行具有管理访问权限的 Visual Studio,我已在 Visual Studio 2012 中成功调试此应用程序。这意味着由 Visual Studio 调试器启动的任何进程也以提升的访问权限启动。

安装 VS 2012 更新 2 后,这不再有效。即使您以管理权限启动 Visual Studio,似乎也不会以管理权限启动已调试进程。还有其他人遇到这个问题或知道解决方法吗?

操作系统:Windows 8(自 2012 年 4 月 13 日起全面更新)

4

1 回答 1

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 输出启动时为“提升:假”从提升的 Visual Studio 输出启动时为“提升:真”

你得到相同的结果吗?

于 2013-04-15T10:38:41.177 回答