我目前正在研究Windows版本信息资源。 在VS_VERSION_INFO
资源中可以有多个VS_VERSIONINFO/VS_FIXEDFILEINFO
结构是令人困惑的。
据我所知,你可以有多个RT_VERSION->VS_VERSION_INFO
资源与不同的语言ID。 (就像图中所示)
这两个语言ID( 0 and 1031
)实际上有两个不同的VS_VERSIONINFO/VS_FIXEDFILEINFO
。
0
是一个中性语言,似乎比你的实际本地语言ID(这是1031
)优先。
对我来说,这似乎是一个混乱和混乱。 在VS_VERSION_INFO
资源中有多个VS_VERSIONINFO
结构怎么可能有什么意义? Windows如何解释多个资源,结构? 而当你调用GetFileVersionInfo
时,怎么可能只获得一块缓冲区呢?
这一切对我来说都没有什么意义,我也找不到太多的文档。
我假定资源管理器只显示第一个文本块,也不喜欢特定的一个。 只需使用文本编辑器并在资源文件中交换块。 但也许资源编译器重新排序它们。
要访问单独的部分: – VerQueryValue与“\”给你固定的版本信息块VS_FIXEDFILEINFO – VerQueryValue与“\ VarFileInfo \翻译”给你一个翻译列表 – “\ StringFileInfo \ langId_charset \键名”你得到特定的字符串部分
您可以在MSDN中找到这些信息