我已经使用多线程应用程序为每个线程创建了新的TSQLConnection。如果我尝试使用跟踪(TSQLConnection.SetTraceEvent或TSQLMonitoring),我将得到预期的跟踪结果,但在此之后,当我尝试使用任何数据库功能时,主线程似乎会感到困扰。应用程序抛出“在0x004dffcf:写入地址为0xfffff 2”的访问冲突,IDE中的调用堆栈显示"7c90327a ntdll.RlConvertUlongToLargerInteger + 0x3c“和"7c90e48a ntdll.KiUserExceptionDispatcher + 0xe”的重复行,最上面的一行是“Controls.ReadControlName(?)”。
那么,跟踪函数是否存在bug,并且不适用于多线程应用程序,或者我的应用程序中是否存在隐藏的bug?怎么弄清楚?
我正在使用Delphi 2007。
编辑看起来,即使在主线程中有两个单独的连接,也会引发异常。我将尝试创建测试应用程序。
发布于 2010-08-09 15:26:06
问题解决了,我已经加载了InterXpress驱动程序的旧版本(显然是有缺陷的),我只是没有意识到这是问题的一部分。
https://stackoverflow.com/questions/3436462
复制相似问题