1

我在 .NET exe 中嵌入了一个清单,以便它可以在 Vista 和 Windows 7 中请求提升的权限。我使用的清单如下:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity version="1.0.0.0"  name="ElevationTest" type="win32"/>
  <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
    <security>
      <requestedPrivileges>
        <requestedExecutionLevel level="requireAdministrator"/>
      </requestedPrivileges>
    </security>
  </trustInfo>
</assembly>

它在 Vista 和 Windows 7 中按预期工作,但 XP 因标准“...遇到问题并需要关闭...”错误而崩溃。如果我不嵌入任何清单,那么它会按预期工作,但显然在 Vista 和 Windows 7 中没有所需的权限。

生成在 XP 和 Vista / Windows 7 中以正确权限运行的 exe 的标准方法是什么?

谢谢,艾伦

4

1 回答 1

1

我认为清单可能是一条红鲱鱼。我刚刚创建了一个嵌入了该清单的控制台应用程序,目标是 .NET 2.0,它在 XP SP3 上运行良好。

您是否尝试过在没有嵌入清单的情况下在 XP 上运行该应用程序?另外,您的目标是哪个版本的 .NET,它是什么类型的 .NET 应用程序(WPF、WinForms、服务等),最后(我不得不问),那台 XP 机器上是否安装了正确版本的 .NET?

于 2010-03-13T22:50:19.937 回答