---
title: "Aktiv uppkoppling"
type: "forum-thread"
url: "https://www.webforum.nu/amne/programmering/83544-aktiv-uppkoppling"
topic: "Programmering"
topic_url: "https://www.webforum.nu/amne/programmering"
author: "AG"
published: "2003-08-05T22:38:51.000Z"
updated: "2003-08-06T21:11:59.000Z"
replies: 4
views: 266
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/programmering/83544-aktiv-uppkoppling"
---

# Aktiv uppkoppling

## #1 — AG, 2003-08-05T22:38Z

Testade göljande kod i ett program, för att se ifall jag har en aktiv uppkoppling, den genererar Not Connected även fast jag är ansluten, har telia adsl.
Nedan följer koden:

```
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, WinInet, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

function IsConnectedToInternet: Boolean; 
var
dwConnectionTypes: DWORD; 
begin
dwConnectionTypes :=
INTERNET_CONNECTION_MODEM +
INTERNET_CONNECTION_LAN +
INTERNET_CONNECTION_PROXY;
Result := InternetGetConnectedState(@dwConnectionTypes, 0);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
if IsConnectedToInternet then 
ShowMessage('Connected.')
else
ShowMessage('Not Connected.')

end;

end.
```

Andreas

Permalänk: https://www.webforum.nu/p/83544

## #2 — Viktor, 2003-08-05T22:46Z

Jag har bara kollat lite på VB koden här, <http://www.mvps.org/vbnet/index.html?code/network/internetgetconnectedstate.htm> och där ser det ut som att du ska skicka med en tom DWORD som sedan i funktionen sätts och som du sen får kolla vad den är satt till, typ

```
function IsConnectedToInternet: Boolean; 
var
dwConnectionTypes: DWORD; 
begin
InternetGetConnectedState(@dwConnectionTypes, 0);

if(dwConnectionTypes AND INTERNET_CONNECTION_MODEM)
  Result:=true;
else if(dwConnectionTypes AND INTERNET_CONNECTION_LAN)
  Result:=true;
else if(dwConnectionTypes AND INTERNET_CONNECTION_PROXY)
  Result:=true;
else
  Result:=false;
end;
```

Jag har varken testat VB koden eller jobbat i Delphi men detta är min tolkning, hoppas det är rätt :)

/Viktor

Permalänk: https://www.webforum.nu/p/1130206

## #3 — AG, 2003-08-06T20:39Z

Får det ej att fungera.
Skumt.

Andreas

Permalänk: https://www.webforum.nu/p/1130820

## #4 — Alpha II, 2003-08-06T20:52Z

När jag kör koden säger den att jag är connected. (Telia ADSL)

/red är du säker på att det ska vara +? Bör det inte var or (elelr om det kanske ska vara and..)?

Permalänk: https://www.webforum.nu/p/1130827

## #5 — agneta_rung, 2003-08-06T21:11Z

Om du bara vill veta om du är uppkopplad eller inte behöver du bara kolla returvärdet på InternetConnectedState. Så här:

```
function IsConnectedToInternet: Boolean; 
var
  dwConnectionTypes: dword;
begin
  Result :=  InternetGetConnectedState(@dwConnectionTypes, 0)
end;
```

Vill du däremot veta på vilket sätt du är uppkopplad måste du titta på flaggorna, typ så här:

```
function TypAvAnslutning: string;
var
  dwConnectionTypes: dword;
begin
  if InternetGetConnectedState(@dwConnectionTypes, 0) then begin
    if (dwConnectionTypes and INTERNET_CONNECTION_MODEM) = INTERNET_CONNECTION_MODEM then
      Result := 'Modem'
    else if (dwConnectionTypes and INTERNET_CONNECTION_LAN) = INTERNET_CONNECTION_LAN then
      Result := 'LAN'
    else if (dwConnectionTypes and INTERNET_CONNECTION_PROXY) = INTERNET_CONNECTION_PROXY then
      Result := 'Proxy'
    else
      Result := 'Annan typ av anslutning'
    end else
      Result := 'Ingen anslutning'
end;
```

Funkar för mig i alla fall...

Permalänk: https://www.webforum.nu/p/1130837

---

Tråden på webben: https://www.webforum.nu/amne/programmering/83544-aktiv-uppkoppling
