我在.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的标准方法是什么?
谢谢, 艾伦
答案 0 :(得分:1)
我认为清单可能是红鲱鱼。我刚刚创建了一个嵌入了该清单的控制台应用程序,目标是.NET 2.0,它可以在XP SP3上运行。
您是否尝试在没有嵌入清单的情况下在XP上运行应用程序?此外,您正在定位哪个版本的.NET,它是什么类型的.NET应用程序(WPF,WinForms,服务等),最后(我不得不问),是否在该XP机器上安装了正确的.NET版本?