Certains de mes collaborateurs me faisaient remarquer qu’il leur était souvent difficile de savoir s’ils étaient connectés à distance à un PC physique ou à une machine virtuelle Hyper-V. Ceci impacte notamment la façon dont ils doivent y insérer un ISO.
J’ai trouvé sur http://blogs.msdn.com/b/virtual_pc_guy/archive/2011/01/07/what-physical-computer-am-i-on.aspx une solution simple.
- Créez sur le PC un fichier texte avec l’extension .vbs
- Saisissez le texte suivant dans ce fichier et enregistrez-le
‘ || Script begins
‘
‘ Setup constant
const HKEY_LOCAL_MACHINE = &H80000002
‘ Setup registry object (this is a single line)
Set oReg=GetObject(“winmgmts:{impersonationLevel=impersonate}!\.rootdefault:StdRegProv”)
‘ Set the key path and values to look at
strKeyPath = “SOFTWAREMicrosoftVirtual MachineGuestParameters”
strValueName1 = “HostName”
strValueName2 = “VirtualMachineName”
‘ Get the values from the registry
oReg.GetStringValue HKEY_LOCAL_MACHINE, strKeyPath, strValueName1, dwValue1
oReg.GetStringValue HKEY_LOCAL_MACHINE, strKeyPath, strValueName2, dwValue2
‘ Display the results
WScript.Echo “L’hôte Hyper-V de cette machine virtuelle se nomme : ” & dwValue1
WScript.Echo “Le nom de la machine virtuelle est : ” & dwValue2
‘
‘ || Script ends
- Double-cliquez le fichier
Vous obtiendrez l’affichage ci-dessous :
Hello,
BGINFO est plus sympa car il affiche via le papier peint des information (dynamiques !) sur la machine IP, OS, ….