Hilfe!!!^



  • Hallo Liebe C++ Gemeinde,
    ich habe ein Problem. Ich habe vor ein Programm in c++ zu schreiben, dass dateien in einem Ordner umbenennt, danach gestartete dienste beendet und den ordner danach löscht.
    Ich hab zwar schonmal angefangen C++ zu lernen. Habe aber viel vergessen.
    Es wäre nett wenn ihr mir ein bisschen helfen könntet.
    Danke schonmal im vor raus
    Gruß Vossi 👍 👍 🙂 🙂



  • ja? zeig mal deine versuche her...



  • Ich habe vor ein Programm in c++ zu schreiben, dass dateien in einem Ordner umbenennt, danach gestartete dienste beendet und den ordner danach löscht.

    Ähmm. Dienst => Windows? Nehme ich an.

    Das alles gibt es schon:
    umbenennen -> rename
    dienste beenden -> net stop
    löschen -> delete



  • vielen dank ach ja da gibts nich viel zu zeigen ich hab mir mal nen fertigen quelltext zum umbenennen gesucht aber da hat er meine datei in das compiler verzeichnis verschoben^^
    und als ich selber anfangen wollte bin ich schon am grungerüst bzw auswahl der biblipthekselemte gescheitert (#include <...>) also kann man sagen mittlerweile fast alles verlernt:-(( 😞 😞



  • hab was gefunden ausm inet zusammen kopiert:

    // neu.ccp
    # include <iostream.h>

    using namespace std;
    int main ()
    {
    int result;
    char oldname[] ="C:\\Ordner\\Prog.exe";
    char newname[] ="C:\\Ordner\\Neu.exe";
    result= rename( oldname , newname );
    if ( result == 0 )
    puts ( "File successfully renamed" );
    else
    perror( "Error renaming file" );
    return 0;
    }
    Kann mir jemand vielleicht erklären was dort passiert sehe dort nämlich nicht wirklich durch 😕 😕



  • # include <iostream.h> // iostream header datei wird eingebunden

    using namespace std; // zu benutzender namensbereich wird festgelegt, in dem fall
    // einfach cout & co
    int main ()
    {
    int result;
    char oldname[] ="C:\\Ordner\\Prog.exe"; // pfad in char array speichern
    char newname[] ="C:\\Ordner\\Neu.exe"; // -"-
    result= rename( oldname , newname ); // Prog.exe wird in Neu.exe umbenannt
    // fuer mehr infos zu rename() einfach
    // das schluesselwort im quelltext
    // markieren und F1 druecken
    if ( result == 0 ) // wenn umbenennen erfolgreich,
    // erfolgsmeldung ausgeben
    puts ( "File successfully renamed" );
    else
    perror( "Error renaming file" ); // wenn fehlgeschlagen, fehlermeldung
    return 0;
    }

    Ich kann dir http://www.informit.de/books/c++21/data/start.htm ans herz legen, wenn du c++ lernen willst



  • danke hat mir geholfen umbenennen ist jetzt klar aber ich hab noch ne kleine frage
    wie mache ich das wenn der ordner sich benutzernamen spezifisch ändert?
    dann soll das proggi nach dem benutzernamen fragen z.B. C:\\Dokumente und Einstellungen\"Variabel" z.B. Müller\\Eigene Dateien zum Beispiel



  • dann musst du ganz einfach char newname[] selbst definieren, durch eine benutzereingabe zur laufzeit des programmes, etwa:

    # include <iostream.h>
    
    using namespace std;
    int main ()
    {
       int result;
       string oldname;
       string newname;
    
       cout << "Bitte aktuellen Pfad eingeben: ";
       cin >> oldname;
       cout << "Bitte neuen Pfad eingeben: ";
       cin >> newname;
       result = rename( oldname.c_str() , newname.c_str() );
       if ( result == 0 )
          puts ( "Umbenennen erfolgreich!" );
       else
          perror( "Umbenennen fehlgeschlagen!" );
       system("pause");
       return 0;
    }
    

    Ich habe hier string statt char[] verwendet, da der string typ keine statische groesse hat, die man zu beginn festlegen muss und somit zur laufzeit die groesse des inhalts bestimmen kann.




Anmelden zum Antworten