Windows 7 下快速挂载和分离VHD文件的小脚本

1、保存以下代码为VDM.vbs,放在Windowssystem32下

Dim Args
Set Args = WScript.Arguments
TranArgs = " "
For i = 0 To Args.Count - 1
TranArgs = TranArgs & """" & Args(i) & """" & " "
Next

If Args(0) <> "-hFlag" Then
If Args(0) <> "-hWind" Then
CreateObject("Shell.Application").ShellExecute "wscript.exe", _
"""" & WScript.ScriptFullName & """" & " -hWind" & TranArgs, "", "runas", 1
WScript.Quit(5)
Else
CreateObject("Wscript.Shell").Run "cscript.exe " & _
"""" & Wscript.ScriptFullName & """" & Replace(TranArgs, "-hWind", "-hFlag"), 0, TRUE
WScript.Quit(1)
End If
Else
'Add Your Codes
Dim objShell, objExec
Set objShell = WScript.CreateObject("Wscript.Shell")
Set objExec = objShell.Exec("c:windowssystem32diskpart.exe")

objExec.StdIn.WriteLine "select vdisk file=""" & WScript.Arguments(2) & """"

Select Case Args(1)
Case "/M"
objExec.StdIn.WriteLine "attach vdisk"
objExec.StdIn.WriteLine "exit"
WScript.Quit(0)

Case "/D"
objExec.StdIn.WriteLine "detach vdisk"
objExec.StdIn.WriteLine "exit"
WScript.Quit(0)

Case Else
'other
WScript.Quit(0)
End Select

WScript.Quit(0)
End If

 2、保存以下代码为VDM.reg,导入注册表

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINESOFTWAREClassesVirtual.Machine.HDShell]
@="none"

[HKEY_LOCAL_MACHINESOFTWAREClassesVirtual.Machine.HDShellDismount]
@="分离VHD"

[HKEY_LOCAL_MACHINESOFTWAREClassesVirtual.Machine.HDShellDismountcommand]
@=""C:\windows\system32\wscript.exe" C:\Windows\System32\vdm.vbs /D "%1""

[HKEY_LOCAL_MACHINESOFTWAREClassesVirtual.Machine.HDShellMount]
@="挂载VHD"

[HKEY_LOCAL_MACHINESOFTWAREClassesVirtual.Machine.HDShellMountcommand]
@=""C:\windows\system32\wscript.exe" C:\Windows\System32\vdm.vbs /M "%1""

[HKEY_CLASSES_ROOT.vhd]
@="Virtual.Machine.HD"

原文地址:https://www.cnblogs.com/mahocon/p/6622044.html