Datei beim Herunterfahren in einen andern Ordner kopieren ???

  • Allgemein

  • martinxs303
  • 3751 Aufrufe 12 Antworten

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Datei beim Herunterfahren in einen andern Ordner kopieren ???

    Hallo,

    ich hoffe mal das ich hier im richtigen Thread bin...(wenn nicht dann verschieben)

    Also ich suche eine möglichkeit das es mir ermöglicht bei Win XP nach dem anklicken "Herunterfahren" automatisch eine oder zwei Dateinen an einen anderen Ordner kopiert.

    Das ganze hat einfache den hintergrund das die datei beim neustart überschrieben oder gelöscht wird wird.

    Ach so fals es eine Rolle spielt es ist eine .xml Datei mit immer max. 300kb


    DANKE
    nicht alles was ein loch hat ist kaputt !
  • Bastel dir doch eine Batch-Datei BATch Datei , cmd Befehle in Windows (DOS)
    Das ganze dann mit shutdown befehl

    Quellcode

    1. shutdown -s -t 0
    und dann rufste die Datei auf anstatt start => herunterfahren zubenutzen.

    Gruß
    Broken Sword

    edit:
    *heul* Ich hab doch das selbe gesagt, wie hellboy... nur dass du halt nicht alles auf'n Silbertablett bekamst...
    Auf dem Abstellgleis sah man ihn liegen,
    Auf dem Abstellgleis zwischen Schwelle und Gestein,
    Auf dem Abstellgleis im strömenden Regen,
    Auf dem Abstellgleis allein.
  • Datei beim Herunterfahren in einen andern Ordner kopieren

    Hi,

    Das geht mit einer .bat-Datei die Du dir selber anlegen kannst.

    Erstelle dazu eine neue .txt-Datei und öffne sie mit einem Editor deiner Wahl.

    Kopiere jetzt den folgenden Text rein:
    ------------------------------------------------------------------
    copy "C:\DEIN ORDNER_1\Datei_1.xml" "D:\DEIN ORDNER KOPIE"
    copy "C:\DEIN ORDNER_1\Datei_2.xml" "D:\DEIN ORDNER KOPIE"


    %windir%\system32\shutdown.exe -s
    ------------------------------------------------------------------

    ODER
    ------------------------------------------------------------------
    copy "C:\DEIN ORDNER_1\*.xml" "D:\DEIN ORDNER KOPIE"


    %windir%\system32\shutdown.exe -s
    ------------------------------------------------------------------

    ein und speichere die Datei mit dem Befehl "Speichern unter..." im "Datei-Menü" als z.B.: "meinBat-Datei.bat".

    Dei Pfade musst du natürlich anpassen, aber die Anführungszeichen (Gänsefüsschen in den Pfaden müssen erhalten bleiben, da sonst Pfade mit Leerzeichen ignoriert werden.

    Bei dem ersten Text werden nur die 2 angegebenen .xml-Dateien kopiert, beim zweiten Text werden alle im Ordner vorhandenen .xml-Dateien kopiert.

    Die Dateien im Zielverzeichnis werden dann jedesmal überschrieben.

    Ich hoffe das hilft dir weiter.

    mfg,

    hellboy
    Du bist nicht besser als der neben Dir.
  • Zum Fragen ist doch so'n Forum da, oder?

    Ja der Text muss mit rein (unbedingt unter "copy", weil sonst wird nur der PC runtergefahren und nichts kopiert) wenn die .bat den Rechner gleich mit runterfahren soll. Das "-s" bedeutet Shutdown, wenn du "-r" eingibst, wird der Rechner neu gestartet.

    Automatisch läuft das nicht (der PC fährt ja auch nicht automatisch runter, du musst ihm schon sagen was du machen willst - z.B.: in dem du auf den Herunterfahren-Button klickst), du musst die .bat schon manuell starten um den Kopiervorgang zu starten und den PC runterzufahren.
    Du bist nicht besser als der neben Dir.
  • Du kannst Dir auch eine Verknüpfung zur .bat-Datei auf dem Dektop anlegen.

    Dazu die .bat-Datei mit der rechten Maustaste anklicken, auf "Senden an" gehen und im dann erscheinenden Menü auf "Deskop (Verknüpfung erstellen" klicken.

    Das Icon der Verknüpfung kannst Du dann ändern indem die Verknüpfung mit der rechten Maustatste anklickst auf "Eigenschaften" gehst, im sich öffnenden Fenster klickst du dann auf "Anderes Symbol..." und suchst dir dann ein passendes aus.

    mfg

    hellboy
    Du bist nicht besser als der neben Dir.
  • core666 schrieb:

    wenn du es richtig sauber machen willst, schreibst du dir einen kleinen windows dienst der sich in den shutdown event vom os einklinkt und dann deine gewünschte aktion ausführt.

    schau mal hier: MBR IT/.NET 247 : Need an example using SessionEndingEventHandler on microsoft.public.dotnet.framework.windowsforms


    hmm so weit so gut.... also ich habe bis eben alles verstanden aber nun verstehe ich bahnhof ! es liegt nicht am englisch sondern eher an dem was ich mit dem ganzen dort anfangen soll?

    gibt es das auch für dummies :D
    nicht alles was ein loch hat ist kaputt !
  • hab den code mal kurz zusammengefasst (kann sein, dass der etwas angepasst werden muss, da ich VS 2008 benutze. Das .Net Framework solltest du in allen Versionen drauf haben):

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;

    namespace DoSomethingOnShutdown
    {
    public partial class Form1 : Form
    {
    public Form1()
    {
    InitializeComponent();
    }

    private void button1_Click(object sender, EventArgs e)
    {
    HookSessionEnding();
    }

    private void HookSessionEnding()
    {
    Microsoft.Win32.SystemEvents.SessionEnding +=
    new Microsoft.Win32.SessionEndingEventHandler(this.OnSessionEnding);
    }
    private void OnSessionEnding(object sender,
    Microsoft.Win32.SessionEndingEventArgs e)
    {
    MessageBox.Show("Das System fährt herunter");
    // Schreib hier den Code rein was passieren soll wenn das System herunterfährt.
    }

    }
    }


    den code kannst du in einer normalen windowsanwendung zum testen verwenden. in die baust du einen button ein. sobald du dort draufklickst hängt sich das programm in den event rein und startet beim herunterfahren deinen hinzugefügten code. wenn das funktioniert, musst du nur noch einen windows dienst daraus machen.ich hoffe das hilft
  • martinxs303 schrieb:

    gibt es denn keine möglichkeit die .bat irgendwo zu verlinken oder einen pfad zu dieser zu verweisen das die sich nach anklicken "Herunterfahren" automatisch ausführt.


    Hallo!

    Ich habe hier mal was ähnliches gepostet. freesoft-board.to/f17/windows-…n-282681.html#post2374557

    Starte die Gruppenrichtlinie. (C:\WINDOWS\system32\gpedit.msc)

    Gehe zu Richtlinien für Lokaler Computer > Computerkonfiguration > Windows-Einstellungen > Skripts (Start/Herunterfahren)

    Rechts hast du zwei Einträge: Starten und Herunterfahren. Uns interessiert nur Herunterfahren.

    Mit Doppelklick das Dialogfenster öffnen. Unten klickst du auf Dateien anzeigen. Der Ordner C:\WINDOWS\System32\GroupPolicy\Machine\Scripts \Shutdown wird geöffnet. Hier legst du eine neue .vbs-Datei (Visual Basic Script) an, mit folgendem Inhalt:

    Quellcode

    1. Set fs = CreateObject("Scripting.FileSystemObject")
    2. fs.CopyFile "C:\Quelle\Datei.xml", "C:\Ziel\"


    (Achtung, das Script hier ist minimal, es werden keine Fehler abgefangen, es erscheint nur eine Fehlermeldung. Auf Wunsch Anpassungen möglich.)

    Datei speichern, Explorer schließen, und im Dialogfeld der Gruppenrichtlinie die Datei Hinzufügen...

    Wer schreibt heute noch auf der Windows-Oberfläche Batch-Files?

    In Zukunft Windows einfach normal herunterfahren.

    Gruß

    FeliX_22