Hallo, liebe AutoIt-Gemeinde,
ich versuche momentan, per AutoIt einen Systemsicherung zu erstellen. Was auch teilweise klappt (mit Script 1), während die anderen beiden Scripte nur bedingt auf mehren PC`s laufen (alle AutoIt-Version 3.3.6.1, alles XP SP3), aber bei manchen kommt eine Fehlermeldung (a la "... ist kein type "Object" oder so). Das ist aber nicht mein Problem, sondern wie um alles in der Welt bekomme ich eine Info, ob, wann und unter welchen Namen dies Sicherung erstellt wurde?
Man kann (könnte) auf den Laufwerken unter System Volume Information nachschauen, wenn
1. der Zugriff nicht verweigert würde und
2. ich diese komische Zahl irgendwoher bekommen würde....
Ich denke, da haben die Profis hier bestimmt bessere Ideen... , eventuell auch eleganter als meine eigene... Oder? Wie immer vielen Dank im Voraus.
GLG
WillyWu.
Ach ja und hier die "Testversionen":
Meine:
Spoiler anzeigen
;################### Systemsicherungspunkt ##############################
$PID = ProcessExists("rstrui.exe")
If $PID Then ProcessClose($PID)
ProcessWaitClose($PID)
Run(@SystemDir & "\Restore\rstrui.exe")
WinWaitActive("Systemwiederherstellung","")
Send("!E")
Sleep (2000)
Send("!W")
Sleep(2000)
Send("Standardsicherung vor Updates")
Send("{TAB}{TAB}{Enter}")
;Sleep(2000)
;Send ("!E"); erstellen
;? Check if fertig? C:\System Volume Information\_restore{ED2D09BD-82F3-42F8-94F4-D2E4E6C4584D} ???? Woher die Zahl????
Sleep(5000)
$RstruiUpd="Systemsicherung wurde erstellt am: "& @MDAY&"."&@MON&"."&@YEAR&" um: "&@HOUR&":"&@MIN&":"&@SEC & @CR
Tooltip($RstruiUpd)
WinWaitActive("Systemwiederherstellung","")
Send("!C")
;$PID = Run("rstrui.exe")
If $PID Then ProcessClose($PID)
ProcessWaitClose($PID)
;??? Auswertung?!??
;################### Systemsicherungspunkt ##############################
sowie die 2., die auf manchen PC`s laufen, auf manchen nicht, warum auch immer
Spoiler anzeigen
#include <date.au3>
;Unattended System Restore Point
;sysrestorepoint.vbs
;© Doug Knox - rev 02/11/2002
;Downloaded from http://www.dougknox.com
;Extracted from original code by Bill James - http://www.billsway.com
$sr = ObjGet("winmgmts:\\.\root\default:Systemrestore")
MsgBox(1,"Info über ObjGet/winmgmts:\\.\root\default:Systemrestore/",$sr)
$msg = "New Restore Point successfully created." & @CR
$msg = $msg & "It is listed as: " & @CR
$msg = $msg & "Standardspeicherung" ;& _NowDate & " " & Time
;Put a ; in front of the next five lines to disable the Success Failed Prompt.
If ($sr.createrestorepoint("Standardspeicherung", 0, 100)) = 0 Then MsgBox (1,"INfo",$msg)
If ($sr.createrestorepoint("Automatic Restore Point", 0, 100)) <> 0 Then MsgBox (1,"Info","Restore Point creation Failed!")
#cs
[/autoit]und diese hier:
Spoiler anzeigen
$text = InputBox("Eingabefenster", "Name des Wiederherstellungspunktes")
CreateRestorePoint($text)
Func CreateRestorePoint($sRestorePointName)
Local $objSystemRestore
$objSystemRestore = ObjGet("winmgmts:{impersonationLevel=impersonate}!root/default:SystemRestore")
If Not $objSystemRestore.createrestorepoint($sRestorePointName, 0, 100) = 0 Then SetError(1)
EndFunc
Danke wie immer im Voraus.