Windows 7 shell中未完全显示可执行版本

val*_*ldo 4 windows winapi version

根据WinAPI可执行文件可能包含资源部分.常见的资源类型之一是版本info(VERSIONINFO).它由一个固定的部分组成,加上它可以包含任意数量的字符串条目(名称+值对).

我的构建环境是这样安排的,每当我构建一个可执行文件时 - 它的版本信息会自动调整以反映源代码控制的当前状态.因此它始终包含其构建信息.

直到上个月,当我还在使用旧的XP机器时,我可以右击任何这样的可执行文件,选择属性/版本,然后 - 瞧!我可以看到所有构建信息.但最近我将我的机器升级到Windows 7.而且,如发现的那样,它不再显示丰富的版本信息.它仅显示固定版本信息部分.

有谁知道这是否可以修复?也许在某个地方存在一个选项来启用以前的版本信息选项卡?

PS丰富的版本信息有,它不是积累的问题.当我用资源编辑器打开文件时,我可以看到这一点.

提前致谢.

UPD:

我的意思是"丰富的版本信息".

http://msdn.microsoft.com/en-us/library/ms647001%28v=vs.85%29.aspx

据此,版本信息包含强制部分(包括产品和文件信息).另外,它可能包含任意字符串对.有关StringFileInfo更多信息,请参阅

在我的可执行文件的版本信息中,我使用这些自定义字符串来提供丰富的源代码控制信息(我使用SVN).

修订号进入文件/产品次要版本号,这里没有问题.但是我也放了一些自定义字符串,如下所示:

  • SVN Url ="......"
  • 本地修改="否"
  • 混合修订="是,范围= 143:177"

等等.

Windows XP UI在shell的标准版本信息选项卡中显示了所有这些字符串.他们刚刚在Windows 7中消失了.

问题是如何把它们放回去.

Luk*_*uke 8

我假设你的意思是不再显示自定义字段(例如非标准字段).可悲的是,这似乎是微软愚弄界面而损害高级用户/开发人员的另一个领域.文件时代的"x分钟前"是我存在的祸根.无论如何,似乎没有任何内置的方法来解决这个问题; 看起来像其他人已经照顾它了.