Frage zu Programm
-
Hallo,
Ich habe mal früher ein Programm in Batch geschrieben womit man sich die Aktiven Verbindungen angucken kann jetzt würde ich dies mal gerne mit C++ Versuchen hier ist der Source Code von dem Programm:
@echo off :menue cls color a echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ echo Mit diesem Programm koenne sie alle ihre Verbindungen echo Ueberwachen ! echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ echo (1) Alle Verbindungen anzeigen lassen und gegebenfalls anpingen echo. echo (2) Unsichere Verbindungen echo. echo (3) Hier kann man sehen welches Programm zu welcher Verbindung gehoert echo. echo (4) Programm beenden echo. set /p_choice=Waehlen sie was sie tuen wollen: echo. if %_choice%==1 goto 1 if %_choice%==2 goto 2 if %_choice%==3 goto 3 if %_choice%==4 goto 4 :1 cls netstat -a echo. echo (1) IP-Adressen anpingen echo. echo (2) Zurueck zum Hauptmenue echo. set /p_choice=Was wollen sie tuen? echo. if %_choice%==1 goto ping if %_choice%==2 goto menue :ping set /P ip=IP hier eingeben: ping %ip% echo. echo (1) Weiter IP-Adressen anpingen echo. echo (2) Nochmals die Verbindungen anzeigen lassen echo. echo (3) Zurueck zum Hauptmenue echo. set /p_choice=Was wollen sie jetzt tuen? echo. if %_choice%==1 goto ping if %_choice%==2 goto netstat if %_choice%==3 goto menue :netstat netstat -a goto 1 :2 cls echo Folgende Ports werden von Trojanern benutzt start ports.txt goto menue :3 @echo off echo Bitte warten... echo. @echo off netstat -abn echo Fertig echo. echo Hier sehen sie jetzt welches Programm zu welcher Verbindung gehoert echo. echo echo (1) IP-Anpingen echo. echo (2) Zurueck zum Hauptmenue echo. set /p_choice=Waehlen sie aus was sie tuen wollen: if %_choice%==1 goto verbindungen if %_choice%==2 goto menue :Verbindungen @echo off set /P ip=IP hier eingeben: ping %ip% @echo off echo. echo (1) Nochmals die Verbindungen der Programme anschauen echo. echo (2) IP-Adresse anpingen echo. echo (3) Zurueck ins Hauptmenue echo. set /p_choice=Weahlen sie aus was sie tuen wollen: echo. if %_choice%==1 goto 3 if %_choice%==2 goto ipping if %_choice%==3 goto menue :ipping set /P ip=Geben sie die IP Adresse ein ping %ip% echo (1) Nochmals die Verbindungen der Programme anschauen echo. echo (2) IP-Adresse anpingen echo. echo (3) Zurueck ins Hauptmenue echo. set /p_choice=Weahlen sie aus was sie tuen wollen: if %_choice%==1 goto 3 if %_choice%==2 goto ipping if %_choice%==3 goto menue :4 cls echo Wollen sie das Programm wirklich beenden? echo (1) Ja echo (2) Nein echo. set /p_choice=Waehlen sie 1 oder 2: if %_choice%==1 goto ende if %_choice%==2 goto menue :ende exitFür das IP-Adresse anpingen
________________________________________set /P ip=Geben sie die IP Adresse ein
ping %ip%Mir würde es aber erst einmal reichen IP-Adressen anpingen zu können ich weiss das geht auch unter cmd ^^ Wieso sollte man da ein Programm für machen ?
Ganz einfach: Weil ich es mit C++ machen will ^^ Und ja ich weiss man Batch Script ist nicht richtig eingerückt
-
Das machst du schrittweise.
- Zuerst übernimmt C++ nur die Textausgabe, Eingabe und die Menüführung.
Die Netzwerksache übernimmt noch netstat selbst. Du kannst es mit der system-Funktion aufrufen und musst vorher natürlich den Parameterstring von deinem Programm entsprechend erstellen lassen.- Als nächsten großen Schritt übernimmst du auch netstats Job.
(Es ist ja keine Schande, auch mal in den Sourcecode von netstat zu schmulen, wie es da gemacht wird.)- In 2-3 Monaten, wenn du es dann hast, dann schreibst du zuletzt noch alles schön in ein Klassendesign um, damit es schönes C++ ist.
- Fertig.
-
Das "Problem" wovor du stehst, ist, dass Batch und C++ zwei vollkommen verschiedene Lösungsansätze für Aufgabenlösungen darstellen. Via Batch- oder Shell-Skripte rufst du die entsprechenden Befehle der (jeweiligen) Kommandozeileninterpreter auf bzw. startest bestehende Programme (welche natürlich auch in C++ geschrieben sein können).
Während du mit Batch die die verschiedenen Befehle oder Programme ausführen kannst, hast du über C++ (und anderen Programmiersprachen) die Möglichkeit Programmierbibliotheken zu verwenden (APIs).
Die STL ist so eine (std::vector, etc.).
Ähnliche gibt es diese auch für so ziemlich alle denkbaren Anwendungsfälle auch u.a. dein gewünschtest Ping (kann in einer socket.h) oder ähnlich liegen. Genau weiß ich dass allerdings nicht -> Suchmaschinen helfen weiter

Grüße...
Heiko
-
2-3 Monate

Das in Batch hab ich in 2 Stunden gemacht oder so.
-
... weil du es konntest

In den 2-3 Monaten sind das Erlernen von C++ und den Programmierbibliotheken mit eingerechnet.
Oder konntest du nachdem du deinen PC gekauft hast (oder hast kaufen lassen) ad hoc dein Batch-Skript schreiben?

Grüße...
Heiko
-
Ne das nicht^^
Aber Batch konnte ich nach ca. 1 1/2 Wochen^^
Aber Batch ist ja auch nicht so Umfangreich wie C++
-
Bassmaster schrieb:
Ne das nicht^^
Aber Batch konnte ich nach ca. 1 1/2 Wochen^^
Aber Batch ist ja auch nicht so Umfangreich wie C++
Eben - nach 2-3 Monaten C++-Lernens kannst Du ja auch deutlich MEHR implementieren als mit 1,5 Wochen Batch-Erfahrung.
Gruß,
Simon2.