Wie Konsolenfenster aufmachen und ihm Zeichen senden?



  • Hallo,

    ich möchte ein kleines Scherzprogramm machen, welches nach einer Warnmeldung "Dateien löscht" (Tut es natürlich nicht wirklich). Dazu soll einfach die Konsole erscheinen und den Inhalt des Windows-Ordners ausgeben. Aber wie mach ich das? Ich kann zwar die Konsole aufmachen, weiss aber nicht, wie mann Zeichen in ihren Eingeabestream schreibt.

    MfG Mark



  • boardsuche verzeichnisse auflisten (FindFirstFile u.ä. afaik)



  • Das kannst du auch einfach mit einer Batch-Datei machen.

    echo on
    :begin
    dir c:\windows
    goto begin
    

    Durch die Sprungmarke wurde eine Endlosschleife erzeugt und die Dateien aus dem Windows-Verzeichnis werden hintereinander aufgelistet.

    MfG WilMen



  • Wenn es doch ein Scherzprogramm sein soll, mach es doch einfah so das ihm angeziegt wird, das ihm alle system Daten gelöscht werden. Sprich sowas : system.ini , Resource usw.
    Die Listest du dann einfach auf nach einem Event. :xmas2: :xmas1:



  • Danke für die Beiträge.

    Das mit der Batch-Datei hab ich mir zuvor auch überlegt, aber ich möchte nicht, dass Dateien hinterlassen werden.

    Das Auflisten im normalen Fenster könnt ich machen, aber ich würd es gern in einem Dos-Fenster ablaufen lassen, weil es dadurch etwas echter aussieht.

    MfG Mark



  • So hier hast du jetzt eine vollständige Konsolenanwendung! Betrachte das als Weihnachtsgeschenk xD. Wenn du noch willst, dass die Datei sich selbst löscht dann kannst du das ja noch hinzufügen.

    #include <stdio.h>
    #include <stdlib.h> // für system()
    
    #define KEY_PRESS fflush(stdin) ; getchar() ;
    
    int main(int argc, char * argv[])
    {
    	puts ("Alle Dateien aus C:\\Windows loeschen? (y/n)\n") ;
    	KEY_PRESS
    	puts ("Loeschen...\n") ;
    	system("dir c:\windows") ;
    	puts ("Alle Dateien wurden erfolgreich geloescht!") ;
    	KEY_PRESS
    	return 0;
    }
    

    MfG
    WilMen



  • Danke für Deine Bemühungen WilMen, aber das Programm muss eine Windows-Anwendung sein, da ich einige "Extras" einbauen möchte. Ist es wirklich so schwer, den Standarteingabestream eines Konsolenprogramms zu beschreiben?

    MfG Mark



  • Erklär was das für Extras sein sollen. Du kannst wenn du die windows.h einbindest doch alle Win32-API-Funktionen nutzen! Ich versteh nicht, wo da das Problem liegt!

    MfG WilMen



  • Falls du nicht weist wie man eine Batch macht:
    1. Linksklick Bildschirm
    2. Neu -> Neues Textdokument
    3. Den benötigten Code in das .txt File eintippen.
    4. Linksklick auf die .txt
    5. Umbenennen in DeleteWindows.bat

    ACHTUNG: Davor muss bei Ordneroptionen->Dateinamenerweiterung bei .txt "Dateinamenerweiterung immer zeigen" angekreuzt sein. Sonst steht soetwas da wie "DeleteWindows.bat.txt" ohne das du es siehst. Ist ziemlich trickreich.
    Viel Spass beim batchen.



  • WilMen schrieb:

    Erklär was das für Extras sein sollen. Du kannst wenn du die windows.h einbindest doch alle Win32-API-Funktionen nutzen! Ich versteh nicht, wo da das Problem liegt!

    Kann ich damit auch das eigene Fenster des Programms vom Bildschirm verschwinden lassen? Wenn ja dann ist es wirklich eine Lösung.

    zu dem Programm: Nachdem es sich scheinbar nicht starten lässt (kein Fenster erscheint), kommt auf einmal die Meldung in der Art "Achtung, auf Ihrem PC wurde ein Virus entdeckt! Um ihn zu beseitigen muss Ihre Festplatte formatiert werden". Darunter befindet sich ein Button "Abbrechen" mit einem Countdown von 10 bis 0. Sobald man aber versucht, diesen zu betätigen, läuft das Fenster der Maus davon. Wenn die 10 Sekunden vorbei sind, werden die Dateien im Win-Verzeichnis in der Konsole aufgelistet. Bis auf den letzten Punkt klappt schon alles.

    @C-Chris
    Mir ist schon klar wie man eine Batch-Datei anlegt. Aber trotzdem danke für den versuch.

    MfG Mark



  • Sorry, aber ich glaube an der Stelle reicht es. Wenn du schon solche Scherze machst dann solltest du auch wissen, wie sowas geht. Wenn nicht lässt du es halt bleiben.

    MfG WilMen :xmas1:



  • WilMen schrieb:

    Sorry, aber ich glaube an der Stelle reicht es. Wenn du schon solche Scherze machst dann solltest du auch wissen, wie sowas geht. Wenn nicht lässt du es halt bleiben.

    MfG WilMen :xmas1:

    Meinst du mich? Ich habe erst vorgestern oder vorvorgestern herausgefunden wie man eine Batch macht. Das sollte kein Scherz sein und dass mit Ordneroptionen->Dateinamenerweiterung wissen nur die wenigsten.

    P.S.: Oder meinst du doch den Themenstarter der den eigentlichen Scherz machen wollte.



  • Hi C-Chris,

    nein ich meinte nicht dich 🙂 ! Ich meinte den Themenstarter. 😉

    MfG WilMen :xmas1:



  • Ich versteh nicht, was Ihr für ein Problem habt. Ich möchte doch nix schlimmes anrichten.

    MfG Mark



  • Naja. Aber du willst da so ein Klischee: Ich bin der Freak der dir deinen Computer hackt und kaputt macht. 😃 Aber dazu solltest du auch ein Freak sein, der weis wie man einen Computer hackt und kaputt macht. Wenn du es nicht hinkriegst dann programmiere doch einfach so ein Programm nach dem Style:

    new int count(0);
    cout<<"C:\Windows\Win32 wird gelöscht.\n Bestätigen(Ja/Nein)\n";
    cout<<"Oh sie waren zu langsam...sie dürfen sich nur 0.0394 Sekunden für die Bestätigung Zeit lassen"\n;
    cout<<"Unwiederrufliche Terminierung der wichtigsten Systemdaten wird eingeleitet.";
    while(count <= 100)
    {
        cout<<"C:\Windows\Win32 wurde zu ";
        cout<<count;
        cout<<"% gelöscht\n";
        count += 1;
    }
    delete count;
    new int cout(0);
    

    Dann schaust du im Windows-Ordner mal ein bisschen nach wie die Ordner heisen und schreibst die wichtigsten in dein Programm(z.B.:taskmanager.exe,notepad.exe,Drivers.folder). Da müsstest du dem Benutzer schon einen schönen Schreck einjagen. Ausserdem gibt es ja Copy&Paste mit dem diese Arbeit um einiges erleichtert wird. Natürlich wäre es mit jedem Ordner schon schöner und so,aber...im Internet finde ich nur "TreeView",etc. und das (denke ich) zu komplziert aber wenn du es unbedingt haben möchtest dann empfehle ich dir folgende Suchmaschine:
    ➡ www.google.com


Anmelden zum Antworten