GetFileVersionInfo 返回 FALSE 的主因是路径非绝对或文件不存在;须先调 GetFileVersionInfoSize,再动态获取语言 ID 拼接键名;确保资源已嵌入且 Unicode/ANSI 版本统一。

GetFileVersionInfo 为什么返回 FALSE?
调用 GetFileVersionInfo 失败,最常见原因是没传对文件路径——它不接受相对路径或命令行参数里的 argv[0] 直接值。Windows 要求路径必须是绝对路径、且指向实际存在的 PE 文件(.exe 或 .dll)。
实操建议:
- 先用
GetModuleFileName获取当前模块的绝对路径:WCHAR path[MAX_PATH]; GetModuleFileName(NULL, path, MAX_PATH); - 确保路径末尾不是反斜杠(
path结尾有
