由于某种原因我需要为当前程序编写dll,例如具有函数A(),所以我不会编译我的dll,它调用这个函数,而不包括这个函数的实现(只提供它的标题)。并在程序中使用我的dll,这个函数的实现是。是可能的,还是我做了一些严重错误的事情?
例如我想像这样运行它:
的main.cpp
#pragma comment(lib,"MyDll.lib")
void A() { cout << "Hello world" }
void main() {
HMODULE hLib;
hLib = LoadLibrary("MyDll.dll");
void (*pFunction)(void);
(FARPROC &)pFunction = GetProcAddress(hLib, "B");
pFunction();
}
main.h
void A();
所以在dll中我想写这样的somithing:
void B() { A(); }
答案 0 :(得分:0)
是的,这是可能的。不要忘记你的DLL源代码中的#include "main.h"
。