Win7下VHD文件右键增强实现代码(vbs+注册表)
作者:
1、保存以下代码到:c:\windows\system32\vdm.vbs
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:\windows\system32\diskpart.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、导入注册表文件:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Virtual.Machine.HD\Shell]
@="none"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Virtual.Machine.HD\Shell\Dismount]
@="分离 VHD(&D)"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Virtual.Machine.HD\Shell\Dismount\command]
@="\"C:\\windows\\system32\\wscript.exe\" C:\\Windows\\System32\\vdm.vbs /D \"%1\""
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Virtual.Machine.HD\Shell\Mount]
@="挂载 VHD(&M)"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Virtual.Machine.HD\Shell\Mount\command]
@="\"C:\\windows\\system32\\wscript.exe\" C:\\Windows\\System32\\vdm.vbs /M \"%1\""
[HKEY_CLASSES_ROOT\.vhd]
@="Virtual.Machine.HD"
文件打包下载:VHD 右键增强