【问题标题】:Get the file version of a dll or exe [duplicate]获取dll或exe的文件版本[重复]
【发布时间】:2012-08-29 22:17:58
【问题描述】:

可能的重复:
Command line tool to dump Windows DLL version?
How do I retrieve the version of a file from a batch file on Windows Vista?

是否可以使用批处理命令获取dll或exe文件的文件版本并将其存储在变量中?

【问题讨论】:

  • 我不知道如何在批处理文件的变量中捕获版本号。

标签: windows batch-file


【解决方案1】:

这是一个使用 sigcheck 的示例:

@ECHO OFF

FOR /F "tokens=1-3" %%i IN ('p:\supporttools\sigcheck.exe p:\supporttools\procmon.exe') DO ( IF "%%i %%j"=="File version:" SET filever=%%k )

ECHO The version of the file is %filever%

PAUSE

【讨论】:

  • 使用 sigcheck 比使用 filever 更好。您可以轻松地将任一小实用程序与您的项目捆绑在一起,以确保它可用,并且都可以在 XP 及更高版本上运行,但 filever 具有 .net 依赖项。另外,sigcheck 中的 -n 开关非常有用,我不确定 filever 是否有等效项。
【解决方案2】:

查看 Sysinternals 实用程序 SigCheck。 在你的批处理脚本中试试这个:

sigcheck.exe -n YourFile.exe

【讨论】:

  • 谢谢。 SigCheck 和 Filever 都转储文件版本。我正在尝试将批处理文件中的变量设置为文件版本。我无法弄清楚那部分。
  • @Calumet 到目前为止你尝试过什么?
猜你喜欢
  • 2010-10-30
  • 1970-01-01
  • 1970-01-01
  • 2013-04-02
  • 1970-01-01
  • 2010-10-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多