Tag: manifest

程序兼容性助理认为我的应用程序是安装程序

我已经在Win 7 RTM x64上创build了.NET C#WinForms应用程序,我们可以说我已经调用了DataInstaller。 当我在debugging器之外运行这个程序(只是一个没有function的空表单),直到我closures表单才能正常工作。 然后我从程序兼容性助手那里得到一条消息: 该程序可能没有正确安装 然后,我可以select使用推荐的设置重新安装,或者说安装按预期工作。 如果我命名应用程序“DataThingy”,这不是一个问题,我想这与名为* Setup的程序获得UAC盾牌图标的方式有关。 我认为会有一些简单的东西,我可以把应用程序清单,以防止这一点? 我不确定这是否发生在Vista上,因为我目前没有访问权限。 更改名称不是一个选项,closuresUAC不是一个选项,所以请不要这样做! 编辑: 我的天啊。 看来,如果以下任何一个是真的,UAC坚持它的桨: exe名称包含单词安装程序 AssemblyInfo.cs中 AssemblyTitle contains the word 'Installer' eg [assembly: AssemblyTitle("DataInstaller")] AssemblyProduct contains the word 'Installer' eg [assembly: AssemblyProduct("Data Installation Utility")] “安装程序”也可以是“安装程序”。 这是乞丐的信念,它确实如此。 很显然,一个老的VB6程序员被搬到了Redmond的UAC团队。 我仍然需要一个解决方法,我不准备接受我的应用程序不能被称为安装程序,因为它不会触摸registry或将任何文件放在Program Files文件夹中。 如果我试图执行名为IAmAVirus.exe的应用程序,我认为UAC会将机器置于完全locking状态。 (其实,我不敢尝试,因为我不完全相信我只是傻)

如何创build/编辑清单文件?

我有一个来自同事的代码(可能来自networking的某个地方),但他出去度假,我需要将其添加到清单文件 <?xml version="1.0" encoding="utf-8" ?> <asmv1:assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1" xmlns:asmv1="urn:schemas-microsoft-com:asm.v1" xmlns:asmv2="urn:schemas-microsoft-com:asm.v2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <assemblyIdentity version="1.0.0.0" name="MyApplication" /> <trustInfo xmlns="urn:schemas-microsoft-com:asm.v2"> <security> <requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3"> <requestedExecutionLevel level="requireAdministrator" uiAccess="false" /> </requestedPrivileges> </security> </trustInfo> </asmv1:assembly> 我相对较新,所以任何帮助,将不胜感激。 谢谢 我正在使用Visual Studio 2010