国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > VBScript > 正文

寫個設置命令的VBS腳本代碼

2020-03-24 19:04:06
字體:
來源:轉載
供稿:網友
復制代碼 代碼如下:
'作者:劉先勇 (Eric Liu)
'將以下代碼復制并保存為"系統命令.VBS",并運行安裝。
'安裝成功后,可通過在程序、文件或文件夾上點右鍵- 發送到- 系統命令來設置一個命令,然后在運行中就可以輸入該命令打開文件了。
'腳本運行一次后在html' target='_blank'>右鍵菜單中增加從這里運行CMD的快捷方式,還增加查找目標文件快捷方式

'On Error Resume Next
If (lcase(right(wscript.fullname,11)) "wscript.exe") then
set objShell=createObject("wscript.shell")
objShell.Run("Wscript //nologo "&chr(34)&wscript.scriptfullname&chr(34))
Wscript.Quit
end if

Set pCmd=CreateObject("WScript.Shell")
Set pFso=CreateObject("Scripting.FileSystemObject")
Set pShell = CreateObject("Shell.Application")
Set pSysEnv = CreateObject("WScript.Shell").Environment("system")
strComputer = "."
Set pWMIService = GetObject("winmgmts://" & strComputer & "/root/cimv2")

Function LGetPath(pFile)
iLastSepPos = InstrRev(pFile, "/", -1, 1)
If iLastSepPos = 0 Then
LGetPath=""
Exit Function
Else
LGetPath = Left(pFile, iLastSepPos-1)
End If
End Function

Function GetLnkTarget(linkPath)
linkPath=Replace(linkPath, "/", "http://")
Set pFiles = pWMIService.ExecQuery("Select * From Win32_ShortcutFile WHERE Name = " & "'" & linkPath & "'")
For Each pFile in pFiles
GetLnkTarget=pFile.Target
Exit For
Next
End Function

Function ListSysCmd(pFileName)
SysCmdPath=pCmd.RegRead("HKCU/Software/Microsoft/Windows/CurrentVersion/Explorer/Shell Folders/SysCmd")
Set pFolder = pFso.GetFolder(SysCmdPath)
Set pFile = pFso.OpenTextFile(pFileName, 2, True)

For Each file in pFolder.Files
linkPath=SysCmdPath & "/" & file.name
IF UCASE(Right(file.name, 4))=".LNK" Then
Set lnkFiles = pWMIService.ExecQuery("Select * From Win32_ShortcutFile WHERE Name = " & "'" & Replace(linkPath, "/", "http://") & "'")
For Each lnkFile in lnkFiles
pFile.WriteLine(linkPath & " " & lnkFile.Target)
Next
Else
pFile.WriteLine linkPath
End IF
Next
End Function

Function GetConfigPath
Set pFolder = pShell.BrowseForFolder(0, "請選擇一個目錄:", 0, "::{20D04FE0-3AEA-1069-A2D8-08002B30309D}")
If pFolder Is Nothing Then
Wscript.Quit
End If
Set pFolderItem = pFolder.Self
GetConfigPath = pFolderItem.Path
End Function

Sub SetEnv(pPath, pValue)
If pValue="" Then
pSysEnv.Remove(pPath)
Else
pSysEnv(pPath) = pValue
End IF
End Sub

Function GetEnv(pPath)
GetEnv = pSysEnv(pPath)
End Function

'判斷一個字符串是否匹配一個正則表達式
' ^/w+[@]/w+[.]/w+$ E-Mail地址
' ^[0-9-]+$ 數字
Function IsMatch(Str, Patrn)
Set r = new RegExp
r.Pattern = Patrn
IsMatch = r.test(Str)
End Function

Sub AddNewCmd(pShortCutName, pTargetPath, pCmdLocation)
IF pShortCutName "" Then
LinkDir = pCmdLocation
Set pCmdLink = pCmd.CreateShortcut(LinkDir & "/" & pShortCutName & ".lnk")
pCmdLink.TargetPath = pTargetPath
pCmdLink.WindowStyle = 1
pCmdLink.Hotkey = ""
pCmdLink.IconLocation = "%systemroot%/system32/shell32.dll,146"
pCmdLink.Description = "Shortcut Created At " & Date() & " " & Time()
pCmdLink.WorkingDirectory = LGetPath(pTargetPath)
pCmdLink.Save
End IF
End Sub

Set pArgs=Wscript.Arguments
If pArgs.Count = 0 Then '無參運行,復制自身到SendTo文件夾。

MsgBox "注意無參運行即執行安裝過程!" & VBCRLF & _
"安裝過程包括以下操作:" & VBCRLF & VBCRLF & _
"1、在發送到目錄中建立該腳本的快捷方式;" & VBCRLF & _
"2、完成安裝后可通過發送到建立快捷方式;" & VBCRLF & _
"3、所有快捷命令可通過運行(WIN+R)執行。" & VBCRLF
SysCmdPath = GetConfigPath
If SysCmdPath = "" Then WScript.Quit()

pCmd.RegWrite "HKCU/Software/Microsoft/Windows/CurrentVersion/Explorer/Shell Folders/SysCmd", SysCmdPath, "REG_SZ"
'Path = pCmd.RegRead("HKEY_LOCAL_MACHINE/SYSTEM/ControlSet001/Control/Session Manager/Environment/Path")
Path = GetEnv("Path")

If Right(SysCmdPath, 1)="/" Then SysCmdPath = Left(SysCmdPath, Len(SysCmdPath)-1)
SysCmdPathPattern ="(;)?(" & Replace(SysCmdPath, "/", "http://") & ")(//)?(;|$)"
If Not IsMatch(Path, SysCmdPathPattern) Then
Path = Path " & SysCmdPath
SetEnv "Path", Path
End If

thisFile = WScript.ScriptFullName
IF thisFile SysCmdPath & "/" & WScript.ScriptName Then
pFso.CopyFile thisFile, SysCmdPath & "/"
thisFile = SysCmdPath & "/" & WScript.ScriptName
End IF

AddNewCmd "N系統命令", thisFile, pCmd.RegRead("HKCU/Software/Microsoft/Windows/CurrentVersion/Explorer/Shell Folders/SendTo")
'在右鍵菜單中增加創建當前文件或文件夾的系統快捷命令的菜單項
pCmd.RegWrite "HKEY_CLASSES_ROOT/*/shell/G創建系統命令/command/", "WScript.exe " & thisFile & " ""%1""", "REG_SZ"
pCmd.RegWrite "HKEY_CLASSES_ROOT/Directory/shell/G創建系統命令/command/", "WScript.exe " & thisFile & " ""%1""", "REG_SZ"
'在右鍵菜單中增加在當前路徑打開CMD窗口命令的菜單項
pCmd.RegWrite "HKEY_CLASSES_ROOT/*/shell/Q在此打開CMD/command/", "CMD /K PUSHD ""%1//..""", "REG_SZ"
pCmd.RegWrite "HKEY_CLASSES_ROOT/Directory/shell/Q在此打開CMD/command/", "CMD /K PUSHD ""%1""", "REG_SZ"

'在右鍵菜單中增加在查找快捷方式位置的菜單項
pCmd.RegWrite "HKEY_CLASSES_ROOT/*/shell/W查找目標位置/command/", "WScript.exe " & thisFile & " S ""%1""", "REG_SZ"
pCmd.RegWrite "HKEY_CLASSES_ROOT/Directory/shell/W查找目標位置/command/", "WScript.exe " & thisFile & " S ""%1""", "REG_SZ"

AddNewCmd "Q", pCmd.RegRead("HKCU/Software/Microsoft/Windows/CurrentVersion/Explorer/Shell Folders/SysCmd"), pCmd.RegRead("HKCU/Software/Microsoft/Windows/CurrentVersion/Explorer/Shell Folders/SysCmd")
AddNewCmd "QC", thisFile, pCmd.RegRead("HKCU/Software/Microsoft/Windows/CurrentVersion/Explorer/Shell Folders/SysCmd")
MsgBox "安裝成功!"
ElseIf pArgs.Count = 1 Then
IF UCase(pArgs(0))="EDIT" Then '只有一個參數且為Edit時, 打開此腳本進行編輯。
pCmd.Run("Notepad.exe " & WScript.ScriptFullName)
WScript.Quit()
ElseIF UCase(pArgs(0))="LIST" Then '只有一個參數且為List時, 列出所有已經建立的快捷方式和其對應的目標文件。
ResultFile=pCmd.RegRead("HKCU/Software/Microsoft/Windows/CurrentVersion/Explorer/Shell Folders/SysCmd") & "/ListSysCmd.txt"
ListSysCmd ResultFile
pCmd.Run("Notepad.exe " & ResultFile)
WScript.Quit()
Else '只有一個參數時, 默認處理方式是建立傳入的文件路徑的快捷方式。
pShortCutName=InputBox("請輸入該快捷方式的名字:", "創建快捷命令...", "")
IF pShortCutName="" Then WScript.Quit()
AddNewCmd pShortCutName, pArgs(0), pCmd.RegRead("HKCU/Software/Microsoft/Windows/CurrentVersion/Explorer/Shell Folders/SysCmd")
End IF
ElseIf pArgs.Count = 2 Then
IF UCase(pArgs(0))="S" Then '查找快捷方式目標文件位置
'判斷是否包括/,從右鍵菜單執行會直接傳遞目標地址,從快捷方式中需要組合快捷方式的地址。
IF Instr(pArgs(1), "/") 0 And Instr(pArgs(1), ".lnk") = 0 Then '從右鍵菜單執行
pCmd.Run("Explorer.exe /select, " & pArgs(1))
Else '從命令行執行
IF Instr(pArgs(1), "/") 0 Then '全路徑.lnk路徑
linkPath=pArgs(1)
Else
linkPath=pCmd.RegRead("HKCU/Software/Microsoft/Windows/CurrentVersion/Explorer/Shell Folders/SysCmd") & "/" & pArgs(1) & ".lnk"
End IF
linkPath=Replace(linkPath, "/", "http://")
Set pFiles = pWMIService.ExecQuery("Select * From Win32_ShortcutFile WHERE Name = " & "'" & linkPath & "'")
For Each pFile in pFiles
pCmd.Run("Explorer.exe /n, /select, " & pFile.Target)
Next
End IF
Else
'FileLocation, ShortCutName
pShortCutName=pArgs(1)
AddNewCmd pShortCutName, pArgs(0), pCmd.RegRead("HKCU/Software/Microsoft/Windows/CurrentVersion/Explorer/Shell Folders/SysCmd")
End IF
End If

復制好腳本存為Syscmd.vbs或其它名稱,就可以雙擊安裝了,安裝過程很簡單,只有以下幾步.

1.雙擊開始安裝 2.選擇安裝目錄 3.安裝成功 現在再來查看一下右鍵菜單1. 創建快捷命令功能 在你要創建快捷命令的exe程序或任何其它文件上點右鍵,然后選擇快捷菜單中的"G創建系統命令",或者直接按字母G,彈出以下對話框: 直接輸入快捷命令,如QQ,快捷命令QQ就創建成功了.然后想啟動QQ時直接WIN+R打開運行窗口,并輸入QQ回車,QQ程序啟動就這么簡單 2.在這里打開CMD功能在任何文件或文件夾上點右鍵,然后選擇"Q在此打開CMD"或者直接按Q,就會以此目錄為工作目錄打開CMD窗口 3.查找目標位置功能對于Windows快捷方式,經常遇到想要查找其它文件位置的情況,一般都是點右鍵然后查屬性,查點查找文件找到,現在任何文件或文件夾上點右鍵都會有如下菜單,選擇"W查找目標位置"或直接按W,可以查找到快捷方式的目標文件或文件夾位置,也可以查找到桌面上程序的目錄位置. 直接定位文件所在目錄并打開:html教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 北票市| 长武县| 嵊州市| 惠州市| 昌黎县| 宝丰县| 沙田区| 林甸县| 安平县| 齐齐哈尔市| 新疆| 南宫市| 织金县| 额济纳旗| 武城县| 东乡县| 东莞市| 涡阳县| 繁昌县| 康定县| 洛浦县| 肥城市| 和田市| 兴业县| 阜宁县| 大竹县| 贡嘎县| 西乌珠穆沁旗| 哈密市| 博爱县| 青铜峡市| 右玉县| 绥化市| 手机| 宁河县| 三门县| 丰顺县| 万州区| 沙坪坝区| 和田市| 灌阳县|