Delphi-PRAXiS
Seite 1 von 11  1 23     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Feststellen, ob Netzwerkkabel gezogen wurde? (https://www.delphipraxis.net/3672-feststellen-ob-netzwerkkabel-gezogen-wurde.html)

raffix 24. Mär 2003 20:36


Feststellen, ob Netzwerkkabel gezogen wurde?
 
Hi@all,

hab' mal ne kleine Frage, ich denke die meisten wissen, wie man sowas programmiert.
Und zwar Windows bemerkt es doch sofort, wenn ich das Netzwerkkabel rausziehe,
wie kann ich programmieren, dass auch meine Delphi-Anwendung das feststellt?
Bis jetzt hatte ich das immer so gemacht, dass die Clients einfach alle 2 Sekunden einen Ping losschicken,
allerdings erhöht das den Traffic enorm und außerdem, wenn der Server mal ausfällt (bzw. überlastet ist),
dann ist's vorbei mit dem Ping. Beim Ping brauche ich auch immer ein Gegenstück.
Am Anfang dachte ich es geht, einen Ping an 127.0.0.1 zu schicken, aber das geht auch,
wenn das Kabel nicht mehr drin steckt, war also keine gute Lösung.

Habt ihr irgendeine Idee?

Hansa 24. Mär 2003 20:39

dann ping doch einen anderen Rechner an. Wird zwar auch nicht viel nützen, aber es wäre Server-unabhängig. :mrgreen:

raffix 24. Mär 2003 20:54

Ne, jetzt im Ernst, da muss es doch eine Möglichkeit geben.
Ich kann nicht 100 Rechner irgendwas anpingen lassen, das muss schon vernünftig programmiert sein.
Gibt es sonst noch irgendeine Lösung?

Hansa 24. Mär 2003 20:56

Zitat:

Zitat von raffix
Gibt es sonst noch irgendeine Lösung?

Ist der Server auf ein Laufwerk gemappt ?

raffix 25. Mär 2003 19:53

Zitat:

Zitat von Hansa
Ist der Server auf ein Laufwerk gemappt ?

Sorry, aber ich habe keine Ahnung, wie mir das bei meinem Problem helfen sollte.
Ich möchte lediglich eine Komponente, die mir sagt, wann das Netzwerk-
kabel rausgezogen wurde, mehr nicht!
Dabei wäre es nicht schlecht, wenn ich einfach nichts anpingen müsste.

Also, ich sag' euch jetzt mal, wozu das gut sein soll:
Alle Computer sind bei uns mit dem Netzwerk verbunden. Da es aber immer
Scherzkekse gibt, die die Kabel rausziehen, war meine Überlegung, ein
Delphi-Programm zu programmieren, das den Computer ausschaltet, sobald
das Kabel rausgezogen wird.
Wenn ich jedoch bspw. einen Server anpinge und ich diesen neustarte,
dann gehen alle Rechner aus, das will ich nicht, deswegen möchte ich es möglichst ohne Ping! Jetzt alles klar?
Der andere Punkt ist, wenn der Traffic im Netzwerk sehr hoch ist,
hat ein Ping zu lange Laufzeiten, deswegen ist das auch nicht günstig.

Deshalb gibt es irgendeine Möglichkeit, wie Windows das macht,
wenn das Kabel gezogen wird, das meine Delphi-Anwendung das auch merkt?

Hansa 25. Mär 2003 20:22

Zitat:

Zitat von raffix
Sorry, aber ich habe keine Ahnung, wie mir das bei meinem Problem helfen sollte.

Deshalb wollte ich Dir ja sagen, wie das eventuell geht. Aber nur mit einer Gegenfrage geht das nicht.

Zitat:

... Da es aber immer Scherzkekse gibt, die die Kabel rausziehen, war meine Überlegung, ein Delphi-Programm zu programmieren, das den Computer ausschaltet...
Was habt ihr denn da für einen Laden? Da diese und ähnliche Fragen sich in letzter Zeit häufen, glaube ich, daß es besser ist nicht mehr zu antworten. Das sieht nicht gerade nach einer sinnvollen Sache aus, eher nach Unfug. Falls letzteres zutrifft, wirst Du entlassen, ansonsten eventuell Schulverweis.

Daniel 25. Mär 2003 20:31

Hallo,

ich denke, wir sollten nicht vorschnell urteilen.
Die Ausgangsfrage wurde sachlich und vernünftig gestellt und ich sehe in der Thematik keine unmittelbare Problematik, welche einer Beantwortung dieser Frage im Wege stehen könnte.

keep cool... :wink:

Daniel 25. Mär 2003 20:39

Unter Umständen könntest Du versuchen, irgendwas mit den Windows-Sockets zu veranstalten; dort gibt es eine Funktion "WSAGetLastError", welche u.A. den Code "WSAENETDOWN" zurückliefert, welcher wie folgt beschrieben ist:
Zitat:

Zitat von MSDN-Library
Network is down.
A socket operation encountered a dead network. This could indicate a serious failure of the network system (that is, the protocol stack that the Windows Sockets DLL runs over), the network interface, or the local network itself.


raffix 25. Mär 2003 20:52

Zitat:

Zitat von Hansa
Was habt ihr denn da für einen Laden? Da diese und ähnliche Fragen sich in letzter Zeit häufen, glaube ich, daß es besser ist nicht mehr zu antworten. Das sieht nicht gerade nach einer sinnvollen Sache aus, eher nach Unfug. Falls letzteres zutrifft, wirst Du entlassen, ansonsten eventuell Schulverweis.

Sorry, aber das ist in Schulen nun mal so.
Leider kann ich eurer Diskussion nicht ganz folgen.
Ich bin der Administrator dieses Netzes, was heißt entlassen, also momentan verstehe ich bloß Bahnhof,
und zweitens kann man keinen Schüler der Schule verweisen,
bloß weil er ein Kabel rausgezogen hat.

Es ist einfach so, dass wir Administratoren immer wieder von Lehrern gerufen werden,
weil man sich an einem Computer nicht anmelden kann.
Und jedesmal kommen wir, schauen an der Rückseite, "ah ha, das Kabel ist mal wieder draußen"!
Wenn das aber durch ein Programm verhindert wird, sprich der Computer geht immer aus,
dann sagen wir den Lehrern einfach, wenn ein Rechner ausgeht, dann schaut nach dem Kabel und wir haben unsere Ruhe.

Das ist in Kurzfassung eigentlich der Grund, warum ich so ein Kontrollprogramm brauche.
Um genauer zu sein ist dieses "kleine" Programm nur ein Bestandteil eines viel größeren Programms
und dieses kleine Problem mit dem Kabel ist das letzte, das ich noch habe.

Luckie 25. Mär 2003 20:59

Dann kleb einen Zettel an jeden Arbeitsplatz wo erste Selbsthilfemaßnahmen draufstehen, wenn man sich nicht einloggen kann:
- Caps gedrück
- NumLock aus
- Netzwerkkabel gezogen


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:57 Uhr.
Seite 1 von 11  1 23     Letzte »    

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