首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未显示VERSIONINFO的‘'Comments’部分

未显示VERSIONINFO的‘'Comments’部分
EN

Stack Overflow用户
提问于 2016-02-10 19:02:30
回答 1查看 1.4K关注 0票数 0

我正在尝试使用VERSIONINFO资源的'Comment‘字段。目标程序是64位windows EXE文件(用VS 2015编译)。

所有的元素,如版本,版权,描述等等都是正确显示的--除了“注释”。我定义它就像StringFileInfo块的其他元素一样。大概是这样的:

代码语言:javascript
复制
VS_VERSION_INFO VERSIONINFO
FILEVERSION     FILEVER
PRODUCTVERSION  PRODUCTVER

FILEFLAGSMASK   VS_FFI_FILEFLAGSMASK
#ifdef _DEBUG
FILEFLAGS VS_FF_DEBUG
#else
FILEFLAGS 0x0L
#endif

FILEOS          VOS__WINDOWS32
FILETYPE        VFT_APP
BEGIN
   BLOCK "StringFileInfo"
   BEGIN
      BLOCK "000004b0"
      BEGIN
         VALUE "FileDescription",  PROGRAM_NAME
         VALUE "LegalCopyright",   COPYRIGHT_NOTE 
         VALUE "CompanyName",      "My Company\0"
         VALUE "FileVersion",      STRFILEVER
         VALUE "ProductName",      STRPRODUCTNAME
         VALUE "ProductVersion",   STRPRODUCTVER
         VALUE "InternalName",     "program\0"
         VALUE "OriginalFilename", "program.exe\0"
         VALUE "Comments",         "A comment to show\0"
      END
   END
   BLOCK "VarFileInfo"
   BEGIN
     VALUE "Translation", 0x0000, 0x04b0
   END
END

当我使用PowerShell显示版本信息时,如下所示:

代码语言:javascript
复制
 (dir *.exe).VersionInfo|fl

显示空的“注释”。

我也可以从SysInternals获得sigcheck程序:

代码语言:javascript
复制
sigcheck -a .\program.exe

它显示:

代码语言:javascript
复制
...
Comments:       n/a
...

“不适用”?这是不是意味着我需要设置一些特殊的标志,或者一些东西来显示评论?

EN

回答 1

Stack Overflow用户

发布于 2016-02-10 19:51:21

要使其正常工作,我必须将/D _UNICODE /D UNICODE添加到资源编译器命令行:

代码语言:javascript
复制
rc.exe /D _UNICODE /D UNICODE ....

使用这样的命令行-注释就在那里!我看起来很奇怪,它只对注释是必需的,而其他预定义字段不需要它。无论如何--谢谢你们的提示--我已经看过了VS是如何做到的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35313393

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档