如何在Visual Studio 2010中进行debugging时以pipe理员身份运行应用程序?

我有ac#应用程序,我必须有读/写访问C驱动器的根目录。 我意识到我可以编译代码,并以pipe理员身份运行可执行文件,它的工作原理。 但我需要debugging它,我不确定如何在VS2010中启动应用程序。

我曾尝试添加:

<requestedExecutionLevel level="asInvoker" uiAccess="true" /> 

我的清单,但我仍然得到访问被拒绝的错误。

这是失败的代码行:

 MemoryMappedFile mmf = MemoryMappedFile.CreateFromFile(@"c:\somemapnamefile.data", System.IO.FileMode.OpenOrCreate, "somemapname", 1000); 

现在我有一个工作,但我想知道未来。

只需以pipe理员身份运行visual studio。 您从那里debugging的任何程序也将以pipe理员身份运行。

VS必须以pipe理权运行。 然而,清单中的requiredExecutionLevel应该设置为'requireAdministrator',这是一种更优雅的方式。

 <requestedExecutionLevel level="requireAdministrator" uiAccess="false" /> 

当您打开该项目并尝试debugging时,VS2012会警告pipe理员权限并重新启动pipe理权限。 而且该exe文件将被标记为需要pipe理权限,因此部署时不需要在文件属性中configurationpipe理权限要求。

您也可以自动设置这个pipe理员选项:

在这里输入图像说明

要回答标题中的问题,您可以在启动VS时从上下文菜单中select以pipe理员身份运行。

发生此错误的原因当前用户没有足够的权限打开Visual Studio。

要解决这个问题,请右键单击Visual Studio,然后select以pipe理员身份运行,以便每次打开它

而且,您可以将兼容性疑难解答视为永久性解决scheme

  • 右键单击Visual Studio>select疑难解答兼容性。
  • select程序疑难解答。
  • 检查该程序需要额外的权限。
  • 点击testing程序。
  • 等待一段时间,直到程序启动。单击下一步。
  • select是,保存这个程序的这些设置。
  • 等待解决这个问题。
  • 确保最终状态是固定的。点击closures。

要查找如何应用检查此链接的图像的详细步骤

希望它可以帮助你