Sunday - July 20, 2008

Home | Site Map | Channels | Profile | Press Room | Services | Contact 

currently 6 user(s) online

search 

   Latest News

»

sony-ak.com Luncurkan Kamus Teknologi Informasi (May 27, 2006)

»

sony-ak.com Luncurkan IT Event Calendar (May 20, 2006)

»

Web Chat Berbasis AJAX dari sony-ak.com (May 09, 2006)

»

sony-ak.com Advertising Program (May 01, 2006)

»

Sony AK di Tabloid PCplus (April 18, 2006)

news archives » 


   Random Article

»

Tips Visual Basic: Open dan Close CD-ROM Drive (3018)

»

Sony AK Knowledge Center Backstage (2348)

»

Tips Perawatan Printer Dengan Benar (7526)

»

Tips JavaScript: Membuat Fungsi Open Window Pop-Up agar Tampil di Layar pada Posisi Center (3841)

»

Contoh Berkirim E-mail dengan Menggunakan Telnet (4350)

   Newsletter

Join our newsletter, you will get alert about content updates

powered by Yahoo! Groups















Nedstat Basic - Free web site statistics

 
 
Menampilkan Alamat IP (IP Address) dan HostName dengan Menggunakan Delphi

Author: Ratih Kusumawati
Published: November 29, 2004
Visits: 4295 - Category: Borland Delphi
 
     
 

Pada artikel yang lalu telah ditulis tentang menampilkan informasi computer name dan user name, kali ini penulis akan membahas tentang bagaimana menampilkan informasi tentang HostName dan IP Address pada Delphi. Jika kita menggunakan network maka PC akan memiliki alamat yang unik berupa alamat IP (Internet Protocol) dimana dengan alamat ini PC dapat berkomunikasi dengan protokol TPC/IP.

Untuk memperoleh kedua informasi ini diperlukan pemrograman socket Windows. Untuk itu tambahkan 'winsock' pada bagian 'uses' pada program Delphi Anda. Pemrograman socket ini selalu dibuka dengan function:

WSAStartup(wVersionRequired:Word;var WSData : WSData):Integer;

Dan ditutup dengan function:

WSACleanup:Integer;

Untuk menampilkan HostName maka diperlukan function:

GetHostName(name:PChar;len:Integer):Integer;

Dengan mengetahui HostName maka dapat dicari alamat IP dengan menggunakan function:

GetHostByName(name:PChar):PHostEnt;

Nilai balik fungsi ini adalah pointer yang menunjukkan ke suatu struktur HostEnt (PHostEnt), yaitu sebuah struktur yang dialokasikan socket Windows yang digunakan function tersebut untuk menyimpan informasi mengenai HostName dan alamat IP.

Contoh Program:

Procedure TForm1.LocalIp;
type
  TaPInAddr = array [0..10] of PInAddr;
  PaPInAddr = ^TaPInAddr;

var
  phe: PHostEnt;
  pptr: PaPInAddr;
  HostName: array [0..63] of char; //hostname
  i: Integer;
  GInitData: TWSADATA;
  IpAdd:String; //IP address

begin
  // Socket Windows dimulai
  WSAStartup($101, GInitData);
  IpAdd := '';

  // Mengambil Hostname
  GetHostName(@HostName, SizeOf(HostName));

  // Mengambil IPAddress dari HostName
  phe :=GetHostByName(@HostName);
  if phe = nil then Exit;
  pptr := PaPInAddr(Phe^.h_addr_list);
  i := 0;
  while pptr^[i] <> nil do
  begin
    IpAdd:=StrPas(inet_ntoa(pptr^[i]^));
    Inc(i);
  end;
  WSACleanup;
  // Socket Windows ditutup

  label1.Caption :='Host Name : ' + HostName;
  label2.caption :='IP Address : ' + IpAdd ;
end;

Kemudian dengan melalui event Button1.Click maka procedure diatas dijalankan.

procedure TForm1.Button1Click(Sender: TObject);
begin
  LocalIp;
end;

Jangan lupa untuk mengetikkan nama procedure (Procedure LocalIp;)pada bagian 'Private'. Jika TButton diklik maka akan tampil form seperti dibawah ini:

Demikian artikel tentang menampilkan IP Address dan HostName dengan menggunakan Delphi. Semoga bermanfaat. Saran dan kritik dapat anda kirimkan ke ratih@sony-ak.com. Untuk membaca tulisan menarik lainnya silakan menuju ke www.sony-ak.com.

Silakan download source code lengkap dari project di atas

Terimakasih.

Referensi: www.scalabium.com




 Recommended articles
 

»

Apa itu CMS (Content Management System)? (6125)

»

#develop, Alat Alternatif Pengembangan Aplikasi Berbasis .NET Framework (2962)

»

Pengantar Google PageRank (1358)

»

Tips Mengetahui Kapasitas Hardisk dan Sisa Ruang pada Hardisk dengan Borland Delphi (4906)

»

Knowledge Management dan Kepuasan Pelanggan (2480)

 Send your comments or suggestions
Full Name :
E-mail :
Comments :
 
 

  Privacy | Site Map | Advertise

  Copyright © 2003 - 2006 Sony AK Knowledge Center - all rights reserved

  info@sony-ak.com