AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Feststellen, ob Netzwerkkabel gezogen wurde?

Feststellen, ob Netzwerkkabel gezogen wurde?

Ein Thema von raffix · begonnen am 24. Mär 2003 · letzter Beitrag vom 2. Jun 2008
Antwort Antwort
Seite 6 von 11   « Erste     456 78     Letzte » 
DaFox

Registriert seit: 31. Jul 2003
Ort: Kippenheim
90 Beiträge
 
#51

Re: Feststellen, ob Netzwerkkabel gezogen wurde?

  Alt 12. Jul 2004, 13:13
Hi,

die ultimative Lösung habe auch ich nicht. Aber hast Du schon mal folgende Funktionen angeschaut?
MSDN-Library durchsuchenIsNetworkAlive, MSDN-Library durchsuchenIsDestinationReachable

Gruß,
Markus
  Mit Zitat antworten Zitat
djmasi

Registriert seit: 9. Jun 2004
Ort: Leipzig
105 Beiträge
 
Delphi 7 Enterprise
 
#52

Re: Feststellen, ob Netzwerkkabel gezogen wurde?

  Alt 12. Jul 2004, 14:59
@DafOx: hast du schonmal damit gearbeitet? Wollte gerade die Sensapi.dll einbinden, aber Delphi brachte mir eine Fehlermeldung, dass es nicht ginge ("Fehler beim Laden der Typbibliothek/DLL").
Hab ich vielleicht was übersehen?
Thomas Maßmann
  Mit Zitat antworten Zitat
NicoDE
(Gast)

n/a Beiträge
 
#53

Re: Feststellen, ob Netzwerkkabel gezogen wurde?

  Alt 12. Jul 2004, 15:09
Zitat von djmasi:
Ich muss dich leider enttäuchen , aber nachdem ich deine Typenbibliothek installiert habe bekomme ich immer noch alle Informationen von XP. Durch die importierte TLB stelle ich ja eine Verbindung zu der DLL dar, über Funktionen. Also eine Schnittstelle. Diese sind im allgemeinen gleich geblieben (die von mir benötigten haben sich nicht geändert).
Ich weiss nicht mit welcher Version Du arbeitest, aber ich konnte mit der importierten Version 1.0 der TLB *nicht* mehr kompilieren (unbekannte Konstante - das war auch der Grund warum schon das Connect zu WMI unter Win9x fehlschlug ($80041008))...
Zudem gibt es die NetworkConnectionID ubd NetworkConnectionStatus unter WinSE nicht...
  Mit Zitat antworten Zitat
djmasi

Registriert seit: 9. Jun 2004
Ort: Leipzig
105 Beiträge
 
Delphi 7 Enterprise
 
#54

Re: Feststellen, ob Netzwerkkabel gezogen wurde?

  Alt 12. Jul 2004, 15:17
Also ich hab deine genommen

Aber vielleicht liegt es ja noch an der DLL? Kannst du deine mal noch mit posten?
Thomas Maßmann
  Mit Zitat antworten Zitat
NicoDE
(Gast)

n/a Beiträge
 
#55

Re: Feststellen, ob Netzwerkkabel gezogen wurde?

  Alt 12. Jul 2004, 15:37
Zitat von djmasi:
Kannst du deine mal noch mit posten?
http://www.bendlins.de/temp/wbem-1.0_winse.zip
( ps: befinden sich unter WIn9x in %windir%\system\WBEM )


Zum Beitrag oben, IsNetworkAlive() liefert immer noch LAN zurück wenn das Kabel längst gezogen wurde...
Delphi-Quellcode:
const
  NETWORK_ALIVE_LAN = $00000001;
  NETWORK_ALIVE_WAN = $00000002;
  NETWORK_ALIVE_AOL = $00000004;

function IsNetworkAlive(out Flags: DWORD): BOOL; stdcall;
  external 'sensapi.dllname 'IsNetworkAlive';

procedure TForm1.Button1Click(Sender: TObject);
var
  Flags: DWORD;
  Text: string;
begin
  Text := 'IsNetworkAlive: ';
  if not IsNetworkAlive(Flags) then
    Text := Text + '<offline>'
  else
  begin
    if (Flags and NETWORK_ALIVE_LAN) = NETWORK_ALIVE_LAN then
      Text := Text + 'LAN, ';
    if (Flags and NETWORK_ALIVE_WAN) = NETWORK_ALIVE_WAN then
      Text := Text + 'WAN, ';
    if (Flags and NETWORK_ALIVE_AOL) = NETWORK_ALIVE_AOL then
      Text := Text + 'Looser, ';
    Text := Text + '...';
  end;
  ShowMessage(Text);
end;
  Mit Zitat antworten Zitat
djmasi

Registriert seit: 9. Jun 2004
Ort: Leipzig
105 Beiträge
 
Delphi 7 Enterprise
 
#56

Re: Feststellen, ob Netzwerkkabel gezogen wurde?

  Alt 12. Jul 2004, 16:07
Zitat von NicoDE:
Zum Beitrag oben, IsNetworkAlive() liefert immer noch LAN zurück wenn das Kabel längst gezogen wurde...
Warum? Bei mir funktionierts

Reaktionszeit < 1 Sekunde

PS: Danke nochmal für die Dateien und den Code
Thomas Maßmann
  Mit Zitat antworten Zitat
djmasi

Registriert seit: 9. Jun 2004
Ort: Leipzig
105 Beiträge
 
Delphi 7 Enterprise
 
#57

Re: Feststellen, ob Netzwerkkabel gezogen wurde?

  Alt 12. Jul 2004, 16:27
Ähm, hab ich jetzt 'nen Denkfehler? Weil wenn ich
Delphi-Quellcode:
function IsDestinationReachable(Destination: String): BOOL; stdcall;
  external 'sensapi.dllname 'IsDestinationReachable';
einbinde, sagt mir Delphi, "der Prozedureinstiegspunkt wurde nicht gefunden". Aber laut MSDN heißt die Funktion doch so.

Ich dreh hier gleich durch
Thomas Maßmann
  Mit Zitat antworten Zitat
DaFox

Registriert seit: 31. Jul 2003
Ort: Kippenheim
90 Beiträge
 
#58

Re: Feststellen, ob Netzwerkkabel gezogen wurde?

  Alt 12. Jul 2004, 17:00
Hi.

Delphi-Quellcode:
PQOCInfo = ^TQOCInfo;
TQOCInfo = record
  dwSize: Integer;
  dwFlags: Integer;
  dwInSpeed: Integer;
  dwOutSpeed: Integer;
end;

function IsDestinationReachable(Destination: PChar; QOCInfo: pQOCInfo): BOOL; stdcall;
  external 'sensapi.dllname 'IsDestinationReachableA';
Gruß,
Markus
  Mit Zitat antworten Zitat
djmasi

Registriert seit: 9. Jun 2004
Ort: Leipzig
105 Beiträge
 
Delphi 7 Enterprise
 
#59

Re: Feststellen, ob Netzwerkkabel gezogen wurde?

  Alt 12. Jul 2004, 17:02
Na auf das A muss man erstmal kommen. Danke
Thomas Maßmann
  Mit Zitat antworten Zitat
Benutzerbild von p0w3r5tr34m3r
p0w3r5tr34m3r

Registriert seit: 18. Aug 2003
Ort: Monheim am Rhein
153 Beiträge
 
RAD-Studio 2009 Pro
 
#60

Re: Feststellen, ob Netzwerkkabel gezogen wurde?

  Alt 12. Jul 2004, 17:04
ne ganz einfache möglichkeit is (die supermuckl und ich eben herrausgefunden haben), ping einfach alle netzwerkkarten von dir an.. wenn das kabel gezogen ist, deaktiviert sich die karte und die ip existiert somit nicht mehr!

das klappt auf allen 5 rechnern hier, also warum nicht auch bei dir / euch !?


MfG Powerstreamer
Florian Cülter
ich bin ein notorischer alles-klein-schreiber!

der 100. Beitrag nach 3 Jahren 25 Wochen und einem Tag
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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:23 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