Este artigo apresenta como remover anúncios e bloquear o navegador Tencent por meio de operações de arquivo DELPHI.
Tomando o OICQ2000b BUILD 0110 como exemplo, após analisar cuidadosamente o princípio de funcionamento do OICQ, podemos descobrir que os anúncios na janela "Enviar mensagem" do OICQ estão todos salvos na pasta AD no diretório de instalação do OICQ, e são todos imagens em formato GIF. Quando o arquivo na pasta AD não existe, o OICQ chama a imagem GIF na pasta DAT, depois baixa a imagem publicitária e a salva na pasta AD para chamada. Quanto ao navegador Tencent, você pode substituí-lo pelo navegador da Microsoft (assumindo que o navegador atual seja o navegador IE da Microsoft).
Depois de entender isso, você pode usar as operações de arquivo do DELPHI para remover anúncios e bloquear o navegador Tencent.
Conforme mostrado na figura, inicie o DELPHI, crie um novo projeto e coloque os seguintes controles no FORM:
Em relação à remoção de banners publicitários, a ideia é primeiro ler todos os arquivos GIF da pasta AD, depois substituí-los por uma pequena imagem GIF transparente e, ao mesmo tempo, substituir os arquivos GIF da pasta DAT. O programa é implementado da seguinte forma:
Procedimento TForm1.Del_adClick(Remetente: TObject);
var
SearchRec : TsearchRec;
SList: Tstringlist;
Dir,SDir:string;
i, FindResult : inteiro;
começar
Dir := edit1.Text; //caminho de instalação do OICQ
SList := Tstringlist.Create; //Usado para salvar a lista de arquivos
//Determina se o caminho de instalação do OICQ está correto
se não existir arquivo (edit1.text + 'oicq.exe') então
começar
application.MessageBox('O caminho está incorreto, escolha novamente!',
'Por favor selecione novamente',0);
saída;
fim;
//Determina se o caractere final da string do caminho é "", caso contrário, adicione ""
se Dir[comprimento(dir)] <> ''então
Dir := Dir + '';
Dir := Dir + 'AD';
//Encontre o primeiro arquivo GIF na pasta e salve o nome do arquivo em SearchRec.
//O resultado retornado é salvo em FindResult
FindResult := FindFirst(Dir + '*.gif',FaAnyFile,SearchRec);
tentar
while FindResult = 0 do //Localização com sucesso
começar
//Adiciona nomes de arquivos à lista
sList.Add(minúsculas(Dir + SearchRec.name));
//Continue para encontrar o próximo arquivo que atenda às condições
FindResult := FindNext(SearchRec);
fim;