O programa Delphi descrito neste exemplo é usado para detectar se a URL é 404, ou seja, para detectar se a URL existe ou se pode ser aberta. Diferentes métodos de verificação retornarão resultados diferentes.
O código principal do programa é o seguinte:
endereço da unidade; faz interface com Windows, Mensagens, SysUtils, Classes, Gráficos, Controles, Formulários, Diálogos, Psock, NMHttp, StdCtrls, ComCtrls; tipo TForm1 = class(TForm) Label1: TLabel: TEdit; ; StatusBar1: procedimento TStatusBar; Button1Click (Remetente: TObject); procedimento NMHTTP1Success (Cmd: CmdType); procedimento NMHTTP1Failure (Cmd: procedimento CmdType); NMHTTP1Connect(Remetente: TObject); procedimento NMHTTP1ConnectionFailed(Remetente: TObject); procedimento FormActivate(Remetente: TObject); procedimento FormClose(Remetente: TObject; var Ação: TCloseAction); TObject; var Chave: Word Shift: TShiftState); } public { Declarações públicas } end;var Form1: TForm1;implementação{$R *.DFM}procedimento TForm1.Button1Click(Sender: TObject);var url:string;begin url:=Edit1.Text; Verificando';NMHTTP1.Head(url);fim;procedimento TForm1.NMHTTP1Success(Cmd: CmdType);início do caso cmd de CmdHEAD: StatusBar1.SimpleText:='A URL está correta' fim;fim;procedimento TForm1.NMHTTP1Failure(Cmd: CmdType);início do caso cmd de CmdHEAD: StatusBar1.SimpleText: =' A URL está incorreta, essa página não existe' end;end;procedure TForm1.NMHTTP1HostResolved(Sender: TComponent);begin StatusBar1.SimpleText:='O nome do host pode ser resolvido corretamente';end;procedure TForm1.NMHTTP1InvalidHost(var Handled: Boolean);begin StatusBar1.SimpleText:='O nome do host não pode ser resolvido';fim; procedimento TForm1.NMHTTP1AuthenticationNeeded(Remetente: TObject);begin StatusBar1.SimpleText:='Autenticação necessária';end;procedure TForm1.NMHTTP1Connect(Sender: TObject);begin StatusBar1.SimpleText:='Conectar ao host';end;procedure TForm1.NMHTTP1ConnectionFailed(Sender: TObject) ; start StatusBar1.SimpleText:='Falha ao conectar ao host';end;procedure TForm1.FormActivate(Sender: TObject);begin Edit1.Text:='http://www.';end;procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);begin NMHTTP1.Destroy;end;procedure TForm1 .NMHTTP1Redirect(var Handled: Boolean);início StatusBar1.SimpleText:='Redirecionar para outras páginas';fim;procedimento TForm1.Edit1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);begin if Key=VK_RETURN então comece StatusBar1.simpletext:='Verificando' NMHTTP1 ; .Head(Edit1.Text); fim;fim;fim.