我用MFC框架开发了一个应用程序,在程序里使用了odbc驱动来访问数据库。一开始程序能正常运行,并且能够正常访问数据库,但是时间一长(有时两三个小时,有时一两天)程序就崩溃了。崩溃时,vs2019给出的提示如下:
程序里面有个定时器,会定时启动两个线程(功能是测试数据库服务器是否可以正常连接),每个线程单独连接一个数据库((我有两个数据库服务器,一个在本地电脑,一个在另一台电脑上),在测试完数据库是否可正常连接后就退出线程。
配置环境:
MySQL服务器版本:community 5.7.32(32位)和community 8.0.21(64位)
开发平台:vs2019
驱动:MySQL ODBC 8.0 ANSI driver(版本 8.00.21,32/64位)
在程序里使用ADO来连接MySQL数据库,boost库版本是1.75.0
ADO初始化:
::AfxOleInit();
在主程序的析构函数里:CoUninitialize();