创建显示对话框的DLL 现在最常看见的关于DLL 的问题就是如何在DLL 中使用对话框,这是一个很普遍的关于如何在DLL 中使用资源的问题
这里我们从 Win32 DLL 和 MFC DLL 两个方面来分析并解决这个问题
一.Win 32 DLL 在Win32 DLL 中使用对话框很简单,你只需要在你的DLL 中添加对话框资源,而且可以在对话框上面设置你所需要的控件
然后使用DialogBox 或者 CreateDialog 这两个函数(或相同作用的其它函数)来创建对话框,并定义你自己的对话框回调函数处理对话框收到的消息
1)在VC 菜单中File->New 新建一个命名为 UseDlg 的Win32 Dynamic-Link Library 工程,下一步选择 A simple DLL project
2)在VC 菜单中Insert->Resource 添加一个ID 为 IDD_DLG_SHOW 的Dialog 资源,将此Dialog 上的Cancel 按钮去掉,仅保留 OK 按钮
再添加一个ID 为 IDD_ABOUTBOX 的对话框,其 Caption 为 About
保存此资源,将资源文件命名为 UseDlg
并将 resource
h 和UseDlg
rc 加入到工程里面
3)在UseDlg
app 中包含 resource
h,并添加如下代码: HINSTANCE hinst = NULL; HWND hwndDLG = NULL; BOOL CALLBACK DlgProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam); BOOL CALLBACK AboutProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam); ext