AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Bits prüfen oder wie bin ich online.
Thema durchsuchen
Ansicht
Themen-Optionen

Bits prüfen oder wie bin ich online.

Ein Thema von Luckie · begonnen am 28. Okt 2002 · letzter Beitrag vom 29. Okt 2002
Antwort Antwort
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#1

Bits prüfen oder wie bin ich online.

  Alt 28. Okt 2002, 18:51
Folgender Code:
Code:
[b]procedure[/b] TForm1.Button1Click(Sender: TObject);
[b]var[/b]
  dwResult : cardinal;
[b]begin[/b]
  dwResult := 0;
  [b]if[/b] Internetgetconnectedstate(@dwResult,0) [b]then[/b]
    showmessage('ONLINE')
  [b]else[/b]
    ShowMessage('OFFLINE');

  [b]if[/b] (dwResult [b]and[/b] INTERNET_CONNECTION_MODEM) = 0 [b]then[/b]
    ShowMessage('Modem');
[b]end[/b];
Link zu Internetgetconnectedstate.

So ich will jetzt die Flags prüfen und so nähere Infos über die Verbindung bekommen. Mache ich das so richtig oder wie geht es richtig. Und wie bekommt mann dann alles am besten in eine String durch Komma getrennt, wenn es mehrere Werte sind die zu treffen können?
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Salomon
Salomon

Registriert seit: 9. Jun 2002
453 Beiträge
 
#2
  Alt 28. Okt 2002, 19:13
Warum fragst du die Flags nicht einfach mit if ab? So würde ich das z.B machen, oder ist das zu simpel?
Code:
  if dwResult = INTERNET_CONNECTION_LAN then
    ShowMessage('Lan Connection');
Allerdings erhalte ich bei meiner DSL Verbindung ein Rückgabewert von "81". Das kann irgendwie doch nicht sein oder?

Mfg Salomon
01001000 01100001 01101100 01101100 01101111
01010111 01100101 01101100 01110100 00100001

http://www.it-adviser.net
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#3
  Alt 28. Okt 2002, 19:23
81 Bekomme ich auch mit DSL. Aber so einfach mit = abfragen geht nicht,
Zitat:
This parameter can be one or more of the following values.
Alles klar? Das ist eien bitweise or-Verknüpfung meherer Werte. Deswegen meine Frage.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#4
  Alt 28. Okt 2002, 19:45
Moin Luckie,

Code:
[b]procedure[/b] TForm1.Button1Click(Sender: TObject);
[b]var[/b]
  dwResult : cardinal;
[b]begin[/b]
  dwResult := 0;
  [b]if[/b] Internetgetconnectedstate(@dwResult,0) [b]then[/b]
    showmessage('ONLINE')
  [b]else[/b]
    ShowMessage('OFFLINE');

  [b]if[/b] (dwResult [b]and[/b] INTERNET_CONNECTION_MODEM) = [color=red]INTERNET_CONNECTION_MODEM[/color] [b]then[/b]
    ShowMessage('Modem');

  [color=#000080]// oder[/color]

  [b]if[/b] (dwResult [b]and[/b] INTERNET_CONNECTION_MODEM) [color=red]<> 0[/color] [b]then[/b]
    ShowMessage('Modem');
[b]end[/b];
Funktioniert nach genau dem gleichen Prinzip wie das herausfiltern eines Directories bei Verwendung von TSearchRec.Attrib.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von Salomon
Salomon

Registriert seit: 9. Jun 2002
453 Beiträge
 
#5
  Alt 28. Okt 2002, 20:40
@ Luckie: Uups, da muss ich wohl was überlesen haben..

Dumm ist nur das der User evtl. eine schnelle DSL Connection hat, aber die Function einem weiß machen will, dass der User nur über eine langsame Modemverbindung verfügt.
01001000 01100001 01101100 01101100 01101111
01010111 01100101 01101100 01110100 00100001

http://www.it-adviser.net
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#6
  Alt 28. Okt 2002, 23:31
Moin Zusammen,

81 dezimal = $51 (hex)
=>
INTERNET_CONNECTION_MODEM ($01)
INTERNET_RAS_INSTALLED ($10)
INTERNET_CONNECTION_CONFIGURED ($40)

Da die Internet API Funktionen offensichtlich nur LAN und Modem kennen, könnte man Modem auch schlicht als Wählverbindung ansehen.
Dann stimmt's ja wieder.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#7
  Alt 29. Okt 2002, 00:42
Ah danke, dann war ich ja knapp da neben mit meiner Version.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:17 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz