是这样的,我自己建了一个DLL文件,内部有一个窗体类,软件运行后首先会通个这个类用DoModal()新建一个模态窗口。后来我又想新建一个更新功能,想法是如果软件更新时用户正占用这个DLL并且停在这个窗体,那么,首先就关闭这个窗体,释放DLL,然后更新这个DLL即可。问题是,想关闭它必须知道它的句柄。这个句柄怎么找呢?
我想这样关闭它:SendMessage(FindWindow(_T("loginframe"),NULL),WM_CLOSE,NULL,NULL);因为我之前是这样建立它的Cloginframe loginframe;
loginframe.DoModal();思考是不行,关不了,我不想这样:
SendMessage(FindWindow(NULL,_T("窗口标题")),WM_CLOSE,NULL,NULL);
因为我以后可能会更改标题,这样太麻烦,而且容易忘记改。
请高手指教!DLL 窗体 句柄 关闭 VC软件类
我想这样关闭它:SendMessage(FindWindow(_T("loginframe"),NULL),WM_CLOSE,NULL,NULL);因为我之前是这样建立它的Cloginframe loginframe;
loginframe.DoModal();思考是不行,关不了,我不想这样:
SendMessage(FindWindow(NULL,_T("窗口标题")),WM_CLOSE,NULL,NULL);
因为我以后可能会更改标题,这样太麻烦,而且容易忘记改。
请高手指教!DLL 窗体 句柄 关闭 VC软件类
解决方案 »
- 【CString】字符串查找
- SetDlgItemText的问题
- 请教有经验的朋友关于串口编程
- C++ ATL写的BHO插件,加载后IE浏览器老是提示页面已恢复不停的跳转
- 怎样取得调色板中的颜色值?
- 哪位仁兄有图象缩放浏览的源代码?求!!!
- 如何在一个应用程序中实现usb设备的卸载呢?
- 请高手推荐一款视频采集卡
- 在vc中调用ado,如何将recordset的activeconnection设置为nothing.vb中set rs.activeconnection=nothing
- 求助:错误LNK2001
- 线程函数调用回调函数的疑惑
- win7 32位操作系统 VS C++ 2010编译64位Dll 问题
函数嘛,对不对?
即然是函数句柄就不能传了?
如果你静态链那个DLL,那更简单,直接把名柄放在全局变量中,那边的EXE 直接extern 声明一下,就能直接获取。
如果你的是EXE,那就要开共享内存CreateFileMapping,MapViewOfFile 等。