webentwicklung-frage-antwort-db.com.de

Anderes als die Host-Uhrzeit einstellen

Mit der virtuellen Box können Sie die Uhrzeit Ihrer virtuellen Maschine anders als die Host-Uhrzeit einstellen. Sprich 1 Jahr in die Vergangenheit.

Wenn ich die von Microsoft bereitgestellten Windows XP-Images ausführen wollte, klicken Sie hier.
http://www.Microsoft.com/en-us/download/details.aspx?displaylang=de&id=11575

Für das XP-Image gilt Folgendes:

Expires: This image will shutdown and become completely unusable on February 14, 2013.

Dies ist eine der besseren Möglichkeiten, um IE 6 und IE 7 zu testen. Andere XP typische Tests.

32
nelaaro

Das ist überhaupt kein Problem. Denken Sie daran, die Zeitsynchronisierung in den VirtualBox Guest Additions zu deaktivieren, und stellen Sie dann das Datum und die Uhrzeit in der virtuellen Maschine nach Ihren Wünschen ein. Es besteht auch die Möglichkeit, das virtuelle BIOS aufzurufen und dort Datum und Uhrzeit einzustellen, falls dies zum Zeitpunkt der Installation erforderlich ist.

Dieser Befehl deaktiviert die Synchronisation:
http://www.virtualbox.org/manual/ch09.html#disabletimesync

VBoxManage setextradata "VM name" "VBoxInternal/Devices/VMMDev/0/Config/GetHostTimeDisabled" 1

Mit der folgenden Option können Sie einen Versatz in Millisekunden festlegen: http://www.virtualbox.org/manual/ch08.html#vboxmanage-modifyvm

VBoxManage modifyvm "VM name" --biossystemtimeoffset <msec>
38
Stefan Seidel

Beispiel eines Windows PowerShell-Skripts

startVM.ps1

# Starts the VM always on the date 12/30/2016

$tempo = ""+([datetime]"12/30/2016" - [datetime]::Now).TotalMilliseconds
$tempo = ""+[math]::Round($tempo)
$nome = "virtualMachineName"

& ${env:ProgramFiles}\Oracle\VirtualBox\VBoxManage setextradata $nome "VBoxInternal/Devices/VMMDev/0/Config/GetHostTimeDisabled" 1

& ${env:ProgramFiles}\Oracle\VirtualBox\VBoxManage modifyvm $nome --biossystemtimeoffset $tempo

& ${env:ProgramFiles}\Oracle\VirtualBox\VBoxManage startvm $nome
3
eliseu

Basierend auf dem obigen Beispiel ".ps1" (Windows PowerShell-Skript) habe ich eine reguläre ".bat" -Skriptdatei geschrieben, um die Uhrzeit zu ändern, zu der die virtuelle Maschine der VirtualBox gestartet wird.

Die gewünschte Startzeit wird bei der Variablen "TEMPO_START_TIMESTAMP" im Epochenformat eingestellt. Sie können Ihre gewünschte Startzeit epoh Äquivalent bei " http://www.timestampconvert.com/ " erhalten.

Der Name der zu startenden virtuellen Maschine der VirtualBox wird in der Variablen "NOME" benötigt (die gleiche Bezeichnung wie im obigen ".ps1" -Skript).

echo off
echo %time%

set NOME="Windows_7_x64"

set TEMPO_CS_2_MS=0
set TEMPO_S_2_MS=000

rem # Starts the VM always on the date 07/11/2014 - 11h58
rem http://www.timestampconvert.com/

set   TEMPO_START_TIMESTAMP=1415361480

for /f "delims=" %%x in ('cscript /nologo toEpoch.vbs') do set Epoch=%%x
rem %Epoch%

set TEMPO_CURRENT_TIMESTAMP=%Epoch%
rem set TEMPO_CURRENT_TIMESTAMP=1544518714

set /A TEMPO_TEMP=(%TEMPO_START_TIMESTAMP%-%TEMPO_CURRENT_TIMESTAMP%)

call set TEMPO=%TEMPO_TEMP%%TEMPO_S_2_MS%
rem %TEMPO_TEMP%
rem %TEMPO%

c:\Progra~1\Oracle\VirtualBox\VBoxManage setextradata %NOME% "VBoxInternal/Devices/VMMDev/0/Config/GetHostTimeDisabled" 1
c:\Progra~1\Oracle\VirtualBox\VBoxManage modifyvm %NOME% --biossystemtimeoffset %TEMPO%
c:\Progra~1\Oracle\VirtualBox\VBoxManage startvm %NOME%

Sie benötigen außerdem die aktuelle Uhrzeit im epoh-Format. Verwenden Sie hierzu das folgende Skript (speichern Sie es unter "toEpoch.vbs". Dieses Visual Basic-Skript wird aus dem obigen ".bat" -Skript aufgerufen):

WScript.Echo DateDiff("s", "01/01/1970 00:00:00", Now())

Um die virtuelle Maschine auszuführen, führen Sie einfach die obige ".bat" -Skriptdatei aus. Die Benutzeroberfläche "Oracle VM VirtualBox Administration" muss nicht geöffnet werden.

Ich hoffe das hilft.

Grüße

0
Txane