我正在升级一个非托pipe的C ++应用程序,通过添加一个清单来使用XP / Vista风格的公共控件。 根据MSDN关于应用程序清单的页面,您需要指定清单中的名称和版本,以及可选的说明:
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> <assemblyIdentity version="1.2.3.4" processorArchitecture="*" name="CompanyName.ApplicationName" type="win32" /> <description>Application's description here</description> </assembly>
这些细节如何使用? 有一个关于向后兼容性的暗示是由于程序集有相同的主版本和次版本,但这似乎并不适用于应用程序。 在Windows XP上,我也无法看到清单在应用程序属性中指定的名称,版本或描述。
改变这些有什么影响? 是否值得保持版本是最新的?
“以pipe理员身份运行”和带有requireAdministrator的清单之间有什么区别?
强制Windows加载DLL的地方,以便内存最小碎片
如何为Windows安装程序创build清单?
在同一个进程中加载一组DLL的多个副本
Windows 7和Windows Server 2008 R2中不同的WinSxS行为
查看进程树 – tlist / tasklist
应用程序清单和程序集清单之间的区别
如何强制本机应用程序使用较旧的C运行时
对于在C ++应用程序中使用XP / Vista主题(如Visual C ++ 6应用程序中没有链接清单)的常用控件,以下是可以使用的模板:
<?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" processorArchitecture="X86" name="Program Name" type="win32" /> <description>Description of Program</description> <dependency> <dependentAssembly> <assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="X86" publicKeyToken="6595b64144ccf1df" language="*" /> </dependentAssembly> </dependency> </assembly>
我会说它值得让他们保持最新。 如果没有其他的原因,你不知道未来的工具可能会使用它们。 我不知道本机应用程序的清单中指定的程序集名称,版本等的当前用途。 要在XP上填充属性页面,您需要在资源中创建一个VERSIONINFO节。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。