【问题标题】:How can I embed an application manifest into an application using VS2008?如何使用 VS2008 将应用程序清单嵌入到应用程序中?
【发布时间】:2011-05-21 23:06:17
【问题描述】:

我已阅读 herehere 了解如何将我的应用程序清单文件嵌入到 PE 中,但这些步骤似乎不适用于 VC#:VS2008 - VS2008 甚至不附带 mt.exe (据我所知)

我该怎么做?

【问题讨论】:

    标签: c# .net visual-studio visual-studio-2008 manifest


    【解决方案1】:

    您可以按照以下步骤将清单添加到您的 C# 应用程序:

    1. 在解决方案资源管理器中右键单击您的项目
    2. 从上下文菜单中选择“添加新项目”。
    3. 从出现的对话框的选项列表中选择“应用程序清单文件”。

    但请注意,默认情况下,Visual Studio 已将清单添加到您的项目中,以确保符合 Windows Vista 和 7 中的 UAC。如果您想指定您的项目应使用自定义清单文件项目,请按照以下附加步骤操作:

    1. 将自定义清单文件添加到项目后,在解决方案资源管理器中右键单击项目并单击“属性”(或双击项目下的“属性”项)。
    2. 在第一个选项卡(“应用程序”)下,您应该看到一组选项,指定应用程序如何管理资源。您可以选择默认的“图标和清单”选项,但您需要从标有“清单”的下拉框中选择您的自定义清单文件。

    最后,为了完整起见,或者如果上述步骤对您不起作用,您仍然可以在构建后使用 mt.exe 将清单文件嵌入到应用程序的 EXE 中。如果它未包含在您的 Visual Studio 安装中,则需要下载并安装 Windows SDK。获取适用于 Windows 7 和 .NET Framework 4.0 的最新版本here

    【讨论】:

    • @Dacto:我想你可以,但是......为什么?我不确定你的问题是什么。我的答案的第一部分对您不起作用吗?你根本不应该需要使用mt.exe。
    • 好吧,我不需要自定义清单,我只想分发一个 exe,而不是 exe 和符合 UAC 的清单
    • @Dacto:好的,我明白你现在在问什么。但是作为构建过程的一部分,Visual Studio 会自动将清单嵌入到您的 EXE 中。它在一个新的 C# 项目中对我来说完美无缺。没有创建必须与我的应用程序一起分发的单独清单文件。您是否遇到不同的结果?我上面概述的步骤允许您指定嵌入到应用程序 EXE 中的 custom 清单。默认是将默认(UAC 兼容)清单嵌入到 EXE 中。
    • 我可以给你发截图,让你知道我看到了什么
    • @Dacto:如果您愿意,可以在此处编辑您的问题并添加屏幕截图。 (这也会“颠倒”您的帖子,以便其他人可能会注意到并提供答案。)我绝对不明白您要做什么或为什么它不起作用。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-10-13
    • 2019-03-07
    • 1970-01-01
    • 2011-04-01
    • 2010-09-23
    • 1970-01-01
    • 2015-04-05
    相关资源
    最近更新 更多