Visual Studio 应用程序资源:“图标和清单”与“资源文件”问题

Ros*_*oss 5 .net properties build manifest visual-studio-2010

在 Visual Studio 2010 中,应用程序属性页面上有两个关于资源的选项:

  • 图标和清单
  • 资源文件

我一直在使用资源文件方法,因为这是实现我的构建要求之一的唯一方法。

但是,我最近注意到一个问题。

当您在 Windows 资源管理器中右键单击某个 EXE 文件,单击属性,然后转到详细信息选项卡时,它会显示几条信息(文件描述、产品名称、产品版本等)。

当我使用Icon 和 manifest构建我的应用程序时,我在 Visual Studio 中输入的所有程序集信息都用于填充这些信息字段。

但是当我使用Resource 文件构建时(正如我所做的那样),这些字段不会被填充。他们是空白的。

任何人都可以帮忙吗?

  • 有什么我做错了吗?是否应将此信息添加到我的自定义资源文件中?(我一直在寻找这种可能性,但没有运气)
  • 有没有其他方法来填充这些信息?
  • 我必须回到Icon 和 manifest方法吗?(在这种情况下,我将不得不重新考虑其他一些问题)

Gyl*_*son 5

我刚刚有同样的问题,发现这些信息很有帮助。

通过选择 .res 文件,您基本上就表示您将自己处理所有 win32 资源。这意味着您必须在 .res 文件中包含清单资源和版本资源。如果您选择自行添加 win32 资源,则标准 AssemblyVersion、AssemblyProductVersion 属性无效。

我在Einar Egilsson 的博客中发现了这一点,他在其中讨论了图标和清单与资源方法的一些优缺点。

基本上,如果您选择使用资源方法,则必须在 .rc 资源源文件中提供您自己的 VERSIONINFO。将 .rc 文件编译为 .res 文件并链接应用程序后,您将看到可执行文件的属性现在显示 .rc 文件提供的版本信息。

这对于@Ross 来说可能有点晚了,但希望这对其他人有帮助。