Arsip: Ask: How To Get Local IP ?
more 19 years ago
cyber_hecker
hwaaa... mo minta tolong neh ?
gimana sih caranya untuk mengetahui ip local komputer kita ? gue udah nyoba banyak cara mulai dari :
function TForm1.LocalIP: string;
type
TaPInAddr = array [0..10] of PInAddr;
PaPInAddr = ^TaPInAddr;
var
phe: PHostEnt;
pptr: PaPInAddr;
Buffer: array [0..63] of char;
i: Integer;
GInitData: TWSADATA;
begin
WSAStartup($101, GInitData);
Result := '';
GetHostName(Buffer, SizeOf(Buffer));
phe :=GetHostByName(buffer);
if phe = nil then Exit;
pptr := PaPInAddr(Phe^.h_addr_list);
i := 0;
while pptr^[i] <> nil do
begin
result:=StrPas(inet_ntoa(pptr^[i]^));
Inc(i);
end;
WSACleanup;
end;
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;
function LWToIP(LW: LongWord): string;
begin
Result := IntToStr(LW and $FF);
LW := LW shr 8;
Result := Result + '.' + IntToStr(LW and $FF);
LW := LW shr 8;
Result := Result + '.' + IntToStr(LW and $FF);
LW := LW shr 8;
Result := Result + '.' + IntToStr(LW and $FF);
end;
function TForm1.GetLocalIP: string;
var
name, A: PChar;
h: hostent;
I: Integer;
begin
GetMem(name,255);
try
I := GetHostName(name,255);
if I <> 0 then
I := wsagetlastError;
if I <> 0 then
StatusBar1.Panels[0].Text := 'Error: ' + IntToStr(I)
else
begin
h := GetHostByName(name)^;
if h.h_length <> 4 then Result := ''
else
begin
A := h.h_addr_list^;
I := 0;
while (A^ <>#0)and (CompareStr(A,h.h_name) <> 0) do
begin
inc(I,4);
Inc(A,4)
end;
if I < 4 then
begin
Result := h.h_name
end
else
begin
while I >= 4 do
begin
Dec(A,4);
Dec(I,4);
Result := Result + LWToIP(PLongWord(A)^) + ', ';
end;
Delete(Result,Length(Result)-1,2);
end
end
end
finally
FreeMem(name)
end
end;
semuanya gak ada yang berhasil.. dan error yang muncul juga sama yaitu :
gimana neh... ? salahnya dimana yach :( hwaaaaa
more 19 years ago
LuriDarmawan
fungsi diatas benar kok,
diriku pake skrip yang kedua yang diatas.
kemungkinan error karena koding yg lain, bisa jadi cara pemanggilan fungsinya.
ingat, fungsi tertulis
function GetIPFromHost(var HostName, IPaddr, WSAErr: string)
bukan
function GetIPFromHost( HostName, IPaddr, WSAErr: string)
more 19 years ago
ZeAL
Daripada pusing2, pake aja komponen NMMSGServ di tab FastNet (Gue pake Delphi 6).
Masukin deh tu komponen, trus panggil aja langsung..
showmessage( NMMSGServ1.LocalIP );Gampang thoo... Hasil yang didapet sama tapi gak usah pusing2 bikin kode.. :D
more 19 years ago
LuriDarmawan
ini source yang tak ubah dikit jadi komponen sudah tak upload-kan.
silahkan di download.
skrinsot-nya:
download di :
http://pascal-id.org/dpr/Downloads-index-req-viewdownloaddetails-lid-79.pas
more 19 years ago
cyber_hecker
weh tenkyu semua. akhirnya gue milih cara yang di saran in ama zeal :P wah ternyata ada yang lebih gampang ya :P. bener..dari pada repod.. lebih baik ambil apa yang sudah di sediakan.
wakakak :D
more 19 years ago
LuriDarmawan
memang gampang sekali sih..
tp kebetulan saja diriku ga suka sebagian komponen bawaan delphi, termasuk komponen FastNET
tp dipersilahkan sih yah..
itu jadi soal kebiasaan kebiasaan
more 19 years ago
cyber_hecker
oot : buat kenal lebih dekat. wakakak :D
kenapa seh om kok gak suka pake komponen bawaan delphi ???, padalah klo saya lebih suka komponen bawaan delphi. mau tau kenapa ??
karena pengalaman diriku ini yang gak punya komputer ini. kan kadang-kadang ada temen-temen yang minta bantu bikin program. ya terpaksa deh pindah dari kost yang satu ke kost yang lain. dan berarti ganti komputer juga. sedangkan komponen-komponen 3rd party yang ku gunakan tidak pernah ku manage dengan baik. biasanya seh sekali pake master komponen ku langsung ilang. wakakak :D
jadi kalo mo bikin program dengan dasar program yang lalu santai aja. kan komponen standard. wakakaka :D
more 17 years ago
paNda
waduh...aku baru belajar delphi nech..pengen tw dunk cara dari awal ngebuat scanner IP LAN...plus cara ngeblock IP yg lagi liat folder Share kita??thx berat ya.... :?: :P
more 17 years ago
adit4it
@paNda
coba aja didownload yg dikasi Mas LuriDarmawan.....
liat aja script nya.. mungkin bisa belajar dari situ....
hehehehehe :D
more 17 years ago
simba
Bukan component, tapi kumpulan fungsi2 membaca identitas komputer...
http://delphindo.wordpress.com/2006/06/13/membaca-identitas-komputer/
more ...
- Pages:
- 1
- 2
reply |
Report Obsolete
Last Articles
Last Topic
- PascalTalk #6: (Podcast) Kuliah IT di luar negeri, susah gak sih?
by LuriDarmawan in Tutorial & Community Project more 3 years ago - PascalTalk #5: UX: Research, Design and Engineer
by LuriDarmawan in Tutorial & Community Project more 4 years ago - PascalTalk #4: Obrolan Ringan Seputar IT
by LuriDarmawan in Tutorial & Community Project more 4 years ago - PascalTalk #2: Membuat Sendiri SMART HOME
by LuriDarmawan in Tutorial & Community Project more 4 years ago - PascalTalk #3: RADically Fast and Easy Mobile Apps Development with Delphi
by LuriDarmawan in Tutorial & Community Project more 4 years ago - PascalTalk #1: Pemanfaatan Artificial Intelligence di Masa Covid-19
by LuriDarmawan in Tutorial & Community Project more 4 years ago - Tempat Latihan Posting
by LuriDarmawan in OOT more 4 years ago - Archive
- Looping lagi...
by idhiel in Hal umum tentang Pascal Indonesia more 12 years ago - [ask] koneksi ke ODBC user Dsn saat runtime dengan ado
by halimanh in FireBird more 12 years ago - Validasi menggunakan data tanggal
by mas_kofa in Hal umum tentang Pascal Indonesia more 12 years ago
Random Topic
- acces violation?
by benyy in Tip n Trik Pemrograman more 17 years ago - SDAC vs ADO
by EkoIndri in MsSQL more 18 years ago - Masalah Eksplorasi DTS (SQL Server) di delphi programming???
by RedsGrands in MsSQL more 17 years ago - Bikin Thread Dulu Ah...
by tendafahmi in OOT more 14 years ago - convert c++ ke delphi
by sahrul in Hal umum tentang Pascal Indonesia more 18 years ago - tolongi donk !!!
by sapta in Tip n Trik Pemrograman more 17 years ago - mo tanya
by and_re in Hal umum tentang Pascal Indonesia more 15 years ago - MAPI - Long filename attachment file
by cikumiyu in Tip n Trik Pemrograman more 16 years ago - Antrian kayak Bank...?
by armanefendi in Tip n Trik Pemrograman more 17 years ago - Buat installer Mysql secara otomatis
by hendra_sir84 in Hal umum tentang Pascal Indonesia more 16 years ago