charlieone 10 Geschrieben 12. September 2006 Melden Geschrieben 12. September 2006 Hallo Freunde der Nacht, ich habe ein Scriptchen geschrieben in Anlehnung an: Copy a Folder Using WMI Bevor ich mein Script poste, das interessante und der Grund des Beitrags: Als ich das Script schrieb und testete funktionierte es wunderbar auf Win2k Prof und Server. Aber nicht auf Win2k3. Dort werden nämlich nur die Dateien unterhalb des Ordners kopiert und nicht wie bei Win2k, Dateien und Unterverzeichnisse. Hat jemand von euch eine Idee? Was besseres als an den \ bei den Pfadangaben rumzuspielen fiel mir nicht ein und ich habe schon alle möglichen und unmöglichen Kombinationen durch. ' Init 'Option Explicit ' Konst. ForAppending = 8 ' Vars dim objFolder strComputer = "." QuellPfad = "c:\\Scripts" BackupPfad = "D:\Archive\" neuVerz = aktDat() ' ErrorLogfile erstellen errFName = "err" & aktDat() & ".log" Set objFSO = CreateObject("Scripting.FileSystemObject") 'tschuess Remote-Funkt. Set objErrFile = objFSO.CreateTextFile(BackupPfad & errFName) objErrFile.WriteLine("Erstellt: " & now() ) objErrFile.WriteLine("Mögliche Stati:") objErrFile.WriteLine("0 - alles i. O.; 2 - Access was denied.") objErrFile.WriteLine("8 - An unspecified failure occurred.; 9 - The name specified was invalid.") objErrFile.WriteLine("10 - The object specified already exists.; 11 - The file system is not NTFS.") objErrFile.WriteLine("12 - The platform is not Windows*NT or Windows*2000.; 13 - The drive is not the same.") objErrFile.WriteLine("14 - The directory is not empty.; 15 - There has been a sharing violation.") objErrFile.WriteLine("16 - The start file specified was invalid.; 17 - A privilege required for the operation is not held.") objErrFile.WriteLine("21 - A parameter specified is invalid.") objErrFile.WriteLine("----------------------------------------------------------------------------------------------------") objErrFile.Close ' Connecten 'WMI connecten Set objWMIService = GetObject _ ("winmgmts:\\" & strComputer & "\root\cimv2") 'Quelle nach Verz. kopieren Set colFolders = objWMIService.ExecQuery _ ("SELECT * FROM Win32_Directory WHERE Name = '" & QuellPfad & "'") 'Wscript.Echo colFolders.Name For Each objFolder in colFolders errRes = objFolder.Copy(BackupPfad & neuVerz ) 'Wscript.Echo errResults wriLog("autoBackup :: " & objFolder.Name & " kopiert. Status: " & errRes) Next 'Garbage ' connections closen Set colFolders = nothing Set objWMIService = nothing wriLog("Beendet: " & now()) ''''''''''''''''''' '' Hilfs-Funktionen ''''''''''''''''''' 'Funktion: aktuelles Datum in Format ttmmjj generieren function aktDat() monat = DatePart("m", Date) tag = DatePart("d", Date) 'wscript.echo len(monat) if Len(monat) = 1 then monat = 0 & monat '(Datepart("m", Date)) 'else ' monat = (DatePart("m", Date)) end if if Len(tag) = 1 then tag = 0 & tag end if datum = tag & monat & DatePart("yyyy", Date) 'Value aktDat = datum end function 'Funktion: String in Logfile anhaengen function wriLog(str) ' AS String) Set objErrFile = objFSO.OpenTextFile(BackupPfad & errFName, 8) objErrFile.WriteLine(str) '& "Erstellt: " & Date & " " & now()'" String?: " & IsNumeric(datum) objErrFile.Close end function Vielen Dank im voraus für Eure Mithilfe und wachsamen Augen charlieone
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden