这个问题比较简单,你可以看一些资料。例子很多的。我给你一下大概的步骤:
1、在.dll文件中编写你要输出的函数;
2、定义需要调用的指针函数 类型 (*函数名)(参数列)
3、在编写.exe文件时显示载入.dll文件用函数LoadLibrary("xx.dll");
4、用函数GetProcAddress()获得.dll文件中要调用的函数地址
5、使用函数、即可
还需要例子的话,联系我
1、在.dll文件中编写你要输出的函数;
2、定义需要调用的指针函数 类型 (*函数名)(参数列)
3、在编写.exe文件时显示载入.dll文件用函数LoadLibrary("xx.dll");
4、用函数GetProcAddress()获得.dll文件中要调用的函数地址
5、使用函数、即可
还需要例子的话,联系我
比如你的函数定义为这样
int MyFuc(int a,intb);typedef AAA(int,int);
AAA *p;
然后LoadLibrary
和GetProcAddress
typedef BOOL (WINAPI *LPFNSHELLEXECUTEEX)(LPSHELLEXECUTEINFO); HINSTANCE hShell32Dll;
LPSHELLEXECUTEINFO pShellExecuteInfo;
LPFNSHELLEXECUTEEX lpfnShellExecuteEx;
BOOL fOk; hShell32Dll = NULL;
pShellExecuteInfo = NULL;
fOk = FALSE; hShell32Dll = LoadLibrary(TEXT("SHELL32.DLL"));
if (!hShell32Dll) { goto End; } lpfnShellExecuteEx = (LPFNSHELLEXECUTEEX)GetProcAddress(hShell32Dll,
API_NAME(ShellExecuteEx));
if (!lpfnShellExecuteEx) { goto End; } pShellExecuteInfo = new SHELLEXECUTEINFO;
if (!pShellExecuteInfo) { goto End; } ZeroMemory(pShellExecuteInfo, sizeof(SHELLEXECUTEINFO));
pShellExecuteInfo->cbSize = sizeof(SHELLEXECUTEINFO);
... // 略去 fOk = (*lpfnShellExecuteEx)(pShellExecuteInfo);End:
if (hShell32Dll) {
FreeLibrary(hShell32Dll);
}
if (pShellExecuteInfo) {
delete pShellExecuteInfo;
}
if (fOk) {
...
}
return fOk;
}