2011-07-14 42 views
6

Bản sao có thể xảy ra:
Command line tool to dump Windows DLL version?
How do I retrieve the version of a file from a batch file on Windows Vista?Lấy phiên bản tập tin của một dll hoặc exe

Có thể nhận được phiên bản tập tin của một dll hoặc exe tập tin sử dụng lệnh batch và lưu trữ nó trong một biến?

+0

tôi không thể tìm ra cách để nắm bắt số phiên bản trong một biến trong file hàng loạt. – Calumet

Trả lời

11

Dưới đây là một ví dụ sử dụng 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 
+0

Tốt hơn để sử dụng sigcheck rồi nhấn mạnh. Bạn có thể dễ dàng đóng gói một trong hai tiện ích với dự án của bạn để đảm bảo nó có sẵn, và cả hai đều chạy trên XP và lên, nhưng tập tin có phụ thuộc .net. Ngoài ra, các -n chuyển đổi trong sigcheck là rất hữu ích, tôi không chắc chắn nếu filever có tương đương. – BuvinJ

10

Hãy xem tiện ích Sysinternals SigCheck. Hãy thử điều này trong kịch bản hàng loạt của bạn:

sigcheck.exe -n YourFile.exe 
+0

Cảm ơn. Cả SigCheck và Filever đều đổ phiên bản tệp. Tôi đang cố gắng để đặt một biến trong tập tin thực thi vào phiên bản tập tin. Tôi không thể hình dung ra điều đó. – Calumet

+0

http://stackoverflow.com/questions/1746475/dos-windows-batch-help-in-setting-a-variable-from-command-output –

+0

@Calumet Bạn đã thử những gì cho đến nay? – serk

Các vấn đề liên quan