VirtualPC - Änderungen der VM per vba-Script übernehmen
Hallo,
der XP-Modus in Windows 7 nutzt ja VirtualPC als Umgebung.
Um eine Sicherungskopie zu erstellen fahre ich die VM per vbs herunter (falls sie läuft), verwerfe dann die Änderungen und kopiere alle Dateien weg:
Dies funktioniert auch prima.
Nun wollte ich auch eine Möglichkeit haben die Änderungen zu übernehmen und erst dann zu sichern:
Aber leider funktioniert dies nicht. Wie kann ich das bewerkstelligen?
Wie könnte ich beide Varianten in ein einziges Script packen, so dass ich eine Abfrage bekomme ob ich die Änderungen übernehmen oder verwerfen möchte?
Torsten
der XP-Modus in Windows 7 nutzt ja VirtualPC als Umgebung.
Um eine Sicherungskopie zu erstellen fahre ich die VM per vbs herunter (falls sie läuft), verwerfe dann die Änderungen und kopiere alle Dateien weg:
Dim objFileSystem
Dim objShell
Dim strZiel
Set objVS = CreateObject("VirtualPC.Application")
Set objVM = objVS.FindVirtualMachine("Windows XP Mode")
If objVM.State = 5 then
objVM.Turnoff()
WScript.Sleep 10000
End If
objVM.DiscardUndoDisks
Set objFileSystem = CreateObject("Scripting.FileSystemObject")
Set objShell = CreateObject("Wscript.Shell")
strZiel = "V:\VM - XP-Modus\Sicherungen\Kopierte Dateien\" & Right(Date,4) & "-" & Mid(Date, 4, 2) & "-" & Left(Date, 2)
If Not (objFileSystem.FolderExists(strZiel)) Then objFileSystem.CreateFolder(strZiel)
strQuelle = "V:\VM - XP-Modus\"
Set objfs = CreateObject("Scripting.FileSystemObject")
If NOT objfs.FolderExists(strZiel) Then
objfs.CreateFolder strZiel
End If
On Error Resume Next
objfs.CopyFile strQuelle & "*.*", strZiel
If Err.Number > 0 Then
MsgBox "Der Zielordner existiert bereits. Bitte erst löschen.", , "Sicherung XP-Mode Dateien ..."
Err.Clear
Else
WScript.Echo "Kopiervorgang erfolgreich beendet."
Err.Clear
End If
On Error GoTo 0
Dies funktioniert auch prima.
Nun wollte ich auch eine Möglichkeit haben die Änderungen zu übernehmen und erst dann zu sichern:
...
Set objVS = CreateObject("VirtualServer.Application")
Set objVM = objVS.FindVirtualMachine("Windows XP Mode")
objVM.commitUndoDisks()
...
Aber leider funktioniert dies nicht. Wie kann ich das bewerkstelligen?
Wie könnte ich beide Varianten in ein einziges Script packen, so dass ich eine Abfrage bekomme ob ich die Änderungen übernehmen oder verwerfen möchte?
Torsten
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 159566
Url: https://administrator.de/forum/virtualpc-aenderungen-der-vm-per-vba-script-uebernehmen-159566.html
Ausgedruckt am: 09.04.2025 um 20:04 Uhr
3 Kommentare
Neuester Kommentar
Moin Moin
Eine solche Methode kennt das Objekt objVM wohl nicht.
Siehe: http://msdn.microsoft.com/en-us/library/dd796617%28v=VS.85%29.aspx
Was passiert eigentlich wenn du den Aufruf
einfach mal weg lässt?
Gruß L.
...
objVM.commitUndoDisks()
...
Siehe: http://msdn.microsoft.com/en-us/library/dd796617%28v=VS.85%29.aspx
Was passiert eigentlich wenn du den Aufruf
...
objVM.DiscardUndoDisks
...
Gruß L.