相关疑难解决方法(0)

如何停止DLL的导出功能的名称修改?

我正在尝试创建一个导出名为"GetName"的函数的DLL.我希望其他代码能够调用此函数,而无需知道损坏的函数名称.

我的头文件如下所示:

#ifdef __cplusplus
#define EXPORT extern "C" __declspec (dllexport)
#else
#define EXPORT __declspec (dllexport)
#endif

EXPORT TCHAR * CALLBACK GetName();
Run Code Online (Sandbox Code Playgroud)

我的代码看起来像这样:

#include <windows.h>
#include "PluginOne.h"

int WINAPI DllMain (HINSTANCE hInstance, DWORD fdwReason, PVOID pvReserved)
{
     return TRUE ;
}

EXPORT TCHAR * CALLBACK GetName()
{
    return TEXT("Test Name");
}
Run Code Online (Sandbox Code Playgroud)

当我构建时,DLL仍然导出名为"_GetName @ 0"的函数.

我究竟做错了什么?

c c++ name-mangling extern

30
推荐指数
3
解决办法
3万
查看次数

标签 统计

c ×1

c++ ×1

extern ×1

name-mangling ×1