用DELPHI给OICQ动手术(一)

类别:Delphi 点击:0 评论:0 推荐:
用DELPHI给OICQ动手术(一) http://www.tongyi.net  

  本文介绍了如何通过DELPHI的文件操作来去掉广告、屏蔽腾讯浏览器。

   以OICQ2000b BUILD 0110为例,仔细分析OICQ的工作原理,可以发现,OICQ的“发送消息”窗口中的广告都保存在OICQ安装目录下的AD文件夹中,均为GIF格式的图片。当AD文件夹中的文件不存在时,OICQ调用DAT文件夹中的GIF图片,然后下载广告图片并保存在AD文件夹中,以备调用。至于腾讯浏览器,可以用微软浏览器替换回来(假定当前浏览器为微软的IE浏览器)。

   明白了这些以后,就可以自己动手利用DELPHI的文件操作,来去掉广告、屏蔽腾讯浏览器了。

  

   如图,启动DELPHI,新建工程,在FORM上放置如下控件:

   关于去掉广告条,设想是先读取AD文件夹下所有GIF格式的文件,然后用一透明的小GIF图片替换,同时替换掉DAT文件夹下的GIF文件。程序实现如下:

   procedure TForm1.Del_adClick(Sender: TObject);

   var

   SearchRec : TsearchRec;

   SList: Tstringlist;

   Dir, SDir :string;

   i, FindResult : integer;

   begin

   Dir := edit1.Text; //OICQ的安装路径

   SList := Tstringlist.Create; //用于保存文件列表

   //判断OICQ安装路径是否正确

   if not fileexists(edit1.text + 'oicq.exe') then

   begin

   application.MessageBox('路径不正确,请重新选择!',

   '请重新选择',0);

   exit;

   end;

   //判断路径字符串的结束符是否为“”,不是就加上“”

   if Dir[length(dir)] <> '' then

   Dir := Dir + '';

   Dir := Dir + 'AD';

   //查找该文件夹下第一个GIF文件,文件名保存在SearchRec,

   //返回结果保存在FindResult中

   FindResult := FindFirst(Dir + '*.gif',FaAnyFile,SearchRec);

   try

   while FindResult = 0 do //查找成功

   begin

   //在列表中加入文件名

   sList.Add(lowercase(Dir + SearchRec.name));

   //继续查找下一个符合条件的文件

   FindResult := FindNext(SearchRec);

   end;

本文地址:http://com.8s8s.com/it/it5950.htm