線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1006
推到 Plurk!
推到 Facebook!

DELPHI中的ADODB.pas 单元中,一个直到今天都还没有解决的BUG

 
GrandRURU
站務副站長


發表:235
回覆:1655
積分:1753
註冊:2005-06-21

發送簡訊給我
#1 引用回覆 回覆 發表時間:2012-06-11 11:36:59 IP:59.120.xxx.xxx 訂閱
原文來自:DELPHI中的ADODB.pas 单元中,一个直到今天都还没有解决的BUG

如果ADOQuery 中使用了 new Fields 等,或是用了 Lookup 功能。

出错类似

Exception class EOleException with message '发生未知错误。'. Process XXXXXX.exe (簡)
or
Exception class EOleException with message '發生未知的錯誤。'. Process XXXXXX.exe (繁)

的错误。

这个错误又仅在调试时发生,而在直接运行EXE又没有错误提示。

这个错误发的主要原因就是没有对 NULL 进行判断

修改方法,打开 Adodb.pas

查询到 TCustomADODataSet.LocateRecord,在最前面加入如下语句:
[code delphi]
if Varisnull(keyValues) or VarisEmpty(KeyValues) then
begin
result:=false;
exit;
end;
[/code]
系統時間:2017-12-17 18:02:04
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!