Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 11
  1. #1
    W32.Lovgate
    Registriert seit
    01.07.2007
    Beiträge
    354

    Standard [source] Kommando-zeilen Kopierer

    Da ich gerade mit C programmieren angefangen habe, und denke, dass viele gerade dabei sind, werde ich, sofern es erlaubt ist meine Sources hier posten, Kritik ist erwünscht. Alles steht unter der GPL.

    Code:
                                  /*copy.c*/
    
    #include <stdio.h>
    #include <stdlib.h>
    
    void cpy(const char *q, const char *z);        //sorry, falsch  -->void cpy();
    
    int main(int argc, char *argv[])
    {
      
      if(argc >= 3)
              cpy(argv[1], argv[2]);
      else if(argc == 2)
              cpy(argv[1], "kopie.ac");
      else
              fprintf(stderr, "Usage : %s <quelle> <ziel>\n", *argv);        
    
      printf("Press ENTER to continue...\n");
      getchar();
      return 0;
    }
    
    void cpy(const char *q, const char *z)
    {
         FILE *quelle, *ziel;
         char c;
         
         quelle = fopen(q, "r");
         
         if(quelle == NULL)
         {
              fprintf(stderr, "Fehler beim Öffnen der zu lesenden Datei...\n");
              return;
         }
         ziel = fopen(z, "a+");
         
         if(ziel == NULL)
         {
              fprintf(stderr, "Fehler beim Öffnen der zu schreibenden Datei...\n");
              return;
         }
         
    
         
         while((c = fgetc(quelle)) != EOF)
         {
              fputc(c, ziel);        
         }
    }
    habs auch noch auf rapidshare gestellt die exe, kann ja jemand prüfen oder selbst kopilieren, ist 100%ig clean:http://rapidshare.com/files/41416075/copy.exe.html

  2. #2

    Standard

    lol, schöner source fürn anfang

    aber beim compilen kackt mein compiler ab, vonwegen zuviel parameter in der funkiton cpy() obwohl du alles richtig gemacht hast mit dem prototyp und so... (wenn ich die cpy() oben reinpack funzt es aber...)

    sonst funzt es xD
    Danke.
    .::free-hack::.

  3. #3
    CIH-Virus Avatar von -[RiDER]-
    Registriert seit
    05.01.2007
    Beiträge
    496

    Standard

    nee, grade der prototyp is falsch :wink:
    Code:
    void cpy(const char *q, const char *z);
    so müsster sein. manche compiler machen sonst probleme...

    MfG RiDER

  4. #4
    W32.Klez
    Registriert seit
    23.05.2007
    Beiträge
    401

    Standard

    so müsster sein. manche compiler machen sonst probleme...
    Sollte eigentlich jeder C-Compiler machen. Bei C++ sieht das wieder anders aus.
    Micah joined #CS
    0meg4: kA mehr wo das war, musst mal gucken
    0meg4: Hi Micah
    Micah: Welche von euch Fotzen möchte mal geleckt werden?!
    Jacks^2: o_O
    Micah: ja komm gibs mir... erzähl was!
    Micah: hab schon die ganze Zeit einen richtig harten
    0meg4: Ich glaub du hast da was verwechselt. Du bist hier im #CS was für "Counter-Strike" steht, nicht für "Cyber-Sex" :-O
    Micah: Verdammt.
    Micah left #CS
    Jacks^2: lol xD
    0meg4: xD

  5. #5
    Anfänger
    Registriert seit
    20.08.2004
    Beiträge
    10

    Standard

    kA.. eig schon

  6. #6
    W32.Lovgate
    Registriert seit
    01.07.2007
    Beiträge
    354

    Standard

    Und gleich noch einer. Prinzip ist der gleiche, die datei ik ersten argument wird überwacht, und ganz in die Datei des 2. arguments kopiert, nur dass die 2. datei bei jedem Speichern der 1. aktualisiert wird.

    sorry für die schlechte formulierung

    Code:
                                  /*infinite_copy.c*/
    
    #include <stdio.h>
    #include <stdlib.h>
    
    void infinite_copy(const char *q, const char *z);
    
    int main(int argc, char *argv[])
    {
      char ziel_string[20];
      
      if(argc >= 3)
              infinite_copy(argv[1], argv[2]);
      else if(argc == 2)
      {
              printf("Ziel:...");
              scanf("%s", ziel_string);         
              infinite_copy(argv[1], ziel_string);
      }
      else
              fprintf(stderr, "Usage : %s <Überwachungsdatei> <ziel>\n", *argv);        
    
      printf("Press ENTER to continue...\n");
      getchar();
      return 0;
    }
    
    void infinite_copy(const char *q, const char *z)
    {
         FILE *quelle, *ziel;
         char c;
         
         quelle = fopen(q, "r");
         
         if(quelle == NULL)
         {
              fprintf(stderr, "Fehler beim Öffnen der zu lesenden Datei...\n");
              return;
         }
         ziel = fopen(z, "a+");
         
         if(ziel == NULL)
         {
              fprintf(stderr, "Fehler beim Öffnen der zu schreibenden Datei...\n");
              return;
         }
         
    
         
         while(1)
         {
         ziel = fopen(z, "a+");
         
              if(ziel == NULL)
              {
              fprintf(stderr, "Fehler beim Öffnen der zu schreibenden Datei...\n");
              return;
              }
                 
              c = fgetc(quelle);
              
              if(c == EOF)
                   ungetc(c, quelle);
              else
              {
                   fputc(c, ziel);
                   fputc(c, stdout);
              }
              fclose(ziel);        
         }
    }

  7. #7
    NoClose Wurm
    Registriert seit
    10.10.2006
    Beiträge
    183

    Standard

    Blöde frage aber ich versteh das jetzt so: die exe kopiert alles aus der CMD in eine Datei oder? Wenn ja nice.

  8. #8
    CIH-Virus Avatar von -[RiDER]-
    Registriert seit
    05.01.2007
    Beiträge
    496

    Standard

    geht das nicht per >> datei
    Code:
    c:\>blubberprogramm >> log.txt
    also output in datei schreiben...

    aber als "überwachung" is kewl^^

    MfG RiDER

  9. #9
    W32.Lovgate
    Registriert seit
    01.07.2007
    Beiträge
    354

    Standard

    Blöde frage aber ich versteh das jetzt so: die exe kopiert alles aus der CMD in eine Datei oder? Wenn ja nice.
    Nee, kopiert wird von der ersten Datei in die zweite!, und die 2. wird nach jedem speichern der 1. aktualisiert.

    geht das nicht per >> datei Code:
    c:\>blubberprogramm >> log.txt


    also output in datei schreiben...

    aber als "überwachung" is kewl^^

    MfG RiDER
    ja, so geht es auch, dann muss man aber noch was in die Konsole eingeben, so ist weniger umständlich.



    Wenn Interesse besteht, dass ich alle Programme hochlade, denn meldet euch bitte per PM...

  10. #10

    Standard

    =-antr4xx-=[]
    Wenn Interesse besteht, dass ich alle Programme hochlade, denn meldet euch bitte per PM...
    sorry wenn ich jetzt aufm schlauch steh aber was meinste mit "alle programme" ?
    Danke.
    .::free-hack::.

Seite 1 von 2 12 LetzteLetzte

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •