Einzelnen Beitrag anzeigen

Lefko

Registriert seit: 31. Jul 2003
359 Beiträge
 
Delphi 6 Enterprise
 
#7

Re: Das Programm soll wissen ob man Online ist

  Alt 6. Aug 2003, 18:32
Hihi, ich hab auch grad einen Internetkosten-Zaehler gemacht

Hier, so geht es ganz einfach:

Code:
uses WinInet;

...

procedure TForm1.Button1Click(Sender: TObject);
var flags: Dword;
begin
if InternetGetConnectedState(@flags, 0) then {mache irgendwas}
end;
Wenn du auch noch rausfinden willst, was für eine Verbindung aufgebaut wurde nimm folgendes:

Code:
uses WinInet;

...

const
  MODEM = 1;
  LAN = 2;
  PROXY = 4;
  BUSY = 8;

...

public declaration //von Form1
  function GetConnectionKind(var strKind: string): Boolean;
  end;

...

implementation

function Tform1.GetConnectionKind(var strKind: string): Boolean;
var flags: DWORD;
begin
  strKind := 'Keine Verbindung';
  Result := InternetGetConnectedState(@flags, 0);
  if Result then
  begin
    if (flags and MODEM) = MODEM then strKind := 'Modem-Verbindung';
    if (flags and LAN) = LAN then strKind := 'LAN-Verbindung';
    if (flags and PROXY) = PROXY then strKind := 'Proxy-Verbindung';
    if (flags and BUSY) = BUSY then strKind := 'Modem Busy';
  end;
end;


procedure TForm1.Button1Click(Sender: TObject);
var strKind : string;
begin
if GetConnectionKind(strKind) then showmessage(StrKind);
end;
damit zeigst du eine Message mit dem Verbindungstyp.

Nun, es gibt auch noch andere Möglichkeiten...
du kannst dir die TRasMonitor-Komponente (im Anhang) herunterladen und installieren, dann kannst du mit dem Timer schauen, ob "RasMonitor1.online = true" ist.


MfG Lefko

P.S. Ich hab mein Programm mal angehängt, vielleicht kannst du dir ein wenig Inspiration holen
Angehängte Dateien
Dateityp: exe kostenz_hler.exe (86,0 KB, 10x aufgerufen)
Dateityp: exe rasmonitor.exe (241,0 KB, 11x aufgerufen)
Johannes
-=[Nennst du meinen Namen, bin ich schon nicht mehr da]=-
  Mit Zitat antworten Zitat