想试一下修改某游戏的金钱,用了下面一句
WriteProcessMemory(h,ptr(faddr),@newmoney,4,lpNumberOfBytesWrite);
结果小红伞(2010年2月刚出的官方简体中文版)居然报毒!
然后我试其他的类似工具却没有事,包括:
1、网上下载的用金山游侠做的修改此游戏的金钱的工具;
2、本论坛Loginczh的C#编写的<植物大战僵尸>作弊器
http://topic.csdn.net/u/20100209/12/D5258785-3A2D-4377-ACC6-50171D082FFD.html
3、其他多个红警修改器难道他们的程序有什么特殊技术?但是那个C#编写的<植物大战僵尸>作弊器从源码看并没有使用其他技术啊!

解决方案 »

  1.   

    WriteProcessMemory本来就是一个危险函数,很多之前的修改器大多是做过免杀处理,或者提交样本后解除了误杀,很多杀软都把WriteProcessMemory当做病毒
      

  2.   

    问题是别人的delphi程序就可以使用WriteProcessMemory,而小红伞一点反应都没有!
    (我刚才去盒子下了几个程序来测试了一下,全部没事,见http://www.2ccc.com/article.asp?articleid=992,注意点右键用迅雷下)
      

  3.   

    很正常。我用的杀毒软件是“卖咖啡”,Delphi7默认工程、Form1上放一个Button1,然后编译,立即报病毒“Generic.dx!gax”现在的杀毒软件有点神经兮兮的
      

  4.   

    那还有一种可能,并不是你的writeprocessmemory的问题,而是其他的哪一段代码出了问题,刚好和某一段特征码吻合,你可以再写个简单的writeprocessmemory,如果还报毒就是这个API的问题,如果不报那就要从别的函数上找原因了
      

  5.   

    我试过了,D7下注释掉writeprocessmemory就没事了。
    所以,偶现在只能采用一个悲情的办法,安了一个D5,用D5建立工程,同样的代码就没事!偶又用D7打开这个D5的工程,也没事。真TMD