是这段代码的问题,还是delphi7的问题,还是金山毒霸的问题?(200)

  • 主题发起人 主题发起人 findwo
  • 开始时间 开始时间
F

findwo

Unregistered / Unconfirmed
GUEST, unregistred user!
我用delphi7只要一运行这段代码,金山毒霸就报Win32.Troj.Dm.372736(木马程序)谁在用delphi7,帮我试一下。代码如下:procedure TForm1.Button1Click(Sender: TObject);vari:integer;p:pword;begin i:=2; getmem(p,2); p^:=22; inc(p,i); p^:=11;end;
 
不用试也知道,越界访问,你的代码或你自己的逻辑的问题。
 
越界就会报毒吗?
 
procedure TForm1.Button1Click(Sender: TObject);vari:integer;p:pword;begin i:=1; getmem(p,2); p^:=22; inc(p,i); p^:=11;end; 这样不越界了吧,可是还是报毒。
 
解决了,金山的技术人员,说是误报,正在清除病毒库中的特征码,过几天就不会有这个问题了。delphibbs缺点就是不能把分数作废,所以只可以不结贴,只因为没满意的答案。
 
哎,你到现在还没弄明白。word = 2 bytesgetmem(p,2);//实际分配了2个字节也就是1个字而已。inc(p,1);//依旧是错误的,还是越界了,实际加的偏移是一个字。
 
病毒大多数就是利用地址越界和缓冲区溢出来进行非法操作的,所以怀疑你是病毒没啥奇怪的。能识别固然好,误报至少也提醒你了,你确实有非法操作么(越界访问)。
 
说穿了,就是国产的杀毒不可靠呀。
 
确实依然还是越界的,但不是你说的那么回事,事实上只要在delphi7中添加一个form,添加一个button (只有一个),button的click形如:procedure TForm1.Button1Click(Sender: TObject);vari:integer;……//其他定义begin i:=1;……//其他代码end; 运行金山毒霸就会报毒。
 
两种可能:一种是金山毒霸误报,就象当年的瑞星。另一种可能是你的电脑上真的有病毒,当你生成一个EXE文件时,病毒就会感染它,而这时,金山毒霸就会提示你有病毒。
 
所以才想找人测试一下,看看在其他的机器上是不是也有这样的问题,哎~~~都不愿意测试!
 
说实在的,从来不装要钱的杀毒软件,又要破费又不好用
 

Similar threads

S
回复
0
查看
1K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
923
SUNSTONE的Delphi笔记
S
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
后退
顶部