Компиляция DLL с информацией о версии

Какие шаги необходимы для компиляции Информации о версии в окна DLL из командной строки. Я смотрел на файлы VersionInfo, но не мог выяснить, как связать их с DLL.

Спасибо

10
задан CharlesB 12 December 2012 в 09:18
поделиться

2 ответа

Вам необходимо создать ресурс версии и добавить его в свой проект. Это очень легко сделать из Visual Studio. в VS 2008 щелкните правой кнопкой мыши папку проекта, выберите «Добавить» и в разделе «Visual C ++» выберите «Файл ресурсов» (не шаблон ресурсов). В только что созданном файле ресурсов вы сможете добавить ресурс версии, который выглядит как это:

VS_VERSION_INFO VERSIONINFO
 FILEVERSION 1,0,0,1
 PRODUCTVERSION 1,0,0,1
 FILEFLAGSMASK 0x17L
#ifdef _DEBUG
 FILEFLAGS 0x1L
#else
 FILEFLAGS 0x0L
#endif
 FILEOS 0x4L
 FILETYPE 0x1L
 FILESUBTYPE 0x0L
BEGIN
    BLOCK "StringFileInfo"
    BEGIN
        BLOCK "040904b0"
        BEGIN
            VALUE "FileDescription", "XXX Application"
            VALUE "FileVersion", "1, 0, 0, 1"
            VALUE "InternalName", "XXX"
            VALUE "LegalCopyright", "Copyright (C) 2010"
            VALUE "OriginalFilename", "XXX.exe"
            VALUE "ProductName", "XXX Application"
            VALUE "ProductVersion", "1, 0, 0, 1"
        END
    END
    BLOCK "VarFileInfo"
    BEGIN
        VALUE "Translation", 0x409, 1200
    END
END

Из командной строки вам нужно будет использовать rc.exe, компилятор ресурсов, а затем связать результат с вашей dll.

15
ответ дан 3 December 2019 в 17:57
поделиться

Обычно ресурс VersionInfo помещается в файл .rc и компилируется с помощью компилятора ресурсов (rc.exe). К сожалению, я не знаю какой-либо (недавней) документации исходного формата. Хотя имитация того, что производит VS, кажется, работает нормально ...

2
ответ дан 3 December 2019 в 17:57
поделиться
Другие вопросы по тегам:

Похожие вопросы: