Kali ini saya fariandi akan berbagi coding / source code untuk menampilan ip client dan Nama komputer dengan delphi, biasa yang sering di pakai di Tunnel SSH / VPN atau tools inject buatan sendiri supaya tampilan dari aplikasi yang buat lebih kelihatan prefesional. langsung saja :
pertama-tama anda harus punya aplikasi Delphi, di sini saya pake Delphi 7.
1. Langka Pertama
langsung saja buka aplikasi delphi nya lalu buat tampilan program sperti di bawah ini. komponent yang di pakai :
- 4 label
- 1 Timer
- 1 panel
2. Langkah Kedua
jangan lupa Komponent Timer nya
3. Langkah ketiga
Tambahkan uses di bawah ini
WINSOCK
4. Langkah keempat
Tambahkan Function ini di bawah Implementation
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;
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;
5. Langkah kelima
Doble klik pada Timer lalu tambhkan koding ini
var Host, IP, Err: string;
begin
if GetIPFromHost(Host, IP, Err) then begin
Label3.Caption :=Host; // nama komputer
Label4.Caption :=IP; // ip cliant
end else
MessageDlg(Err, mtError, [mbOk], 0);
begin
if GetIPFromHost(Host, IP, Err) then begin
Label3.Caption :=Host; // nama komputer
Label4.Caption :=IP; // ip cliant
end else
MessageDlg(Err, mtError, [mbOk], 0);
Selesai.
jika di Running akan seperti ini hasil nya
jika ingin download Coding nya di bawah ini :
CARA DOWNLOAD
kalau ada yang mau bertanya silakan saja langsung komentar di bawah.
Berkomentar dengan baik dan sopan, Komentar SPAM akan di hapus.
Emoticon