创建Win32动态库及调用的示例
根据图片创建Win32动态库和调用动态库的小例子。首先,在VC 6.0中新建一个工作区,按照下图操作:
1. 右击添加工程到工作空间,弹出添加工程的界面,选择Win32动态库,根据图片操作。
2. 单击确定后,工程建立完成,展开头文件和源文件目录。
3. 添加头文件到项目,并编辑该头文件(命名为MyDLL.h)并添加如下代码:
```c
ifndef MYDLL_H
define MYDLL_H
extern "C" int __declspec(dllexport) add(int a, int b);
endif
```
4. 在`MyDLL.cpp`中实现功能,代码如下:
```c
include "stdafx.h"
BOOL APIENTRY DllMain(HANDLE hModule, DWORD ul_reason_for_call, LPVOID lpReserved) {
return TRUE;
}
int add(int a, int b){
return a b;
}
```
5. 按F7进行编译。
调用动态库实例演示
1. 添加MFC对话框程序到工作空间,创建MFC对话框。
2. 编辑代码如下:
```c
// TODO: Add extra validation here
HINSTANCE hDllInst;
typedef int (*lpAddFun)(int, int);
lpAddFun m_add;
hDllInst LoadLibrary("F:WorkProjectLibraryDemoMyDLLDebugMyDLL.dll");
if (hDllInst ! NULL)
{
m_add (lpAddFun)GetProcAddress(hDllInst, "add");
}
CString str;
if (m_add ! NULL)
{
int aa m_add(1, 1); // 调用add函数
("1 1 %d", aa);
::MessageBox(NULL, str, "提示", MB_OK);
}
// CDialog::OnOK();
```
3. 设置为活动工程,编译并运行。
通过以上步骤,成功调用了动态库中的函数,实现了在MFC对话框程序中的演示。
希望这个例子对您有所帮助,让您更好地了解如何创建Win32动态库和调用其中的函数。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。