In diesem Artikel wird erläutert, wie Sie mithilfe von DELPHI-Dateivorgängen Werbung entfernen und Tencent Browser blockieren.
Am Beispiel von OICQ2000b BUILD 0110 können wir nach sorgfältiger Analyse des Funktionsprinzips von OICQ feststellen, dass die Anzeigen im Fenster „Nachricht senden“ von OICQ alle im AD-Ordner im OICQ-Installationsverzeichnis gespeichert sind und alle Bilder sind im GIF-Format. Wenn die Datei im AD-Ordner nicht vorhanden ist, ruft OICQ das GIF-Bild im DAT-Ordner auf, lädt dann das Werbebild herunter und speichert es zum Aufrufen im AD-Ordner. Den Tencent-Browser können Sie durch einen Microsoft-Browser ersetzen (vorausgesetzt, der aktuelle Browser ist der IE-Browser von Microsoft).
Nachdem Sie dies verstanden haben, können Sie die Dateivorgänge von DELPHI verwenden, um Anzeigen zu entfernen und Tencent Browser zu blockieren.
Starten Sie DELPHI, wie in der Abbildung gezeigt, erstellen Sie ein neues Projekt und platzieren Sie die folgenden Steuerelemente auf dem FORM:
Beim Entfernen von Werbebannern besteht die Idee darin, zunächst alle Dateien im GIF-Format im AD-Ordner zu lesen, sie dann durch ein kleines transparentes GIF-Bild zu ersetzen und gleichzeitig die GIF-Dateien im DAT-Ordner zu ersetzen. Das Programm wird wie folgt umgesetzt:
PROcedure TForm1.Del_adClick(Sender: TObject);
var
SearchRec : TsearchRec;
SList: Tstringlist;
Dir, SDir :string;
i, FindResult : integer;
beginnen
Dir := edit1.Text; //OICQ-Installationspfad
SList := Tstringlist.Create; //Wird zum Speichern der Dateiliste verwendet
//Bestimmen Sie, ob der OICQ-Installationspfad korrekt ist
wenn nicht fileexists(edit1.text + 'oicq.exe'), dann
beginnen
application.MessageBox('Der Pfad ist falsch, bitte erneut wählen!',
'Bitte erneut auswählen',0);
Ausfahrt;
Ende;
//Bestimmen Sie, ob das Endzeichen der Pfadzeichenfolge „“ ist. Wenn nicht, fügen Sie „“ hinzu
if Dir[length(dir)] <> '' dann
Dir := Dir + '';
Dir := Dir + 'AD';
//Suchen Sie die erste GIF-Datei im Ordner und speichern Sie den Dateinamen in SearchRec.
//Das zurückgegebene Ergebnis wird in FindResult gespeichert
FindResult := FindFirst(Dir + '*.gif',FaAnyFile,SearchRec);
versuchen
while FindResult = 0 do //Find erfolgreich
beginnen
//Dateinamen zur Liste hinzufügen
sList.Add(lowercase(Dir + SearchRec.name));
//Weiter nach der nächsten Datei suchen, die die Bedingungen erfüllt
FindResult := FindNext(SearchRec);
Ende;