9

Для большинства исполняемых файлов Windows (DLL, EXE ...) версию и другие сведения можно просмотреть на вкладке "Сведения" в "Свойствах" (Alt+Enter).

Подробная информация о shell32.dll из Windows 7 amd64

Интересно: есть ли способ командной строки сделать это? Меня особенно интересует версия продукта, но также могут быть полезны и другие вещи.

Следующие свойства желательны в порядке приоритета:

  • принять путь exe/dll в качестве параметра
  • вывод на стандартный вывод (так что вы можете обработать остальное через | pipe)
  • доступно по умолчанию во всех поддерживаемых Windows (XP+)
  • доступно по умолчанию в Windows Vista+
  • доступно по умолчанию в Windows XP
  • применимый в коммерческой среде
  • бесплатная лицензия (как GPL)
  • переносимый (т.е. автономный exe, может сопровождаться DLL)

4 ответа4

7

В powershell get-command "full-path-to-executable" | format-list сделает свое дело. Powershell - это новая командная строка для Vista и более поздних версий Windows, которая может быть установлена в XP.

4

Вы можете использовать переносной инструмент sigcheck.exe, который входит в состав Sysinternals Suite, например

$ sigcheck.exe some_app.exe

Sigcheck v2.51 - File version and signature viewer
Copyright (C) 2004-2016 Mark Russinovich
Sysinternals - www.sysinternals.com

C:/Program Files (x86)/Foo App\some_app.exe:
    Verified:   Signed
    Signing date:   14:48 23/12/2015
    Publisher:  X
    Company:    X
    Description:    X
    Product:    Some App
    Prod version:   5.0.0.1241
    File version:   5.0.0.1241
    MachineType:    32-bit

Для более старой версии Windows, такой как XP/2k/2003 (она все еще работает в новой), используйте инструмент filever.exe (проверьте прямую ссылку на exedll.info), чтобы получить конкретную информацию о файле, такую как:

  • Платформа, на которой работает файл
  • Версия файла
  • Атрибуты файла
  • Тип файла
  • Язык файла
  • Является ли файл типом доставки или типом отладки
  • Размер файла
  • Дата создания файла
  • Путь к файлу

Некоторые другие, чтобы рассмотреть:

  • Дампер двоичных файлов Microsoft COFF (DUMPBIN.EXE)

    Отображает информацию о двоичных файлах Common Object File Format (COFF). Вы можете использовать DUMPBIN для проверки объектных файлов COFF, стандартных библиотек объектов COFF, исполняемых файлов и библиотек динамической компоновки (DLL).

  • binwalk - поиск в указанном файле (ах) исполняемых кодов операций, общих для различных архитектур ЦП. Простой в использовании инструмент для анализа, обратного проектирования и извлечения интересных файлов / данных из двоичных файлов.


Для получения дополнительных команд, проверьте:

4

Используйте утилиту Microsoft DUMPBIN.

У него много полезных опций, однако это зависит от того, что вы хотите сделать.

Тем не менее, это не бесплатно, но я считаю, что можно получить бесплатно с Windows SDK.

3
Function GetProductVersion (sFilePath, sProgram)  
Dim objShell, objFolder, objFolderItem, i  
If FSO.FileExists(sFilePath & "\" & sProgram) Then  
    Set objShell = CreateObject("Shell.Application")  
    Set objFolder = objShell.Namespace(sFilePath)  
    Set objFolderItem = objFolder.ParseName(sProgram)  
    Dim arrHeaders(300)  
    For i = 0 To 300  
        arrHeaders(i) = objFolder.GetDetailsOf(objFolder.Items, i)  
        'WScript.Echo i &"- " & arrHeaders(i) & ": " & objFolder.GetDetailsOf(objFolderItem, i)  
        If lcase(arrHeaders(i))= "product version" Then  
            GetProductVersion= objFolder.GetDetailsOf(objFolderItem, i)  
            Exit For  
        End If  
    Next  
End If  
End Function  

Источник - это ссылка на файл .vbs, который может получить версию файла для вас, и вы можете взять ее и использовать вывод по своему усмотрению.

Корабли будут все версии Windows, не уверен насчет лицензии, очень переносимый, но не exe или DLL.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .