Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Link da, Link wech? (https://www.delphipraxis.net/712-link-da-link-wech.html)

velox 27. Aug 2002 17:57


Link da, Link wech?
 
Servus!

Kennt einer die API, um abzufragen ob Windows gerade einen Link auf bestimmten Interfaces hat?

Beispielsweise dieses Monitorsymbol im Tray. Wenn das Netzwerkkabel gezigen wird, dann ändert es doch sein Aussehen. Da muss es doch eine Schnittstelle für geben.


Danke!

sakura 27. Aug 2002 18:07

Was genau meinst Du mit "Link auf Interfaces".

Wenn Du zum Beispiel die Icons in der TNA (Tray) meinst, diese haben alle ein Handle, wie fast alle unter Windows.

Andere Frage, was möchtest Du erreichen. Vielleicht können wir DIr über diesen Ansatz etwas besser helfen.


...:cat:...

velox 27. Aug 2002 18:12

Okay...

mein bruder is stets am zocken. ich soll nen überwachungstool schreiben, was den rechner runterfährt, wenn 10 minuten lang keine office anwendung oder sowas lief. das basiert auf client server zeugs. er ist server. ich progge mir nen client mit dem ich das aktiviern oder deaktiviern bzw. konfen kann. wie ne art trojaner.

wenn er aber das netzwerkkabel rauszieht bin ich machtlos. nun will ich, dass wenn der server feststellt das die netzwerkkarte keinen link hat den rechner ebenfalls runterfährt.

ich glaube das geht mittels RAS oder so. hab schon was gefunden. muss aber noch genauer reinschauen.


thx!

Luckie 27. Aug 2002 23:41

Installier auf dem Rechner deies Bruders ein Programm, welches ständig deinen Rechner anpingt. Und wenn nicht zurückkommt dann hat er das Kable gezogen oder dein Rechner ist aus.

Und überprüfen, ob ein Office Programm läuft ginge mit FindWindow. Such einfach ständig nach einem Office-Programmfenster (Word) oder so und wenn er keins finde (Handle ist 0), dann...
Alternativ könnte man noch einen Snapshot machen und nach winword.exe oder so suchen.

Wenn man das noch in einem Thread auslagert sollte es ganz gut laufen. Oder du nimmst einen Timer, der das alle 10 Minuten überprüft.

Aber glaub mir, wenn dein Bruder so klever ist, dass er daran denkt das Kabel zu ziehen, dann kann er auch dein Programm beenden. Das heißt dein Programm müßte ständig etwas an deinen Rechner senden und wenn da nichts mehr ankommt, dann hat er entweder dein Programm beendet oder das Kabel gezogen.

Aber wer sagt denn, das er niochjt Word geöffnet hat und trotzdem zockt?

Christian Seehase 27. Aug 2002 23:51

Moin Zusammen,

um zu überprüfen, ob eine bestimmte Anwendung läuft fällt mir noch ein recht "brutale" Methode ein. (Der Pfad muss allerdings bekannt sein)
Einfach mal versuchen die EXE nur zum Schreiben zu öffen (CreateFile oder auch TFileStream). Wenn das fehlschlägt ist die EXE gelockt, weil sie gerade läuft.

Luckie 28. Aug 2002 00:39

@Christian: Autsch. :mrgreen:

Dann lieber eine Snapshot auch wenn es etwas mehr Arbeit ist.

(Es soll ja auch eine schöne Lösung sein. 8) )

sakura 28. Aug 2002 08:19

Was es den Schutz der Software betrifft, so musst Du diese "unkaputtbar" :roll: machen. Wie Du das erreichen willst, das kann ich Dir nicht wirklich sagen. Was ist, wenn Dein Programm auf dem Rechner Deines Bruders gelöscht wird? Dann kannst Du den auch nicht überwachen.

Daniel 28. Aug 2002 08:32

Wenn es sich deim Rechner des Bruders um ein Win2000/XP-System handeln sollte (auch Zocker kommen ja mehr und mehr auf den Geschmack...), so kann man den Rechner über das Netzwerk herunterfahren, sofern er nicht angepingt wird.
Auf Sysinternals.com gibt es dafür z.B. ein Tool: PSTools. Grundsätzliche Voraussetzung dafür ist aber immer noch das Netzwerk-Kabel. Dumm ist's halt nur, wenn er das Kabnel zieht und sagt, der Rechner sei aus. Dann müsste man alle 10 Minuten rüber / runter / rauf gehen und nachsehen. Das hält zwar fit, ist aber auch keine befreidigende Lösung.

Eigentlich kannst Du nicht mehr machen als die Menge an Massnahmen, die Dein Bruder ergreifen müsste, um ungestört zu zocken, zu vergrössern. Aber wirklich daran hindern kannst Du ihn auf diesem Wege nicht.

Schaff' ihm eine Beziehung oder ein anderes zeit- und ressourcenintensives Hobby an - dann sollte das Interesse am Spielen (...zumindest was den PC angeht...) eigentlich wegfallen.


Grüße,
Daniel

velox 28. Aug 2002 13:03

also danke erstmal für die vielen postings...

wie ich überprüfe welche anwenungen laufen und nich is schon klar. thread und so is auch klar. ich habe vor das prog als service laufen zu lassen und beim beenden des services ohne explizite erlaubniss von mir wird nen fehler zurückgegeben --> service kann nicht beendet werden.

da läuft nen 2k. problem is, dass ich keinen anderen rechner anpingen kann da nie 100%ig sicher ist das auch nen andere rechner an is. der switch aber is immer an. darum bleibt mir als einzige alternative zu prüfen ob nen link da is.

wenn er natürlich word anmacht und zockt is das nen sicherheitsloch. allerdings is der typ so dämlich das der auf den trichter nich kommt. als lösung dafür habe ich remote administrator wo ich immer schön zugugge was er macht. damit kann man nen rechner auch runterfahren.

problem is mit den RAS funktionen geht datt net. die sind für modem und isdn und so. damit komm ich nich weiter. das ist aber möglich, dass weiß ich denn im tray wird ja auch son icon angezeigt und wenn das kabel fehlt sieht es anders aus. genau da will ich ansetzen.

der is dag und nacht am zocken, soll aber bewerbungen schreiben. dem gehts an den kragen!! :twisted:

Luckie 28. Aug 2002 13:24

Dann stell dich mit einem Baseballschläger dahinter. Das ist wohl einfachste und sicherste Lösung.


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:39 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz