IP-Sende / Empfänger programmieren
-
Hallo zusammen,
es klingt sicherlich sehr naiv, aber ich versuche es trotzdem mal. Vorweg sollte ich sagen, dass ich HTML und PHP ganz passabel scripten kann. Doch mit C / C++ und anderen richtigen Programmiersprachen habe ich so meine Not.
Aufgrund eines PC-Diebstahls in der Firma kam ich auf die Idee, dass die Diebe vielleicht ja so doof sind und den Rechner ans Netz bringen. Da wäre es nun nützlich, wenn man die aktuelle IP bekommen würde.
Meine Idee wären nun zwei ganz simple Programme: Einmal ein Programm, dass die aktuelle IP an einen Server sendet und einmal ein Programm, dass die IP empfängt und speichert. Natürlich muss das Sendeprogramm einige Voraussetzungen erfüllen.
- Unauffällig, am besten als Systemdienst.
- Muss natürlich vor der Benutzeranmeldung aktiv werden, weil die Rechner sind ja passwortgeschützt.
Ich denke, wenn man programmieren kann, ist das eine wirklich simple Aufgabe. In PHP würde ich die aktuelle IP schlichtweg mit einem $_SERVER['REMOTE_ADDR'] per String in die Datenbank eintragen,aber so einfach dürfte das unter Windows nicht sein, zumal ich das Ganze ja als Systemdienst haben wollte und mir zudem ja noch der Empfänger fehlt, der den String entgegen nehmen würde.
Soweit nun also meine Gedanken dazu. Die Frage ist jetzt aber, wie ich so etwas programmieren kann. Ich weis, dass es verpönt ist und mir niemand die kompletten Quellcodes posten würde, die ich dann nur noch kompilieren müsste. Daher frage ich auch nicht danach. Aber kann mir jemand sagen, wo ich gezielt diese Informationen zusammentragen kann um mir zwei solche Programme schreiben zu können? Geht das überhaupt "so einfach" oder benötigt man für diese Auifgabe schon umfangreichere Programmierkenntnisse?
-
Cyperspace schrieb:
oder benötigt man für diese Auifgabe schon umfangreichere Programmierkenntnisse?
Ja. Wenn man überhaupt keine Ahnung von WinAPI und/oder C/C++ hat, dürfte diese Aufgabe sehr schwer werden.
Aber wenn du meinst, daß deine Programmierkentnisse ausreichend sind, dann solltest du dich erstmal ein wenig mit Services vertraut machen: http://msdn.microsoft.com/en-us/library/ms685141(VS.85).aspx
-
Naja, mein Problem ist ja, dass ich nicht programmieren kann. Extra für so etwas monatelang programmieren lernen ist wohl weniger sinnvoll, zumal mir das so genannte "logische denken" sehr schwer fällt und ich schon beim scripten 10mal so lange brauche etwas zu verstehen wie jemand anders.
Ich hatte gehofft, dass man einfach einige vorgefertigte Befehle zusammenbaut und die Sache mit einigen Zeilen gelöst werden kann, aber dem scheint ja nun nicht so.
Wenn man jemanden dafür beauftragen würde so ein Tool zu programmieren, was wäre denn ein angemessener Preis dafür? (Mit Herausgabe des Quellcode)
Gibt es vielleicht bereits so ein Programm, am besten natürlich Freeware?
-
Cyperspace schrieb:
- Unauffällig, am besten als Systemdienst.
- Muss natürlich vor der Benutzeranmeldung aktiv werden
Ohne diese Prämissen wäre das sozusagen ein Knick und ein Stoß ...
Du bräuchtest lediglich vom Sender aus ein connect zum Empfänger machen, der kann die IP sofort identifizieren, da er sie ja als Adresse für zu sendende Antworten braucht.
Also - wenn Du ein bißchen C kannst, guck in der MSDN nach socket, listen, accept für den Server (Empfänger) und nach socket, connect für den Client (Sender).
Probier das dann erst mal 'im Kleinen' umzusetzen, indem Du beide auf einer Maschine programmierst und testest (mit der lokalen IP 127.0.0.1).
Dann - oder auch parallel dazu - würde ich mich mit der Programmierung eines Dienstes befassen - dazu gibt es sicher ein Beispiel in der MSDN.Ich weiß jedoch nicht, ob die Dienste alle bereits VOR der Benutzeranmeldung aktiv werden (können), falls ja, sollte das Ganze mit ein bißchen Fleiß in den Bereichen suchen und testen hinzukriegen sein, falls nein, weiß ich auch nicht weiter ...
Aber mit C und Anwendung/Verstehen der Funktions/Beispiel - Beschreibungen der MSDN sollte man sich auf jeden Fall leidlich auskennen, bevor man die Aufgabenstellung angeht.
-
Danke für deine Tipps. Das ist schonmal eine gute Idee, in kleineren Schritten an zu fangen und nicht gleich das Ganze zu sehen.
Im MSDN ist alles auf englisch und damit komme ich nicht so ganz klar. Zwar kann ich es natürlich, aber nicht wenn es um ein Thema geht, wo ich eh böse mit zu kämpfen habe und wirklich all meine Anstrengungen unternehmen muss (und eine gute Tagesform brauche) um da durch zu steigen.
Es kennt niemand zufällig ein deutschsprachiges Tutorial, dass sich mit so etwas befasst (Beispielsweise eine "Prüfen auf Update"-Funktion, die ja in den Grundfunktionen genauso aufgebaut sein dürfte)
-
Cyperspace schrieb:
Es kennt niemand zufällig ein deutschsprachiges Tutorial, dass sich mit so etwas befasst
-
-
Danke. Ich befasse mich damit und melde mich dann wieder.