用DELPHI给OICQ动手术(一)

Delphi教程 2025-07-30

本文介绍了如何通过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;