pcplayer:
教训:TStream.Read 在把数据写进缓冲区的时候,如果写越界,会造成奇怪的BUG
[阅读: 546] 2005-01-08 07:01:48
我一个程序有一个对象,这个对象有几个事件。
这个对象里还有一个变量FDeviceInfo,是 Packed record 内型。
AStream.Read(FDeviceInfo,AStream.Size); 因为默认以为这两个数据一样大,没注意到AStream.Size比SizeOf(FDeviceInfo)更大,编译运行都很正常,只出了一个奇怪的现象:本来应该触发某个事件的行为,引发了另一个事件去了!