В этой статье рассказывается, как удалить рекламу и заблокировать браузер Tencent с помощью файловых операций DELPHI.
Взяв в качестве примера OICQ2000b BUILD 0110, после тщательного анализа принципа работы OICQ мы можем обнаружить, что все рекламные объявления в окне «Отправить сообщение» OICQ сохраняются в папке AD в каталоге установки OICQ и все они представляют собой изображения. в формате GIF. Когда файл в папке AD не существует, OICQ вызывает изображение GIF в папке DAT, затем загружает рекламное изображение и сохраняет его в папке AD для вызова. Что касается браузера Tencent, вы можете заменить его браузером Microsoft (при условии, что текущий браузер — это браузер IE от Microsoft).
Поняв это, вы можете использовать файловые операции DELPHI для удаления рекламы и блокировки браузера Tencent.
Как показано на рисунке, запустите DELPHI, создайте новый проект и поместите в ФОРМУ следующие элементы управления:
Что касается удаления рекламных баннеров, идея состоит в том, чтобы сначала прочитать все файлы формата GIF в папке AD, затем заменить их небольшим прозрачным изображением GIF и одновременно заменить файлы GIF в папке DAT. Программа реализуется следующим образом:
PROcedure TForm1.Del_adClick(Отправитель: TObject);
вар
ПоискРек: TsearchRec;
SList: список строк;
Каталог, SDir :string;
я, FindResult: целое число;
начинать
Dir := edit1.Text //Путь установки OICQ;
SList := Tstringlist.Create //Используется для сохранения списка файлов.
//Определяем, правильный ли путь установки OICQ
если файл не существует (edit1.text + 'oicq.exe'), то
начинать
application.MessageBox('Путь неверен, выберите еще раз!',
'Пожалуйста, выберите еще раз',0);
Выход;
конец;
//Определяем, является ли конечный символ строки пути "", если нет, добавляем ""
если Dir[длина(каталог)] <> '' тогда
Директория := Директория + '';
Реж. := Реж. + 'AD';
//Находим первый GIF-файл в папке и сохраняем имя файла в SearchRec.
//Возвращенный результат сохраняется в FindResult
FindResult := FindFirst(Dir + '*.gif',FaAnyFile,SearchRec);
пытаться
while FindResult = 0 do //Найти успешно
начинать
//Добавляем имена файлов в список
sList.Add(нижний регистр(Dir + SearchRec.name));
//Продолжаем поиск следующего файла, удовлетворяющего условиям
FindResult := FindNext(SearchRec);
конец;