Ayo Pasang Iklan


Minggu, 13 Agustus 2017

Delphi:Mengetahui Status Internet.

Pada artikel ini, Anda akan mendapatkan tutor atau tip – trik untuk mengetahui bagaimana cara untuk mendeteksi koneksi internet dengan memakai @ Lazarus atau @ Delphi.

Untuk mengetahui koneksi internet di @Windows sebenarnya sudah di sediakan library wininet.dll oleh pihak @ Microsoft. Sedangkan cara untuk melakukan pemanggilan function tersebut ada 2 cara, yaitu :

Cara 1. Pemanggilan Langsung untuk yang sudah mempunyai headernya.



uses
WinInet;

{…}
implementation

procedure TForm1.Button1Click(Sender: TObject);
begin
If IsConnectedToInternet (INTERNET_CONNECTION_LAN+INTERNET_CONNECTION_MODEM+INTERNET_CONNECTION_PROXY,0) Then
ShowMessage (‘Ada Koneksi Internet.)
Else ShowMessage (‘Tidak Ada Koneksi Internet.);
End;
End.

Cara 2. Dynamic linking (Pemanggilan langsung dengan cara meload file dll).

uses
Windows, SysUtils, Classes, Controls, Forms, StdCtrls, ExtCtrls;

{…}

implementation

Function IsConnectedToInternet(lpdwFlags: LPDWORD): Boolean;
const
FWininetDLL = ‘wininet.dll’;
var
hWininetDLL: THandle;
dwReserved: DWORD;
fc_InternetGetConnectedState: function(lpdwFlags: LPDWORD; dwReserved: DWORD): BOOL; stdcall;
begin
Result := False;
dwReserved := 0;
hWininetDLL := LoadLibrary(FWininetDLL);
if hWininetDLL > 0 then
begin
@fc_InternetGetConnectedState := GetProcAddress(hWininetDLL,’InternetGetConnectedState’);
if Assigned(fc_InternetGetConnectedState) then
begin
Result := fc_InternetGetConnectedState(lpdwFlags, dwReserved);
end;
FreeLibrary(hWininetDLL);
end else
raise Exception.Create(‘Tidak dapat menemukan function InternetGetConnectedState di file library ‘ + FWininetDLL);

end;

procedure TForm1.Button1Click(Sender: TObject); //Cara Pemakaian Function diatas.
const
INTERNET_CONNECTION_MODEM = $1; {Penulisan hexadecimal sesuai sdk @ Windows}
INTERNET_CONNECTION_LAN = $2;
INTERNET_CONNECTION_PROXY = $4;
var
dwConnectionTypes: DWORD;
begin
dwConnectionTypes :=
INTERNET_CONNECTION_MODEM +
INTERNET_CONNECTION_LAN +
INTERNET_CONNECTION_PROXY;
if IsConnectedToInternet(@dwConnectionTypes) then
ShowMessage(‘Terhubung.’)
else
ShowMessage(‘Tidak terhubung.’)
end;

End.

***** Selamat Mencoba *****

Tidak ada komentar:

Posting Komentar