小编Aat*_*akA的帖子

从 .dll 访问 .exe 中定义的函数的正确方法

我有一个带有可执行文件和 DLL 的 VS 解决方案。

在可执行文件(MAIN)中:

__declspec(dllexport) void testExe()
{
    printf("Hello from EXE");
}

__declspec(dllimport) void DoStuff();

int main()
{
    DoStuff();
}
Run Code Online (Sandbox Code Playgroud)

在 .dll (DLL) 中

__declspec(dllimport) void testExe();

__declspec(dllexport) void testDll()
{
    printf("Hello from Dll");
}

__declspec(dllexport) void DoStuff()
{
    testExe();
    testDll();
}
Run Code Online (Sandbox Code Playgroud)

我在 MAIN.exe 中链接了 Dll.lib,但仍然收到链接错误:

error LNK2019: unresolved external symbol "__declspec(dllimport) void __cdecl testExe(void)" referenced in function "void __cdecl DoStuff(void)"
Run Code Online (Sandbox Code Playgroud)

我怎样才能实现这个目标?

c++ windows winapi

3
推荐指数
1
解决办法
891
查看次数

标签 统计

c++ ×1

winapi ×1

windows ×1