1. Liebe Forumsgemeinde,

    aufgrund der Bestimmungen, die sich aus der DSGVO ergeben, müssten umfangreiche Anpassungen am Forum vorgenommen werden, die sich für uns nicht wirtschaftlich abbilden lassen. Daher haben wir uns entschlossen, das Forum in seiner aktuellen Form zu archivieren und online bereit zu stellen, jedoch keine Neuanmeldungen oder neuen Kommentare mehr zuzulassen. So ist sichergestellt, dass das gesammelte Wissen nicht verloren geht, und wir die Seite dennoch DSGVO-konform zur Verfügung stellen können.
    Dies wird in den nächsten Tagen umgesetzt.

    Ich danke allen, die sich in den letzten Jahren für Hilfesuchende und auch für das Forum selbst engagiert haben. Ich bin weiterhin für euch erreichbar unter tti(bei)pcwelt.de.
    Dismiss Notice

Batch Autostart

Discussion in 'Programmieren' started by Philipp93, Jun 13, 2010.

Thread Status:
Not open for further replies.
  1. Philipp93

    Philipp93 Byte

    Hi,

    ich suche eine Möglichkeit, eine Datei im Autostart Ordner zu erstellen. Das Skript soll auf XP/Vista und Win7 laufen. Ich würde sagen, dass sich da entweder Batch oder vielleicht C++ anbietet. Aber wie kann ich mit dem Skript den Autostartordner finden, und ihm am besten beschreiben?

    Philipp
     
  2. kalweit

    kalweit Hüter der Glaskugel

    Der Ordner befindet sich ja innerhalb eines Userprofils immer an der selben Stelle. Das Userverzeichnis des angemeldeten Benutzers bekommst du über die Systemvariable "USERPROFILE", alternativ in für alle Benutzer in "ALLUSERPROFILE".
     
  3. Philipp93

    Philipp93 Byte

    Ich habe mal ein bisschen geforscht, und raus gefunden, dass man das auch in die Registry schreiben kann. Aber leider geht es noch nicht, dass die Datei bei start gestartet wird. Der Registryeintrag ist aber vorhanden.
    Code:
    @echo
    ch C:\
    mkdir test
    cd test
    echo echo Hello World > hello.bat
    reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Windows\CurrentVersion\Run" /v "Hello" /d "C:\test\hello.bat"
    
    Was ist daran falsch?

    Philipp
     
  4. Fettbemme

    Fettbemme Halbes Megabyte

    Ja man kann in die Registry schreiben, das ist korrekt!

    Wenn Du es richtig machst geht es aber :)

    Du verwendest den falschen Registry Zweig. Erst einmal ist "HKEY_LOCAL_MACHINE" eine schlechte Wahl, da unter WinVista und Win 7 die Benutzerkontensteuerung greift. Nur mit erhöhten Privilegien schreibst du in den Zweig "HKEY_LOCAL_MACHINE". Nimm lieber "HKEY_CURRENT_USER".

    Dann sollte der verwendete Registry Zweig:

    HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

    Welchen Zweck hat denn übrigens Deine Batch Datei eigentlich die beim Start ausgeführt werden soll?
     
  5. VB-Coder

    VB-Coder Megabyte

    HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\

    Hier kannst du den Inhalt von Startup auslesen. Dann hast du den Pfad zum Autostart-Ordner des angemeldeten Benutzers.

    Und dann kannst du ganz einfach den Pfad verwenden um in den Ordner eine neue Datei zu erstellen bzw. dort eine Datei hinein zu kopieren.


    Nur mal als weitere Möglichkeit.
     
  6. Gandalf87

    Gandalf87 Byte

    Also ich würde statt

    HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

    HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

    So hab ich es jedenfalls immer mit Batch gemacht.

    Gandalf
     
Thread Status:
Not open for further replies.

Share This Page