gpt4 book ai didi

c++ - 资源编辑器中的dll资源: Where do they come from?

转载 作者:太空宇宙 更新时间:2023-11-04 12:25:03 26 4
gpt4 key购买 nike

我有一个用 Visual Studio 编写的小型 C++ dll(当然)。在解决方案代码中,我有一个仅包含版本信息的资源文件。

奇怪的是,当我将已编译的 dll 分片到 Visual Studio 时,它会打开一个带有位图、对话框和字符串表的资源查看器——它们都是从哪里来的?

有什么办法可以去除吗?这是资源文件本身:

//Microsoft Developer Studio generated resource script.
//

#define APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 2 resource.
//
#include "afxres.h"
#include "verinfores.h"

/////////////////////////////////////////////////////////////////////////////
#undef APSTUDIO_READONLY_SYMBOLS

/////////////////////////////////////////////////////////////////////////////
// English (U.S.) resources

#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
#ifdef _WIN32
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
#pragma code_page(1252)
#endif //_WIN32

#ifdef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// TEXTINCLUDE
//

1 TEXTINCLUDE DISCARDABLE
BEGIN
"#include ""afxres.h""\r\n"
"#include ""verinfores.h""\r\n"
"\0"
END

2 TEXTINCLUDE DISCARDABLE
BEGIN
"#define _AFX_NO_SPLITTER_RESOURCES\r\n"
"#define _AFX_NO_OLE_RESOURCES\r\n"
"#define _AFX_NO_TRACKER_RESOURCES\r\n"
"#define _AFX_NO_PROPERTY_RESOURCES\r\n"
"\r\n"
"#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)\r\n"
"#ifdef _WIN32\r\n"
"LANGUAGE 9, 1\r\n"
"#pragma code_page(1252)\r\n"
"#endif //_WIN32\r\n"
"#include ""afxres.rc"" // Standard components\r\n"
"#endif\r\n"
"\0"
END

#endif // APSTUDIO_INVOKED

#ifndef _MAC
/////////////////////////////////////////////////////////////////////////////
//
// Version
//

VS_VERSION_INFO VERSIONINFO
FILEVERSION MCSDK_FILEVERSION
PRODUCTVERSION MCSDK_PRODUCTVERSION
FILEFLAGSMASK 0x3fL
#ifdef _DEBUG
FILEFLAGS 0x1L
#else
FILEFLAGS 0x0L
#endif
FILEOS 0x40004L
FILETYPE 0x1L
FILESUBTYPE 0x0L
BEGIN
BLOCK "StringFileInfo"
BEGIN
BLOCK "040904b0"
BEGIN
VALUE "Comments", "\0"
VALUE "CompanyName", COMPANY_NAME
VALUE "FileDescription", MODULE_NAME
VALUE "FileVersion", PRODUCT_BUILDVER
VALUE "InternalName", INTERNAL_NAME
VALUE "LegalCopyright", COPYRIGHT_STRING
VALUE "OriginalFilename", ORIGINAL_NAME
VALUE "ProductName", PRODUCT_NAME
VALUE "LegalTrademarks", LEGAL_TRADEMARK
VALUE "ProductVersion", PRODUCT_VERSION
VALUE "OLESelfRegister", OLE_SELFREG
VALUE "Build Number", BUILD_NUMBER
END
END
BLOCK "VarFileInfo"
BEGIN
VALUE "Translation", 0x409, 1200
END
END

#endif // !_MAC


#endif // English (U.S.) resources
/////////////////////////////////////////////////////////////////////////////



#ifndef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 3 resource.
//
#define _AFX_NO_SPLITTER_RESOURCES
#define _AFX_NO_OLE_RESOURCES
#define _AFX_NO_TRACKER_RESOURCES
#define _AFX_NO_PROPERTY_RESOURCES

#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
#ifdef _WIN32
LANGUAGE 9, 1
#pragma code_page(1252)
#endif //_WIN32
#include "afxres.rc" // Standard components
#endif

/////////////////////////////////////////////////////////////////////////////
#endif // not APSTUDIO_INVOKED

VALU 字段的所有值都在单独的文件 (VerInfoRes.h) 中定义。提前致谢。

最佳答案

根据定义,代码包括 AfxRes.rc,在 VC9 中包含字符串表、光标、对话框和位图。

这可能是那些额外资源的来源。

关于c++ - 资源编辑器中的dll资源: Where do they come from?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3016371/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com