DLL de compilação com informações da versão
-
26-09-2019 - |
Pergunta
Quais etapas são necessárias para compilar informações de versão dentro de uma DLL do Windows na linha de comando. Eu tenho analisado os arquivos VersionInfo, mas não consegui descobrir como vinculá -los à DLL.
obrigada
Solução
Você precisa criar um recurso de versão e adicioná -lo ao seu projeto. Isso pode ser feito com muita facilidade no Visual Studio. No VS 2008, clique com o botão direito do mouse em uma pasta do projeto, escolha Adicionar e em "Visual C ++" Select "Arquivo de Recursos" (não modelo de recurso), no arquivo de recursos que acabaram de ser criados, você poderá adicionar um recurso de versão que se parece com isto:
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
Na linha de comando, você precisará usar o RC.exe, o compilador de recursos e, em seguida, vincular o resultado à sua DLL.
Outras dicas
Clique com o botão direito do mouse no nome do projeto no Solution Explorer, selecione Adicionar e depois Recurso. Selecione a versão. No painel inferior do recém-criado vs_version_info, basta modificar cada valor de acordo, reconstruir e depois haverá informações da versão.
Normalmente, você coloca um recurso VersionInfo no seu arquivo .rc e o compila com o compilador de recursos (rc.exe). Infelizmente, não conheço nenhuma documentação (recente) do formato de origem. Imitar o que o VS produz parece funcionar bem ...