Sediakan aplikasi baru dengan menyimpan nama unit-nya dengan Unit1 dan project-nya dengan Project1, jangan lupa untuk nambahkan Label1 dengan Caption Nama Komputer dan Label2 dengan Caption IP Address, tambahkan pula Edit1 (Sejajarkan dengan Label1) dan Edit2 (Sejajarkan dengan Label2) dibagian uses milik unit1 tambahkan WinSock, seperti terlihat dibawah ini :
unit
Unit1;
interface
uses
WinSock, // Tulisan yang ditambahkan, tulisan ini
wajib untuk diketikan
Windows,
Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs,
StdCtrls;
Setelah
itu implementasikan fungsi dengan nama GetIP dibawah tulisan
implementation
{$R
*.dfm}
Adapun
listingnya adalah sebagai berikut.
function GetIP(var HostName, IPAddr: String):Boolean;
typeName = Array[0..100] of Char;
PName = ^Name;
Var
PHE : PHostEnt;
HName : PName;
WSAData : TWSAData;
I : Integer;
begin
Result:=false;
//Mulai sesi window soket
if WSAStartup($0101, WSAData)<>0 then
exit;
IPAddr:=”;
New(HName);
//Menemukan nama host standar pada komputer local
if GetHostName(HName^, SizeOf(Name)) = 0 then
begin
HostName := String(HName^);
//Memperoleh host dari nama host yang diketahui
PHE := GetHostByName(HName^);
for I := 0 to PHE^.h_length – 1 do
IPAddr := Concat(IPAddr, IntToStr(Ord(PHE^.h_Addr_List^[I])) + ‘.’);
//Mengecek panjang string alamat Ip Address yang diperoleh
SetLength(IpAddr, Length(IPAddr)-1);
result:=true;
end;
Dispose(HName);
WSACleanup;
end;
Setelah
fungsi di definisikan, dibagian FormCreate ketikan
listing dibawah ini, hal ini dilakukan untuk mengunakan fungsi yang baru saja
kita buat, adapun listing-nya sebagai berikut :
procedure
TForm1.FormCreate(Sender: TObject);
var Hostname, IP:String;
begin
if GetIP(HostName, IP) then
begin
Edit1.Text:=UpperCase(HostName);
Edit2.Text:=IP;
end else
begin
exit;
end;
end;
Anda
hanya menuliskan tulisan yang berwarna biru saja.
Setelah
langkah-langkah diatas dilakukan dengan benar jalankan aplikasi Anda akan
mendapatkan hasil seperti dibawah ini :
Catatan
: IP Address akan sesuai dengan setingan jika komputer yang kita
gunakan tersambung dalan jaringan baik itu dengan kabel
ataupun tanpa kabel (Wireleess).
makasih tutorialnya, semoga bisa dipraktekkan. saya memang sedang mencari ref untuk delphi
ReplyDelete