charlieone 10 Geschrieben 12. September 2006 Melden Teilen 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 Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.