DLL 中的 AFX_MANAGE_STATE(AfxGetStaticModuleState()) 会导致 EXE 不
AFX_MANAGE_STATE(AfxGetStaticModuleState()) in DLL causes EXE to not exit?
我有一个由DLL和Windows控制台应用程序.exe组成的项目。
.exe调用 DLL。在 DLL 中,我正在创建一个对话框。
AFX_MANAGE_STATE(AfxGetStaticModuleState());
MyDlg* dlg = new MyDlg;
dlg->Create(IDD_DIALOG1);
我必须添加AFX_MANAGE_STATE(AfxGetStaticModuleState()),以便它知道在DLL中查找资源。但是,当控制权返回到 EXE 时,这似乎会导致问题。
当我在 EXE 的 main() 函数中"返回 0"时,控制台窗口不会消失。我必须物理关闭它才能使 EXE 停止运行。如果我从 DLL 中删除AFX_MANAGE_STATE(AfxGetStaticModuleState())(以及对 MyDlg 的所有引用,因为它们没有它就无法工作),当控制权传递回 EXE 时,一切正常。
为什么会这样?
固定。我的 DLL 正在使用 DAO。我不得不添加 AfxDaoTerm();在退出之前。谢谢
相关文章:
- 将返回值从 exe 传递到 bat,并将其传递给 C# 中的进程
- 在 ******.exe 中0x00000000772CA267 (ntdll.dll) 处未处理的异常:0xC0000
- C++ DLL 引用C++.exe中的函数和类
- 从 exe 和 dll 访问静态库中的 extern 变量
- .EXE是否可以使用间接导入的 DLL 中的符号?
- 用户DLL/EXE中的堆分配失败
- 在 Project70.exe 中的0x0F4D514F (vcruntime140d.dll) 引发异常:0xC000
- 'Cannot output file filename.exe Permission denied' C++ 代码::块中的错误
- 如何将一个 exe 项目链接到另一个 exe 项目中的类
- 在 Project1.exe 中0x00007FFCA550A839处发生未经处理的异常:Microsoft C++异常
- mystring.exe中的0x0FC9E559(ucrtbaseed.dll)的未经手法异常:0xc0000005:访
- 在2.exe中的0x00DE181818的未经手法异常:0xc0000005:访问违规写作位置0xcd7cbe10
- 提高.测试 在 dll 中使用 BOOST 测试用例和在 exe 中的运行器中出现问题
- C++ exe 中的修补调用
- CMD.EXE中的控制台输出,通过C 进行powershell.exe
- 在 Main.exe 中的 0x6FDFDBF0 (vcruntime140.dll) 引发异常
- 查看给定VC++ exe中的所有符号/文件的方法
- ConsoleApplication2.exe中的首次机会异常:0xC0000005:写入访问冲突,c++
- .pdb中的函数地址与.exe中的不一样,为什么?
- 调试运行在dllhost.exe中的inproc.com服务器