使用版本信息编译 DLL

发布于 2024-08-28 10:49:42 字数 91 浏览 12 评论 0原文

从命令行编译 Windows DLL 内的版本信息需要执行哪些步骤。我一直在查看 VersionInfo 文件,但不知道如何将它们链接到 DLL。

谢谢

What steps are needed to compile Version Information inside a windows DLL from the command line. I have been looking at VersionInfo files, but could not figure out how to link them to the DLL.

Thank you

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

稀香 2024-09-04 10:49:42

您需要创建一个版本资源并将其添加到您的项目中。这可以在 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。

You need to create a version resource and add it to your project. This can be very easily done from within visual studio. in VS 2008, right click a folder of the project, choose add and under "Visual C++" select "Resource File" (not resource template), in the resource file just created you'll be able to add a version resource which looks like this:

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

From the command line you'll need to use rc.exe, the resource compiler and then link the result to your dll.

无法言说的痛 2024-09-04 10:49:42

在解决方案资源管理器中右键单击项目名称,选择“添加”,然后选择“资源”。选择版本。在新创建的 VS_VERSION_INFO 的底部窗格中,只需相应修改每个值,重新构建即可出现版本信息。

Right-click project name in solution explorer, select Add then Resource. Select Version. In the bottom pane of the newly created VS_VERSION_INFO just modify each value accordingly, re-build and then there will be version info.

把回忆走一遍 2024-09-04 10:49:42

通常,您将 VersionInfo 资源放入 .rc 文件中,并使用资源编译器 (rc.exe) 对其进行编译。不幸的是,我不知道任何(最近的)源格式文档。模仿 VS 的产品似乎还不错……

You normally put a VersionInfo resource into your .rc file and compile it with the resource compiler (rc.exe). Unfortunately, I don't know of any (recent) documentation of the source format. Imitating what VS produces seems to work all right though...

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文