分類:程式
WshShell 對象
ProgID Wscript.Shell
檔案名稱 WSHom.Ocx
CLSID F935DC22-1CF0-11d0-ADB9-00C04FD58A0B
IID F935DC21-1CF0-11d0-ADB9-00C04FD58A0B
下表說明和 WshShell 對象有關的屬性。
屬性 說明
Environment 返回 WshEnvironment 集合對象。
SpecialFolders 使用 WshSpecialFolders 對象提供對 Windows shell 檔案夾的訪問,如案頭檔案夾,開始菜單檔案夾和個人文檔檔案夾。
下表說明和 WshShell 對象有關的方法。
方法 說明
CreateShortcut 建立並返回 WshShortcut 對象。
ExpandEnvironmentStrings 擴充 PROCESS 環境變數並返回結果字串。
Popup 顯示包含指定訊息的訊息視窗。
RegDelete 從註冊表中刪除指定的鍵或值。
RegRead 從註冊表中返回指定的鍵或值。
RegWrite 在註冊表中設定指定的鍵或值。
Run 建立新的進程,該進程用指定的視窗樣式執行指定的命令。
WshShell.Environment
Environment 屬性返回 WshEnvironment 對象。
文法
WshShell.Environment ( [strType]) = objWshEnvironment
注釋
若 strType 指定了環境變數所處的位置,可能值為 "System"、"User"、"Volatile" 和 "Process"。若未提供 strType,則該方法在 Windows NT 中檢索系統內容變數或在 Windows 95 中檢索進程環境變數。
對於 Windows 95,strType 參數僅支援 "Process"。
下列變數是由 Windows 作業系統提供的。指令碼也可擷取由其他應用程式設定的環境變數。
名稱 說明
NUMBER_OF_PROCESSORS 電腦上啟動並執行處理器數目。
PROCESSOR_ARCHITECTURE 使用者工作站使用的處理器類型。
PROCESSOR_IDENTIFIER 使用者工作站的處理器 ID。
PROCESSOR_LEVEL 使用者工作站的處理器級。
PROCESSOR_REVISION 使用者工作站的處理器版本。
OS 使用者工作站所用的作業系統。
COMSPEC 用於運行“命令提示”視窗的命令(通常為 cmd.exe)。
HOMEDRIVE 本地主磁碟機(通常為 C 磁碟機)。
HOMEPATH 使用者的預設路徑(在 Windows NT 上通常為 usersdefault)。
PATH 路徑環境變數。
PATHEXT 可執行檔的副檔名(通常為 .com、 .exe、.bat 或 .cmd)。
PROMPT 命令提示字元(通常為 $P$G)。
SYSTEMDRIVE 系統所在的本地磁碟機(例如,c:)。
SYSTEMROOT 系統目錄(例如,c:winnt)。和 WINDIR 相同。
WINDIR 系統目錄(例如 c:winnt)。和 SYSTEMROOT 相同。
TEMP 儲存臨時檔案的目錄(例如,c:temp)。使用者可更改。
TMP 儲存臨時檔案的目錄(例如,c:temp)。使用者可更改。
樣本
'' Retrieve the NUMBER_OF_PROCESSORS system environment variable
Set WshShell = Wscript.CreateObject("Wscript.Shell")
Set WshSysEnv = WshShell.Environment("SYSTEM")
Wscript.Echo WshSysEnv("NUMBER_OF_PROCESSORS")
請參閱
WshEnvironment 對象
WshEnvironment 對象
WshEnvironment 對象未直接給出,可用 WshShell.Environment 屬性來訪問。
ProgID N/A
檔案名稱 WSHom.Ocx
CLSID
IID
下表描述與 WshEnvironment 對象關聯的屬性。
屬性 說明
Item 擷取或設定指定的環境變數值。
Count 枚舉項的數目。
length 枚舉項的數目 (JScript)。
下表描述與 WshEnvironment 對象關聯的方法。
方法 說明
Remove 刪除指定的環境變數。
WshShell.SpecialFolders
SpecialFolders 屬性提供 WshSpecialFolders 對象以便訪問 Windows 的 shell 檔案夾,例如案頭檔案夾、開始菜單檔案夾和個人文檔檔案夾。
文法
WshShell.SpecialFolders = objWshSpecialFolders
樣本
'' This code fragment shows how to access the desktop folder
Set WshShell = Wscript.CreateObject("Wscript.Shell")
MsgBox "Your desktop is " & WshShell.SpecialFolders("Desktop")
請參閱
WshSpecialFolders 對象
WshSpecialFolders 對象
該對象未直接給出。要得到 WshSpecialFolders 對象,請使用 WshShell.SpecialFolders 屬性。
ProgID N/A
檔案名稱 WSHom.Ocx
CLSID
IID
下表描述與 WshSpecialFolders 對象關聯的屬性。
屬性 描述
Item 指定檔案夾的完整路徑(預設)。
Count 枚舉項的數目。
length 枚舉項的數目 (JScript) 。
WshSpecialFolders.Item
Item 屬性返回由 strFolderName 指定的檔案夾的完整路徑。它是預設屬性。
文法
WshShell.SpecialFolders.Item("strFolderName") = strFolderPath
WshShell.SpecialFolders("strFolderName") = strFolderPath
注釋
若請求的檔案夾 (strFolderName) 不可用,則 WshShell.SpecialFolders("strFolderName") 返回 NULL。例如,Windows 95 沒有 AllUsersDesktop 檔案夾,如果 strFolderName = AllUsersDesktop,則返回 NULL。
Windows 95 和 Windows NT 4.0 作業系統提供下列指定檔案夾:
AllUsersDesktop
AllUsersStartMenu
AllUsersPrograms
AllUsersStartup
Desktop
Favorites
Fonts
MyDocuments
NetHood
PrintHood
Programs
Recent
SendTo
StartMenu
Startup
Templates
樣本
'' This fragment returns the full path for the Windows Desktop folder
Set WshShell = Wscript.CreateObject("Wscript.Shell")
StrMyDesktop = WshShell.SpecialFolders("Desktop")
'' List all special folders
For Each strFolder In WshShell.SpecialFolders
MsgBox strFolder
Next
請參閱
WshShell.SpecialFolders 屬性
WshShell.CreateShortcut
CreateShortcut 方法建立 WshShortcut 對象並將其返回。如果捷徑標題以 .url 結尾,就會建立 WshURLShortcut 對象。
文法
WshShell.CreateShortcut(strPathname) = objShortcut
樣本
'' This code fragment creates a shortcut
'' to the currently executing script
Set WshShell = Wscript.CreateObject("Wscript.Shell")
Set oShellLink = WshShell.CreateShortcut("Current Script.lnk")
oShellLink.TargetPath = Wscript.ScriptFullName
oShellLink.Save
Set oUrlLink = WshShell.CreateShortcut("Microsoft Web Site.URL")
oUrlLink.TargetPath = "http://www.microsoft.com"
oUrlLink.Save
請參閱
WshShortcut 對象、WshUrlShortcut 對象
WshShortcut 對象
該對象未直接給出。要獲得 WshShortcut 對象,請使用 WshShell.CreateShortcut 方法。
ProgID N/A
檔案名稱 WSHom.Ocx
CLSID F935DC28-1CF0-11d0-ADB9-00C04FD58A0B
IID F935DC27-1CF0-11d0-ADB9-00C04FD58A0B
下表說明和 WshShortcut 對象有關的屬性。
屬性 說明
Arguments 捷徑對象的參數。
Description 捷徑對象的說明。
Hotkey 捷徑對象的熱鍵。
IconLocation 捷徑對象的表徵圖位置。
TargetPath 捷徑對象的目標路徑。
WindowStyle 捷徑對象的視窗樣式。
WorkingDirectory 捷徑對象的工作目錄。
下表說明與 WshShortcut 對象有關的方法。
方法 說明
Save 將捷徑儲存到指定的檔案系統中。
WshShortcut.Arguments
Arguments 屬性提供捷徑對象的參數。
文法
WshShortcut.Arguments = strArguments
WshShortcut.Description
Description 屬性提供捷徑對象的說明。
文法
WshShortcut.Description = strDescription
WshShortcut.Hotkey
HotKey 屬性提供捷徑對象的熱鍵。熱鍵是啟動或切換程式的鍵盤快速鍵。
文法
WshShortcut.HotKey = strHotKey
注釋
strHotKey 的BNF文法如下:
Hotkey ::= modifier* keyname
modifier ::= "ALT+" | "CTRL+" | "SHIFT+" | "EXT+"
keyname ::= "A" .. "Z" |
"0".. "9" |
"Back" | "Tab" | "Clear" | "Return" |
"Escape" | "Space" | "Prior" | ...
所有鍵的名稱都可以在 WINUSER.H 中找到。熱鍵不區分大小寫。
熱鍵只能啟用位於 Windows 案頭或 Windows“開始”菜單的捷徑。
Windows 資源管理員不接受 ESC、ENTER、TAB、SPACE、PRINT SCREEN 或 BACKSPACE,即使 WshShortcut.Hotkey 遵循 Win32 API 支援它們。因此,建議在捷徑中不要用這些鍵。
樣本
Set WshShell = Wscript.CreateObject("Wscript.WshShell")
strDesktop = WshShell.SpecialFolders("Desktop")
Set oMyShortcut = WshShell.CreateShortcut(strDesktop & "a_key.lnk")
OMyShortcut.TargetPath = "%windir%notepad.exe"
oMyShortCut.Hotkey = "ALT+CTRL+F"
oMyShortCut.Save
Wscript.Echo oMyShortCut.HotKey = "Alt+Ctrl+F"
請參閱
WshSpecialFolders 對象
WshShortcut.IconLocation
IconLocation 屬性提供捷徑對象的表徵圖位置。表徵圖位置的格式應為 "Path,index"。
文法
WshShortcut.IconLocation = strIconLocation
WshShortcut.TargetPath
TargetPath 屬性提供捷徑對象的目標路徑。
文法
WshShortcut.TargetPath = strTargetPath
WshShortcut.WindowStyle
WindowStyle 屬性提供捷徑對象的視窗樣式。
文法
WshShortcut.WindowStyle = natWindowStyle
WshShortcut.WorkingDirectory
WorkingDirectory 為一個捷徑對象提供工作目錄。
文法
WshShortcut.WorkingDirectory = strWorkingDirectory
WshShortcut.Save
Save 方法把捷徑對象儲存到由 FullName 屬性指定的位置。
文法
WshShortcut.Save
WshUrlShortcut 對象
該對象未直接給出。要擷取 WshUrlShortcut 對象,可使用 WshShell.CreateShortcut 方法。
ProgID N/A
檔案名稱 WSHom.Ocx
CLSID
IID