ProfilCopy

  • Hallo,
    ich habe mich schon eine Weile mit dem Thema XP UNATTEDED installation beschäftigt. Leider gibt es da immer das Problem das man jede Menge REG Keys gesammelt hat und damit sein Profil so bearbeitet hat bis alles so aussah wie man es gerne haben wollte.
    Das Problem ist aber, wenn man einen Neuen Benutzer anlegt, und dieser sich zum ersten mal anmeldet, sind die ganzen Einstellungen die normalerweise in der Registry unter HKCU stehen für den neuen Benutzer wieder auf den Standartwerten :(

    Während ein vohergehende Script über den Weg gegangen ist den RegistryZweig des Defalt Users zu laden und dann die entsprechenden Regfiles hierfür anzupassen und einzulesen, habe ich jetzt doch einen Weg gefunden die NTUSER.DAT des aktuellen Benutzers zu kopieren. (d.h. nicht ich sondern Thorsten Eggeling, Email: prx@pcwelt.de)
    Ich benutze das freie Programm "pcwRegBack" von der PCWelt Seite(google hilft weiter). Dieses Programm kann eine Sicherung der Registry im laufendem Betrieb anlegen und extrahiert hierbei u.a die NTUSER.DAT in eine Backupverzeichnis.
    Das ganze habe ich in ein AUTOIT Script verpackt so daß das ganze auch im Rahmen einer UNATTENDED installation funktioniert. (z.B c:\>"ProfilCopy.exe /HKCU")

    Herrausgekommen ist nun mein Tool Profilcopy.
    Profilcopy kann man z.B. auch benutzen um nach(!) eine kompletten XP installation das "Defaul User" Profil ohne den Umweg über ein drittes Benutzerkonto zu kopieren.

    Wie funktioniert das jetzt:
    Starten kann man Profilcopy von der Komandzeile mit Parameter für die UNATTENDED Methode. Startet man ohne Parameter wird vorher eine GUI aufgerufen. Startet man mit der Option /? wird ein Syntay-Hilfe-Fenster für die Kommandozeile ausgegeben.

    Für beide Varianten kann man neben dem kopieren der NTUSER.DAT noch das kopieren folgender Ordner aktivieren: (in Klammern die Switches für die Komandozeile)
    -Autostart (/a)
    -Schnellstartleiste (/s)
    -Favoriten (/f)
    -Desktop (/d)
    -NTUSER.DAT (/HKCU)

    Die GUI Variante hat eine Funktion mehr: Man kann den Profilordner in den kopiert werden soll vorher auswählen.
    Das ist nützlich wenn man die Änderungen auch für schon bestehende Profile "im Nachhinein" machen will. Hier sollte man aber vorsichtig rangehen, da in der NTUSER.DAT im Normalfall auch wichtige Einstellungen für bestimmte Programme hinterlegt werden. Diese sind dann "weg". Allerdings wird beim kopieren der NTUSER.DAT vorher noch eine Sicherheitskopie der ursprünglichen Datei angelegt.

    Meine Tests hiermit bisher waren erfolgreich.
    Ihr könnte das Tool ja mal ausprobiern und ggf. Berichten wie es bei euch funktioniert.

    Gruß
    Wolke

    Einmal editiert, zuletzt von wolkenloser (26. März 2006 um 15:57)

  • Du kannst ja mal einen neuen User auf deinem Rechner anlegen und dich dann als dieser anmelden.
    Hinterher meldest du dich wieder "normal an" und startest mal Profilcopy.

    Jetzt legst du noch eine User an und meldest dich anschließend wieder an.

    Wenn Du hinterher die Spuren wieder löschen willst, mußt Du die User und deren Profile löschen.

    Gruß
    Wolke

  • Hallo

    Ich habe noch eine Fehler gefunden.
    ganz am ende des Scripts wo die NTUSER.DAT kopiert wird habe ich vergessen beim kopieren das "überschreiben" Flag zu setzen, somit wurde die bestehende NTUSER.DAT nicht überschrieben.
    Das ist jetzt korrigiert.

    Gruß
    Wolke

  • Hi mein 1. post

    habe das Script probiert

    funktionierte nicht ganz mußte am Schluß folgendes einfügen

    exit
    EndIf
    EndFunc

    und in zeile8

    mußte ich folgenden ändern
    $profilname = @HomeDrive & "\Dokumente und Einstellungen" & \Default User"; Voreinstellung

    trotzdem funktioniert es nicht ich bekomme folgende Fehlermeldung

    Zitat

    Backupverzeichnis der Registry nicht gefunden:c:\temp7_19_2007\*.*

    in diesem Tempo Ordner gibt es einen Ordner 7_19_2007_10_28_53

    kann mir jemand helfen muß bald 100 Profile kopieren

  • Es ist ein Fehler in der Ermittlung des Datums.
    Hier der verbesserte Code

    Das mit dem Backupverzeichnis funktioniert nicht immer.
    Führe das Programm dann einfach noch einmal aus.
    Beim zweiten mal klappts i.d.R

    Da hängt wohl damit zudammen das das Backupprogramm manchmal "zu langsam ist"

    Warscheinlich könnte ien Sleep an der richtigen Stelle helfen.
    Ist aber schon so lange her

    Spoiler anzeigen
    [autoit][/autoit] [autoit][/autoit] [autoit]

    #include <process.au3>
    #include <_CopyDirWithProgress.au3>
    #include <Array.au3>

    [/autoit] [autoit][/autoit] [autoit]

    Opt("TrayIconDebug", 1); zeigt am trayicon welchen Befehl das Script gerade Ausführt
    dim $profileLabel, $Checkbox1, $20, $21=0, $22=0, $23=0, $24=0, $25=0, $Checkbox1, $Checkbox2, $Checkbox3, $Checkbox4, $Checkbox5, $Checkbox6, $Form1
    dim $profileLabel,$profilauto, $profilquick, $profilfavoriten, $profildesktop, $profilHKCU, $var1, $mon2, $mday2
    ;~ dim $CMDLINE[6]
    $profilname = @HomeDrive & "\Dokumente und Einstellungen\" & "Default User"; Voreinstellung
    FileInstall("C:\Dokumente und Einstellungen\dmeyer\Desktop\AU3\DefaulUserReg\pcwRegBackup.exe",@TempDir & "\" , 1)
    ;~ Run("explorer " & @TempDir)
    ;~ DirCreate(@TempDir & "\" & @MON & "_" & @MDAY & "_" & @YEAR & "_" & @HOUR & "_" & @MIN & "_" & @SEC)

    [/autoit] [autoit][/autoit] [autoit]

    $mon = StringLeft(@MON,1);~ MsgBox(0,"erste Stelle des Monats",$mon)
    If $mon = 0 then
    $mon2 = StringRight(@MON,1);entfernt führende Nullen im Monat für die Abfrage des Verzeichnises
    Else
    $mon2 = @MON
    EndIf
    ;~ MsgBox(0,"Monat = ",$mon2)

    [/autoit] [autoit][/autoit] [autoit]

    $mday = StringLeft(@MDAY,1);~ MsgBox(0,"erste Stelle des Tages",$mon)
    If $mday = 0 then
    $mday2 = StringRight(@MDAY,1);entfernt führende Nullen im Tag für die Abfrage des Verzeichnises
    ;~ MsgBox(0,"Tag = ",$mday2)
    Else
    $mday2 = @mday
    EndIf

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    $searchstring = $mon2 & "_" & $mday2 & "_" & @YEAR & "_" & @HOUR & "_" & @MIN & "*.*"
    $befehl ='Title NTUSER.DAT wird extrahiert - Achtung kurzzeitige hohe CPU Last && ' & @TempDir & "\pcwRegBackup.exe /b"
    MsgBox(0,"suchstring" & @MDAY,$searchstring,2)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    ; Programmstart
    If Not $CMDLINE[0] Then ; kkein Komandozeilenparameter übergeben -> GUI Starten
    menue()
    Else ; Komandozeilenparameter auswerten
    ;~ _ArrayDisplay($CMDLINE,"")
    $array_anzahl=$CMDLINE[0]

    If $array_anzahl = 1 Then
    If $CMDLINE[1] = "/a" Then $21 = 1
    If $CMDLINE[1] = "/s" Then $22 = 1
    If $CMDLINE[1] = "/f" Then $23 = 1
    If $CMDLINE[1] = "/d" Then $24 = 1
    If $CMDLINE[1] = "/HKCU" Then $25 = 1
    If $21=0 And $22=0 And $23=0 And $24=0 And $25=0 Then
    MsgBox(4096,"Fehler"," keine passende Argumente übergeben" & @cr & "Mögliche Optionen:" & @CR & "/a ->Autostart Ordner kopieren" & @CR & "/s ->Schnellstartleiste kopieren" & @CR & "/f ->Favoriten kopieren" & @CR & "/d -> Desktop kopieren" & @CR & "/HKCU ->NTUSER.DAT des aktuellen Benutzers in das Default User Profil kopieren")
    EndIf
    EndIf

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    If $array_anzahl = 2 Then
    If $CMDLINE[1] = "/a" Or $CMDLINE[2] = "/a" Then $21 = 1
    If $CMDLINE[1] = "/s" Or $CMDLINE[2] = "/s" Then $22 = 1
    If $CMDLINE[1] = "/f" Or $CMDLINE[2] = "/f" Then $23 = 1
    If $CMDLINE[1] = "/d" Or $CMDLINE[2] = "/d" Then $24 = 1
    If $CMDLINE[1] = "/HKCU" Or $CMDLINE[2] = "/HKCU" Then $25 = 1
    If $21=0 And $22=0 And $23=0 And $24=0 And $25=0 Then
    MsgBox(4096,"Fehler"," keine passende Argumente übergeben" & @cr & "Mögliche Optionen:" & @CR & "/a ->Autostart Ordner kopieren" & @CR & "/s ->Schnellstartleiste kopieren" & @CR & "/f ->Favoriten kopieren" & @CR & "/d -> Desktop kopieren" & @CR & "/HKCU ->NTUSER.DAT des aktuellen Benutzers in das Default User Profil kopieren")
    EndIf
    EndIf

    If $array_anzahl = 3 Then
    If $CMDLINE[1] = "/a" Or $CMDLINE[2] = "/a" or $CMDLINE[3] = "/a" Then $21 = 1
    If $CMDLINE[1] = "/s" Or $CMDLINE[2] = "/s" or $CMDLINE[3] = "/s" Then $22 = 1
    If $CMDLINE[1] = "/f" Or $CMDLINE[2] = "/f" or $CMDLINE[3] = "/f" Then $23 = 1
    If $CMDLINE[1] = "/d" Or $CMDLINE[2] = "/d" or $CMDLINE[3] = "/d" Then $24 = 1
    If $CMDLINE[1] = "/HKCU" Or $CMDLINE[2] = "/HKCU" or $CMDLINE[3] = "/HKCU" Then $25 = 1
    If $21=0 And $22=0 And $23=0 And $24=0 And $25=0 Then
    MsgBox(4096,"Fehler"," keine passende Argumente übergeben" & @cr & "Mögliche Optionen:" & @CR & "/a ->Autostart Ordner kopieren" & @CR & "/s ->Schnellstartleiste kopieren" & @CR & "/f ->Favoriten kopieren" & @CR & "/d -> Desktop kopieren" & @CR & "/HKCU ->NTUSER.DAT des aktuellen Benutzers in das Default User Profil kopieren")
    EndIf
    EndIf

    If $array_anzahl = 4 Then
    If $CMDLINE[1] = "/a" Or $CMDLINE[2] = "/a" or $CMDLINE[3] = "/a" Or $CMDLINE[4] = "/a" Then $21 = 1
    If $CMDLINE[1] = "/s" Or $CMDLINE[2] = "/s" or $CMDLINE[3] = "/s" Or $CMDLINE[4] = "/s" Then $22 = 1
    If $CMDLINE[1] = "/f" Or $CMDLINE[2] = "/f" or $CMDLINE[3] = "/f" Or $CMDLINE[4] = "/f" Then $23 = 1
    If $CMDLINE[1] = "/d" Or $CMDLINE[2] = "/d" or $CMDLINE[3] = "/d" Or $CMDLINE[4] = "/d" Then $24 = 1
    If $CMDLINE[1] = "/HKCU" Or $CMDLINE[2] = "/HKCU" or $CMDLINE[3] = "/HKCU" Or $CMDLINE[4] = "/HKCU" Then $25 = 1
    If $21=0 And $22=0 And $23=0 And $24=0 And $25=0 Then
    MsgBox(4096,"Fehler"," keine passende Argumente übergeben" & @cr & "Mögliche Optionen:" & @CR & "/a ->Autostart Ordner kopieren" & @CR & "/s ->Schnellstartleiste kopieren" & @CR & "/f ->Favoriten kopieren" & @CR & "/d -> Desktop kopieren" & @CR & "/HKCU ->NTUSER.DAT des aktuellen Benutzers in das Default User Profil kopieren")
    EndIf
    EndIf

    If $array_anzahl = 5 Then
    If $CMDLINE[1] = "/a" Or $CMDLINE[2] = "/a" or $CMDLINE[3] = "/a" Or $CMDLINE[4] = "/a" or $CMDLINE[5] = "/a" Then $21 = 1
    If $CMDLINE[1] = "/s" Or $CMDLINE[2] = "/s" or $CMDLINE[3] = "/s" Or $CMDLINE[4] = "/s" or $CMDLINE[5] = "/s" Then $22 = 1
    If $CMDLINE[1] = "/f" Or $CMDLINE[2] = "/f" or $CMDLINE[3] = "/f" Or $CMDLINE[4] = "/f" or $CMDLINE[5] = "/f" Then $23 = 1
    If $CMDLINE[1] = "/d" Or $CMDLINE[2] = "/d" or $CMDLINE[3] = "/d" Or $CMDLINE[4] = "/d" or $CMDLINE[5] = "/d" Then $24 = 1
    If $CMDLINE[1] = "/HKCU" Or $CMDLINE[2] = "/HKCU" or $CMDLINE[3] = "/HKCU" Or $CMDLINE[4] = "/HKCU" or $CMDLINE[5] = "/HKCU" Then $25 = 1
    If $21=0 And $22=0 And $23=0 And $24=0 And $25=0 Then
    MsgBox(4096,"Fehler"," keine passende Argumente übergeben" & @cr & "Mögliche Optionen:" & @CR & "/a ->Autostart Ordner kopieren" & @CR & "/s ->Schnellstartleiste kopieren" & @CR & "/f ->Favoriten kopieren" & @CR & "/d -> Desktop kopieren" & @CR & "/HKCU ->NTUSER.DAT des aktuellen Benutzers in das Default User Profil kopieren")
    EndIf
    EndIf


    If $array_anzahl = 6 Then
    If $CMDLINE[1] = "/a" Or $CMDLINE[2] = "/a" or $CMDLINE[3] = "/a" Or $CMDLINE[4] = "/a" or $CMDLINE[5] = "/a" or $CMDLINE[6] = "/a" Then $21 = 1
    If $CMDLINE[1] = "/s" Or $CMDLINE[2] = "/s" or $CMDLINE[3] = "/s" Or $CMDLINE[4] = "/s" or $CMDLINE[5] = "/s" or $CMDLINE[6] = "/s" Then $22 = 1
    If $CMDLINE[1] = "/f" Or $CMDLINE[2] = "/f" or $CMDLINE[3] = "/f" Or $CMDLINE[4] = "/f" or $CMDLINE[5] = "/f" or $CMDLINE[6] = "/f" Then $23 = 1
    If $CMDLINE[1] = "/d" Or $CMDLINE[2] = "/d" or $CMDLINE[3] = "/d" Or $CMDLINE[4] = "/d" or $CMDLINE[5] = "/d" or $CMDLINE[6] = "/d" Then $24 = 1
    If $CMDLINE[1] = "/HKCU" Or $CMDLINE[2] = "/HKCU" or $CMDLINE[3] = "/HKCU" Or $CMDLINE[4] = "/HKCU" or $CMDLINE[5] = "/HKCU" or $CMDLINE[6] = "/HKCU" Then $25 = 1
    If $21=0 And $22=0 And $23=0 And $24=0 And $25=0 Then
    MsgBox(4096,"Fehler"," keine passende Argumente übergeben" & @cr & "Mögliche Optionen:" & @CR & "/a ->Autostart Ordner kopieren" & @CR & "/s ->Schnellstartleiste kopieren" & @CR & "/f ->Favoriten kopieren" & @CR & "/d -> Desktop kopieren" & @CR & "/HKCU ->NTUSER.DAT des aktuellen Benutzers in das Default User Profil kopieren")
    EndIf
    EndIf
    ;~ MsgBox(0,"",$21 & "-" & $22 & "-" & $23 & "-" & $24 & "-" & $25)
    kopiere_ProfilOrdner()
    EndIf

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    Func MENUE()
    #include <GUIConstants.au3>
    ; == GUI generated with Koda ==);
    $Form1 = GUICreate("XP ProfilCopy", 800, 237, 192, 125)
    $Button3 = GUICtrlCreateButton("wählen", 100, 24, 49, 17, 0)
    $Checkbox1 = GUICtrlCreateLabel("Profilordner ", 24, 24, 70, 17)
    $Checkbox2 = GUICtrlCreateCheckbox("Autostart kopieren", 24, 48, 153, 17)
    $Checkbox3 = GUICtrlCreateCheckbox("Schnellstartleiste kopieren", 24, 72, 153, 17)
    $Checkbox4 = GUICtrlCreateCheckbox("Favoriten kopieren", 24, 96, 153, 17)
    $Checkbox5 = GUICtrlCreateCheckbox("Desktop kopieren", 24, 120, 153, 17)
    $Checkbox6 = GUICtrlCreateCheckbox("NTUSER.DAT (HKCU) kopieren", 24, 148, 173, 17)
    $Button1 = GUICtrlCreateButton("OK", 24, 200, 73, 25, 0)
    $Button2 = GUICtrlCreateButton("Abbruch", 112, 200, 73, 25, 0)

    [/autoit] [autoit][/autoit] [autoit]

    $profileLabel = GUICtrlCreateLabel($profilname, 248, 24, 400, 17)
    $profilauto = GUICtrlCreateLabel($profilname & "\Startmenü\Programme\Autostart", 248, 48, 400, 17)
    $profilquick = GUICtrlCreateLabel($profilname & "\Anwendungsdaten\Microsoft\Internet Explorer\Quick Launch", 248, 72, 600, 17)
    $profilfavoriten = GUICtrlCreateLabel($profilname & "\Favoriten",248, 96, 400, 17)
    $profildesktop = GUICtrlCreateLabel($profilname & "\Desktop",248, 120, 400, 17)
    $profilHKCU = GUICtrlCreateLabel($profilname ,248, 148, 400, 17)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    GUISetState(@SW_SHOW)
    While 1
    $msg = GuiGetMsg()
    Select
    Case $msg = $GUI_EVENT_CLOSE
    ExitLoop

    Case $msg = $Button3
    profilordnerwaehlen()

    Case $msg = $Button1
    OK()

    Case $msg = $Button2;Abbruch
    Exit


    Case Else
    ;;;;;;;
    EndSelect
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    EndFunc

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    Func profilordnerwaehlen()
    $var1 = $profilname
    ;~ FileSelectFolder ( "dialog text", "root dir" [, flag [, "initial dir"]] )
    $profilname = FileSelectFolder("Bitte wählen sie den Profilordner",@HomeDrive & "\Dokumente und Einstellungen\",1)
    GUICtrlSetData($profileLabel,$profilname)
    GUICtrlSetData($profilauto,$profilname & "\Startmenü\Programme\Autostart")
    GUICtrlSetData($profilquick,$profilname & "\Anwendungsdaten\Microsoft\Internet Explorer\Quick Launch")
    GUICtrlSetData($profilfavoriten, $profilname & "\Favoriten")
    GUICtrlSetData($profildesktop, $profilname & "\Desktop")
    GUICtrlSetData($profilHKCU,$profilname)
    ControlCommand("","",$Checkbox1,"Check", "")
    ;~ MsgBox(0,"",$var1 & @cr & $profilname)
    EndFunc

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    Func OK()
    ;~ $20 = GUICtrlRead($Checkbox1);Profil kopieren
    $21 = GUICtrlRead($Checkbox2);Autostart kopieren
    $22 = GUICtrlRead($Checkbox3);Schnellstartleiste kopieren
    $23 = GUICtrlRead($Checkbox4);Favoriten kopieren
    $24 = GUICtrlRead($Checkbox5);Desktop kopieren
    $25 = GUICtrlRead($Checkbox6);NTUSER.DAT (HKCU) kopieren
    GUIDelete($Form1)

    kopiere_ProfilOrdner()
    EndFunc

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    Func kopiere_ProfilOrdner2()
    ;~ MsgBox(0,"",$21 & "-" & $22 & "-" & $23 & "-" & $24 & "-" & $25 & @cr & $profilname)
    If $21 = 1 Then _CopyDirWithProgress(@StartupDir, $profilname & "\Startmenü\Programme\Autostart")
    If $22 = 1 Then _CopyDirWithProgress(@AppDataDir & "\Microsoft\Internet Explorer\Quick Launch", $profilname & "\Anwendungsdaten\Microsoft\Internet Explorer\Quick Launch")
    If $23 = 1 Then _CopyDirWithProgress(@FavoritesDir, $profilname & "\Favoriten")
    If $24 = 1 Then _CopyDirWithProgress(@DesktopDir, $profilname & "\Desktop")
    If $25 = 1 Then copy_NTUSER_DAT()
    EndFunc

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    Func kopiere_ProfilOrdner()
    ;~ MsgBox(0,"",$21 & "-" & $22 & "-" & $23 & "-" & $24 & "-" & $25 & @cr & $profilname)
    If $21 = 1 Then DirCopy(@StartupDir, $profilname & "\Startmenü\Programme\Autostart", 1)
    If $22 = 1 Then DirCopy(@AppDataDir & "\Microsoft\Internet Explorer\Quick Launch", $profilname & "\Anwendungsdaten\Microsoft\Internet Explorer\Quick Launch", 1)
    If $23 = 1 Then DirCopy(@FavoritesDir, $profilname & "\Favoriten", 1)
    If $24 = 1 Then DirCopy(@DesktopDir, $profilname & "\Desktop", 1)
    If $25 = 1 Then copy_NTUSER_DAT()
    EndFunc

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    Func copy_NTUSER_DAT()
    SplashTextOn("NTUSER DAT von [" & @UserName & "] wird kopiert","Die NTUSER.DAT des aktuellen Benutzers wird nun kopiert" & @CR & "Dies entspricht dem Registry-Zweig ->HKCU" & @CR & "Die dort hinterlegten Einstellungen gelten dann für jedes neuangelegte Profil" & @CR & @CR & "Bitte etwas Geduld...",560, 150, @DesktopWidth/2-280, 20)
    $isfile = FileExists(@TempDir & "\pcwRegBackup.exe")
    if $isfile = 0 Then MsgBox(0, "Error", "[pcwRegBackup.exe] nicht in " & @TempDir & " gefunden:")
    RunWait(@ComSpec & " /c " & $befehl, "", @SW_HIDE)
    FileDelete(@TempDir & "\pcwRegBackup.exe")
    SplashOff()

    [/autoit] [autoit][/autoit] [autoit]

    $search = FileFindFirstFile(@TempDir & "\" & $searchstring)
    If $search = -1 Then
    MsgBox(0, "Error", "Backupverzeichnis der Registry nicht gefunden:" & @TempDir & "\" & $searchstring )
    Exit
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    $dir = FileFindNextFile($search)

    [/autoit] [autoit][/autoit] [autoit]

    ;~ MsgBox(0,"gefundenes Verzeichnis",$dir,2)
    $msg = MsgBox(1,"kopieren der extrahierten NTUSER.DAT","NTUSER.DAT von [" & @UserName & "] wird jetzt in das Profil von [" & $profilname & "] kopiert", 2)
    If $msg = 2 Then Exit
    FileCopy($profilname & "\" & "NTUSER.DAT", $profilname & "\" & "NTUSER.DAT" & "." & @MON & "_" & @MDAY & "_" & @YEAR & "_" & @HOUR & "_" & @MIN & "_" & @SEC , 1)
    MsgBox(0,"vergleich",@TempDir & "\" & $dir & "\" & "NTUSER.DAT" & @cr & $profilname, 5)
    $copylevel = FileCopy(@TempDir & "\" & $dir & "\" & "NTUSER.DAT",$profilname, 1)
    If $copylevel = 0 Then
    MsgBox(4096,"FEHLER", "Es ist ein Fehler beim kopieren aufgetreten. - Bitte überprüfen sie das Zielverzeichnis")
    Run("explorer " & $profilname)
    EndIf
    Exit
    EndFunc

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit]

    Gruß
    Wolke

  • ok funktioniert jetzt zeile 232 Sleep(5000)

    Einmal editiert, zuletzt von Bug User (19. Juli 2007 um 11:24)

  • Oh, eine PN hatte ich gar nicht bemerkt :)

    >Ich habe gerade gesehn das es so nicht ganz funktioniert. wie kann ich den >gesamten user ordner zum neuen user kopieren?
    >
    >hast du da eine Idee??

    Nun ja, Profilcopy ist dazu gedacht einem neu installiertem Rechner ein Standartaussehen für alle User zu geben da man ja sonst alle Einstellungen (besorders die Exploreransicht, Aussehen des Dektops, Theme usw..)immer wieder auf neue machen muß.

    Fürs ganze Profil gibt es mit Boardmitteln die Möglichkeitsich über ein drittes Konto mit ADMIN Rechten anzumelden und dann unter Systemeigenschaften unter den Profilen dann eins zu kopieren zu einem neuen Userordner.

    Es geht dir warscheinlich auch um den Ordner Anwendungsdaten usw...
    Da muß ich passen, das gilt auszuprobieren und die gewünschten Pfade mit dazunehmen.
    Ansonsten kannst Du in der GUI Oberfäche von dem Autoitscript ja z.B Favoriten, Desktop usw auswählen.

    Gruß
    Wolke