H
hua8hua
Unregistered / Unconfirmed
GUEST, unregistred user!
我有一个串口程序,里面用到了TurboPower公司的Async通信组件中的
TApdComPort和TApdDataPacket,主要使用这两个来发送任意文件,我采用应答式,
首先发送头结构,等待回答,这个回答是请求包序号,接着发送这个请求包序号的数据,
一直到最后,发送过程一切正常。但是一个非常奇怪的问题出现了:
有时候会突然冒出一个内存异常的错误提示框,但是这个并不影响发送,
发送过程还会继续,直到结束。还有可能弹出很多提示框。
注意更更奇怪的是我跟踪这个错误,居然不知道这个错误是从那个过程里面冒出来的。
我已经在所有的过程或函数加了下面语句:
try except end
还是弹出来,不知道这个是从哪个地方冒出来的。
后来我又使用下面语句:
Application.OnException:=HandleException;
其中HandleException函数实现如下:
procedure TForm_Main.HandleException(Sender: TObject; E: Exception);
begin
//我自己的函数,写到文本文件中
WriteToFile(Sender.ClassName+'错误:'+E.Message,1);
end;
还是捕捉不到这个异常。
★★★不知道那位高手可以帮我解决这个问题?★★★
TApdComPort和TApdDataPacket,主要使用这两个来发送任意文件,我采用应答式,
首先发送头结构,等待回答,这个回答是请求包序号,接着发送这个请求包序号的数据,
一直到最后,发送过程一切正常。但是一个非常奇怪的问题出现了:
有时候会突然冒出一个内存异常的错误提示框,但是这个并不影响发送,
发送过程还会继续,直到结束。还有可能弹出很多提示框。
注意更更奇怪的是我跟踪这个错误,居然不知道这个错误是从那个过程里面冒出来的。
我已经在所有的过程或函数加了下面语句:
try except end
还是弹出来,不知道这个是从哪个地方冒出来的。
后来我又使用下面语句:
Application.OnException:=HandleException;
其中HandleException函数实现如下:
procedure TForm_Main.HandleException(Sender: TObject; E: Exception);
begin
//我自己的函数,写到文本文件中
WriteToFile(Sender.ClassName+'错误:'+E.Message,1);
end;
还是捕捉不到这个异常。
★★★不知道那位高手可以帮我解决这个问题?★★★