ALGO MUITO ÚTIL A TODOS!
UM BREVE ABRAÇO!
UM MÉTODO SIMPLES E FUNCIONAL!
ADICIONE:
*)
(*
COLOQUE ESSA FUNÇÃO (NO IMPLEMETATION)
*)
function GetIPFromHost
(var HostName, IPaddr, WSAErr: string): Boolean;
type
Name = array[0..100] of Char;
PName = ^Name;
var
HEnt: pHostEnt;
HName: PName;
WSAData: TWSAData;
i: Integer;
begin
Result := False;
if WSAStartup($0101, WSAData) <> 0 then begin
WSAErr := 'Winsock is not responding."';
Exit;
end;
IPaddr := '';
New(HName);
if GetHostName(HName^, SizeOf(Name)) = 0 then
begin
HostName := StrPas(HName^);
HEnt := GetHostByName(HName^);
for i := 0 to HEnt^.h_length - 1 do
IPaddr :=
Concat(IPaddr,
IntToStr(Ord(HEnt^.h_addr_list^[i])) + '.');
SetLength(IPaddr, Length(IPaddr) - 1);
Result := True;
end
else begin
case WSAGetLastError of
WSANOTINITIALISED:WSAErr:='WSANotInitialised';
WSAENETDOWN :WSAErr:='WSAENetDown';
WSAEINPROGRESS :WSAErr:='WSAEInProgress';
end;
end;
Dispose(HName);
WSACleanup;
end;
(*
1 - um WEBBROWSER (ABA INTERNET)
2 - Dois EDIT
3 - dois button
*)
/pegar o ip e host da intranet
//No button1 digite:
Quote
procedure TForm1.Button1Click(Sender: TObject);var
Host, IP, Err: string;
begin
Webbrowser1.navigate('http://www.whatismyip.com/automation/n09230945.asp');
if GetIPFromHost(Host, IP, Err) then begin
Edit1.Text := Host;
Edit2.Text := IP;
end
else
MessageDlg(Err, mtError, [mbOk], 0);
end
;
//pegar o ip da INTERNET
//No button2 digite:
Quote
procedure TForm1.Button2Click(Sender: TObject);
Var
S:Variant;
begin
S := WebBrowser1.Document;
EDIT1.TEXT:=(S.Body.innerHTML);
end;
UM BREVE ABRAÇO!
UM MÉTODO SIMPLES E FUNCIONAL!
ADICIONE:
*)
Winsock //pegar o ip da intranet
MSHTML //pegar o conteúdo do browser
MSHTML //pegar o conteúdo do browser
COLOQUE ESSA FUNÇÃO (NO IMPLEMETATION)
*)
function GetIPFromHost
(var HostName, IPaddr, WSAErr: string): Boolean;
type
Name = array[0..100] of Char;
PName = ^Name;
var
HEnt: pHostEnt;
HName: PName;
WSAData: TWSAData;
i: Integer;
begin
Result := False;
if WSAStartup($0101, WSAData) <> 0 then begin
WSAErr := 'Winsock is not responding."';
Exit;
end;
IPaddr := '';
New(HName);
if GetHostName(HName^, SizeOf(Name)) = 0 then
begin
HostName := StrPas(HName^);
HEnt := GetHostByName(HName^);
for i := 0 to HEnt^.h_length - 1 do
IPaddr :=
Concat(IPaddr,
IntToStr(Ord(HEnt^.h_addr_list^[i])) + '.');
SetLength(IPaddr, Length(IPaddr) - 1);
Result := True;
end
else begin
case WSAGetLastError of
WSANOTINITIALISED:WSAErr:='WSANotInitialised';
WSAENETDOWN :WSAErr:='WSAENetDown';
WSAEINPROGRESS :WSAErr:='WSAEInProgress';
end;
end;
Dispose(HName);
WSACleanup;
end;
(*
1 - um WEBBROWSER (ABA INTERNET)
2 - Dois EDIT
3 - dois button
*)
/pegar o ip e host da intranet
//No button1 digite:
Quote
procedure TForm1.Button1Click(Sender: TObject);var
Host, IP, Err: string;
begin
Webbrowser1.navigate('http://www.whatismyip.com/automation/n09230945.asp');
if GetIPFromHost(Host, IP, Err) then begin
Edit1.Text := Host;
Edit2.Text := IP;
end
else
MessageDlg(Err, mtError, [mbOk], 0);
end
;
//pegar o ip da INTERNET
//No button2 digite:
Quote
procedure TForm1.Button2Click(Sender: TObject);
Var
S:Variant;
begin
S := WebBrowser1.Document;
EDIT1.TEXT:=(S.Body.innerHTML);
end;