我有一个带有Version资源的文件,文件vesrion / Product version字段已填写。我需要通过BAT文件检索产品版本。例如,我在bat文件的输出中有ProductVersion 1.0.1的文件我不想有字符串“101”或“1.0.1”
答案 0 :(得分:4)
您可以使用属于sigcheck
Sysinternals Suite的filever
工具,因为Wilma已经过时了,例如。
char *
通过指定$ sigcheck.exe -q -n app.exe
5.0.0.1241
(安静)和-q
,它只会显示文件版本号。
答案 1 :(得分:1)
How to use the Filever.exe tool to obtain specific information about a file in Windows
从我收集的filever
输出结果来看,它总是在列中,你想要第五列(版本)。所以一个简单的for
就足够了:
for /f "tokens=5 delims= " %%v in ('filever myFile.dll /b') do echo %%v
答案 2 :(得分:1)
对于像我这样的假人,在上面的陈述中有一个更正,以获得产品版本的价值:
for /f "tokens=5 delims= " %%v in ('filever myFile.dll /b /v') do echo %%v
/v
参数丢失,我无法获得正确的值。
答案 3 :(得分:0)
要从资源RC文件中读取版本,您可以使用:
for /F "tokens=3" %%a in ( 'findstr ProductVersion YourProgram.rc' ) do set VERSION=%%~a