Hochzählen von Ip`s



  • Hallo erstemal 🙂

    Hab über das oben genannte Thema schon gelesen, es funktioniert aber bei mir nicht.

    Mein Problem ich hab in der Schule einen Portscanner programmiert. Baute in diesen eine Abfrage was der erste Port sein soll und der letzte. Dies war ganz easy. Nun wollte ich den Ip-Bereich hochzählen lassen.
    Hab hier im Forum schon einen Lösungsansatz gefunden:

    ip.Format("10.10.10.%d",i);
    

    Könnte mir jemand ein Vollständiges Script zeigen mit Variabeln usw. ei mir bringt das nur immer eine Fehlermeldung.

    Danach hab ich das ausprobiert:

    CString ipfront,ip,update;
    int ipend;
    
    ipfront = "192.168.129.";
    ipend = 40;
    
    for(int x=40;x<=87;x++)
    {
         ipend++; //zählt die letzte IP hoch
         ip = ip.Format("%d",ipend); //formatiert INT in CString (hier die IP Stelle)
         update = ipfront; //hängt die erste ip an eine variable
         update += ip; //hängt den letzten Wert an
         //Befehl zum Updaten mit der Variablen "update"
    }
    

    Bekam aber immer einen Fehler wegen cstring. Ich habe aber #include <cstring> in den Bibliotheken bekannt gegeben.

    Wäre es möglich wenn mir jemand einen kleines Script zur Veranschauung "aufmalen" könnte

    MFG Nero



  • So vielleicht???

    String^ ipfront;
    String^ ip;
    String^ update; 
    int ipend; 
    
    ipfront = "192.168.129."; 
    ipend = 40; 
    
    for(int x=40;x<=87;x++) 
    { 
    	ipend++; //zählt die letzte IP hoch 
    	ip = Convert::ToString(ipend); //formatiert INT in CString (hier die IP Stelle) 
    		 update = ipfront; //hängt die erste ip an eine variable 
    		 update += ip; //hängt den letzten Wert an 
    		 //Befehl zum Updaten mit der Variablen "update" 
    }
    
    return 0;
    


  • #include <stdio.h>
    #include <iostream>
    #include <stdlib.h>
    #include <cstring>
    #include <string.h>
    
    using namespace std;
    
    int main()
        {
    
    String^ ipfront;
    String^ ip;
    String^ update;
    int ipend;
    
    ipfront = "192.168.129.";
    ipend = 40;
    
    for(int x=40;x<=87;x++)
    {
        ipend++; //zählt die letzte IP hoch
        ip = Convert::ToString(ipend); //formatiert INT in CString (hier die IP Stelle)
             update = ipfront; //hängt die erste ip an eine variable
             update += ip; //hängt den letzten Wert an
             //Befehl zum Updaten mit der Variablen "update"
    }
    
    return 0;
    
        system("PAUSE");
    }
    

    Bin langsam am verzweifeln. Wenn man das so wie kompalieren will sagt er das string undeklariert ist. Wenn ich "^" entferne und string kleinschreibe meint er das convert nicht deklariert ist. Wenn ich class convert mache mault er rum string ist undeklariert. Bin langsam am verzweifeln.
    Ich nutze dev c++ das ist nicht der Grund. Wenn ihr mir vielleich nochmal helfen könntet wäresehr freundlich. Programmier noch nicht so lange

    MFG Nero



  • wir sind hier im C++/CLI Forum nicht in C++ oder Winapi 😉 ein Mod soll es doch bitte verschieben...
    🙂

    Mfg

    Helfender Helfer



  • Du darfst den ^ Dach nicht wegnehmen.

    Fehlermeldung in C++/CLI:

    error C3149: "System::String": Dieser Typ kann ohne "^" der obersten Ebene hier nicht verwendet werden.
    

    Grund:
    Der String^ wird in C++/CLI grundsätzlich auf dem verwalteten Heap angelegt.

    Aber Du bist wirklich im falschen Forum. 🙄

    Hatte erst gedacht Du wolltest das mit C++/CLI machen.



  • Da Du dev++ verwendest gibt es weder CString (wie in Deinem ersten Posting) noch String^.... begnüge Dich doch mit "std::string"...
    Deshalb in C++ Forum...



  • Dieser Thread wurde von Moderator/in Jochen Kalmbach aus dem Forum C++/CLI mit .NET in das Forum C++ verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.



  • Entschuldigung für das falsche Forum.
    Kann mir vielleicht einer einen Codeschnippsel geben damit ich das nun in "mein" Programm einbauen kann

    MFG Nero



  • Oh mann..

    #include <iostream>
    #include <string>
    
    int main()
    {
      std::string ip( "192.168.1." );
    
      for( unsigned i = 1; i < 255; ++i )
      {
         std::cout << ip << i << std::endl;
      }
    }
    

Anmelden zum Antworten