MFC中动态库(DLL)访问主程序(EXE)窗口控件的注意事项

通常来说,可以通过下面几个函数获得主窗口MainFrame的指针:

1     AfxGetMainWnd();
2     AfxGetApp()->GetMainWnd();
3     AfxGetApp()->m_pMainWnd;

但这几个函数仅在EXE中使用有效,如果在DLL中调用该函数,AfxGetApp()返回的是当前DLL的实例,并不是主EXE的实例。

有两个思路可以解决改问题:

1、通过 SendMessage的方式,向EXE主窗口发送消息。

2、创建dll的时候选择:使用MFC扩展DLL

posted @ 2021-12-29 14:13  李建业  阅读(331)  评论(0编辑  收藏  举报