`

Wscript.shell对象参考手册

阅读更多

Wscript.shell对象手册

分类:程序

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 PrintHoodPrograms 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

下表说明了和 WshUrlShortcut 对象有关的属性。

属性 说明
FullName URL 快捷方式对象的完整路径。
TargetPath URL 快捷方式对象的目标路径。

下表说明了和 WshUrlShortcut 对象有关的方法。

方法 说明
Save 将快捷方式保存到指定的文件系统中。

WshUrlShortcut.FullName

FullName 属性提供快捷方式对象的完整路径。

语法

WshUrlShortcut.FullName = strFullName
WshUrlShortcut.TargetPath

TargetPath 属性提供快捷方式对象的目标路径。

语法

WshUrlShortcut.TargetPath = strTargetPath

WshUrlShortcut.Save

Save 方法保存一个快捷方式,该快捷方式指向 FullName 属性指定的位置。

语法

WshUrlShortcut.Save

WshShell.ExpandEnvironmentStrings

ExpandEnvironmentStrings 方法在 strString 中扩展 PROCESS 环境变量并返回结果字符串。变量被 '%' 字符括起。

环境变量不区分大小写。

语法

WshShell.ExpandEnvironmentStrings(strString) = strExpandedString

示例

MsgBox "Prompt is " & WshShell.ExpandEnviromentStrings("%PROMPT%")

WshShell.Popup

Popup 方法显示一个弹出式消息框窗口,消息框中包含的消息由 strText 指定。该消息框的窗口标题由 strTitle 指定。若 strTitle 省略,则窗口标题为 Windows Scripting Host。

语法

WshShell.Popup(strText, [natSecondsToWait], [strTitle], [natType]) = intButton

注释

若提供 natSecondsToWait 且其值大于零,则消息框在 natSecondsToWait 秒后关闭。

natType 的含义与其在 Win32? MessageBox 函数中相同。下表显示 natType 中的值及含义。下表中的值可以组合。

按钮类型 值 说明
0 显示“确定”按钮
1 显示“确定”和“取消”按钮
2 显示“终止”、“重试”和“忽略”按钮
3 显示“是”、“否”和“取消”按钮
4 显示“是”和“否”按钮
5 显示“重试”和“取消”按钮
图标类型 值 说明
16 显示停止标记图标
32 显示问号图标
48 显示感叹号图标
64 显示信息标记图标

以上两个表并不涵盖 natType 的所有值。完整的列表请参阅 Win32 文档。

返回值 intButton 指示用户所单击的按扭编号。若用户在 natSecondsToWait 秒之前不单击按扭,则 intButton 设置为 -1 。

值 说明
1 “确定”按扭
2 “取消”按扭
3 “终止”按扭
4 “重试”按扭
5 “忽略”按扭
6 “是”按扭
7 “否”按扭

示例

Set WshShell = Wscript.CreateObject("Wscript.Shell")
WshShell.Popup "Where do you want to go today?"

请参阅Wscript.Echo 方法

Wscript.Echo

Echo 方法在窗口(Wscript.exe 中)或“命令提示符”窗口(Cscript.exe 中)显示参数。

参数用空格分隔。在 Cscript.exe 中,该方法在显示最后一个参数之后输出一对回车/换行(CR LF)。

语法

Wscript.Echo [anyArg...]

示例

Wscript.Echo
Wscript.Echo 1, 2, 3
Wscript.Echo "Windows Scripting Host is cool."

WshShell.RegDelete

RegDelete 从注册表中删除名为 strName 的键或值。

语法

WshShell.RegDelete strName

参数

strName

如果 strName 以反斜杠 () 结束,则该方法删除键而不是值。

strName 参数必须以下列之一的根键名开始:

短根键名 长根键名
HKCU HKEY_CURRENT_USER
HKLM HKEY_LOCAL_MACHINE
HKCR HKEY_CLASSES_ROOT
  HKEY_USERS
  HKEY_CURRENT_CONFIG

示例

Set WshShell = Wscript.CreateObject("Wscript.Shell")
WshShell.RegDelete "HKCUScriptEngineValue" ' Delete value "Value"
WshShell.RegDelete "HKCUScriptEngineKey" ' Delete key "Key"

请参阅WshShell.RegRead 方法、WshShell.RegWrite 方法

WshShell.RegRead

RegRead 方法返回名为 strName 的注册表键或值。

语法

WshShell.RegRead(strName) = strValue

参数

strName

如果 strName 以反斜杠 () 结束,则该方法返回键,而不是值。

strName 参数必须以下列根键名开始。

短根键名 长根键名
HKCU HKEY_CURRENT_USER
HKLM HKEY_LOCAL_MACHINE
HKCR HKEY_CLASSES_ROOT
  HKEY_USERS
  HKEY_CURRENT_CONFIG

注释

RegRead 方法仅支持 REG_SZ、REG_EXPAND_SZ、REG_DWORD、REG_BINARY 和 REG_MULTI_SZ 数据类型。若注册表有其他数据类型,RegRead 返回 DISP_E_TYPEMISMATCH。

示例

Set WshShell = Wscript.CreateObject("Wscript.Shell")
WshShell.RegRead("HKCUScriptEngineVal") ' Read from value "Val"
WshShell.RegRead("HKCUScriptEngineKey") ' Read from key "Key"

请参阅WshShell.RegDelete 方法、WshShell.RegWrite 方法

WshShell.RegWrite

RegWrite 方法设置名为 strName 的注册表键或值。

语法

WshShell.RegWrite strName, anyValue, [strType]

参数

strName

若 strName 以一个反斜杠 () 结束,则该方法设置键,而不是值。

strName 参数必须以下列根键名开头。

短根键名 长根键名
HKCU HKEY_CURRENT_USER
HKLM HKEY_LOCAL_MACHINE
HKCR HKEY_CLASSES_ROOT
  HKEY_USERS
  HKEY_CURRENT_CONFIG

anyValue

当 strType 为 REG_SZ 或 REG_EXPAND_SZ 时,RegWrite 方法自动将 anyValue 转换为字符串。若 strType 为 REG_DWORD,则 anyValue 被转换为整数。若 strType 为 REG_BINARY,则 anyValue 必须是一个整数。

strType

RegWrite 方法支持 strType 为 REG_SZ、REG_EXPAND_SZ、REG_DWORD 和 REG_BINARY。若其他的数据类型被作为 strType 传递,RegWrite 返回 E_INVALIDARG。

示例

Set WshShell = Wscript.CreateObject("Wscript.Shell")
WshShell.RegWrite "HKCUScriptEngineValue", "Some string value"
WshShell.RegWrite "HKCUScriptEngineKey", 1 "REG_DWORD"

请参阅WshShell.RegDelete 方法、WshShell.RegWrite方法

WshShell.Run

Run 方法创建一个新的进程,该进程以 intWindowStyle 窗口样式执行 strCommand。

语法

WshShell.Run (strCommand, [intWindowStyle], [blnWaitOnReturn])

参数

strCommand

在 strCommand 参数内部的环境变量被自动扩展。

intWindowStyle

这是为新进程在 STARTUPINFO 结构内设置的 wShowWindow 元素的值。其意义与 ShowWindow 中的 nCmdShow 参数相同,可取以下值之一。

名称 值 含义
SW_HIDE 0 隐藏窗口并激活另一窗口。
SW_MINIMIZE 6 最小化指定窗口并激活按 Z 序排序的下一个顶层窗口。
SW_RESTORE 9 激活并显示窗口。若窗口是最小化或最大化,则恢复到原来的大小和位置。在还原应用程序的最小化窗口时,应指定该标志。
SW_SHOW 5 以当前大小和位置激活并显示窗口。
SW_SHOWMAXIMIZED 3 激活窗口并以最大化显示该窗口。
SW_SHOWMINIMIZED 2 激活窗口并以最小化显示该窗口。
SW_SHOWMINNOACTIVE 7 最小化显示窗口。活动窗口保持活动。
SW_SHOWNA 8 以当前状态显示窗口。活动窗口保持活动。
SW_SHOWNOACTIVATE 4 按窗口最近的大小和位置显示。活动窗口保持活动。
SW_SHOWNORMAL 1 激活并显示一个窗口。若窗口是最小化或最大化,则恢复到其原来的大小和位置。

blnWaitOnReturn

如果未指定 blnWaitOnReturn 或其值为 FALSE,则该方法立即返回到脚本继续执行而不等待进程结束。

若 blnWaitOnReturn 设为 TRUE,则 Run 方法返回由应用程序返回的任何错误代码。如果未指定 blnWaitOnReturn 或其值为 FALSE,则 Run 返回错误代码 0(zero)。

示例

' This fragment launches Notepad with the current executed script
Set WshShell = Wscript.CreateObject("Wscript.Shell")
WshShell.Run ("notepad " & Wscript.ScriptFullName)
WshShell.Run ("%windir%notepad" & Wscript.ScriptFullName)
' This fragment returns the error code from the executed application
Return = WshShell.Run("notepad " & Wscript.ScriptFullName, 1, TRUE) 
分享到:
评论

相关推荐

    Wscript.shell对象手册

    Wscript.shell对象用于asp里web访问与桌面程序交互.创建方法: set objname=server.createobject("wscript.shell")

    vbscript5.5中文参考手册

    提供的"vbscript5.5中文参考手册.chm"文件是一个帮助文件,通常包含VBScript 5.5的详细文档、API参考、示例代码等内容,是学习和查询VBScript 5.5语法和功能的重要资源。读者可以通过这个手册深入理解和掌握VBScript...

    VBS脚本编程参考手册.zip

    "VBS脚本编程参考手册"是学习和掌握VBS的重要资源,通常包含VBS语法、函数、对象、事件、属性和方法的详细解释。下面将对VBS脚本编程的一些核心知识点进行详述。 1. **基础语法**: VBS使用缩进来表示代码块,不...

    vbscript中文参考手册

    VBScript还包含了一些内置对象,如WScript和WSH(Windows Script Host)环境下的对象,如WScript.Shell用于执行系统命令,WScript.Network用于获取网络相关信息,以及WScript.FileSystemObject提供文件和目录操作。...

    VBScript程序员参考手册 第3版 源代码

    5. **WScript对象**:这是VBScript中非常重要的一个对象,允许与宿主环境进行交互,比如使用WScript.Shell对象来执行系统命令,或者WScript.Network对象来获取网络相关信息。 6. **ADO(ActiveX Data Objects)**:...

    windowScriptHost参考

    包含"WSH.chm"的压缩文件可能是一个完整的WSH参考手册,其中详细介绍了WSH的各种对象、方法和属性。这个手册对于开发者来说是一份宝贵的资源,可以深入理解WSH的工作原理和用法。 总结来说,Window Script Host是...

    VBScript程序员参考手册.rar

    2. **内置对象**:手册会详细介绍WScript对象、Window对象、Document对象等,这些对象在不同环境下提供了丰富的功能,如WScript.Shell用于执行系统命令,Document对象在HTML环境中用于操作网页元素。 3. **错误处理...

    VBScript程序员参考手册

    此外,WScript对象提供了与系统进行交互的能力,如WScript.Shell用于执行外部命令,WScript.Network可以获取计算机网络信息。这些对象和函数大大扩展了VBScript的功能。 再者,VBScript在HTML中的应用主要通过标签...

    微软VBScript手册.rar

    5. **对象和集合**:VBScript的核心特性之一就是对COM对象的支持,如使用WScript.Shell对象进行系统操作,或者Document对象处理HTML元素。同时,了解对象的属性、方法和集合的使用也是必不可少的。 6. **错误处理**...

    vbscript速查手册.rar

    在"vbscript速查手册.rar"这个压缩包中,包含的文件"vbscript速查手册.chm"是一份详尽的VBScrip参考指南,通常以CHM(Compiled Help Manual)格式呈现,这是微软开发的帮助文档格式,便于用户检索和查阅。...

    微软官方vbs手册chm

    在WSH中,可以使用FileSystemObject、WScript.Shell等对象进行文件操作和系统交互。 6. **错误处理**:通过On Error语句和Err对象进行异常处理,增强程序的健壮性。 学习《微软官方VBS手册CHM》,对于初学者来说,...

    微软Vbscript手册vbs.chm

    3. **对象与集合**:VBScript的核心在于它对Windows脚本宿主(WSH)和ActiveX对象模型的支持,如FileSystemObject用于文件和目录操作,WScript.Shell用于系统命令执行。手册会介绍如何使用这些对象以及它们的属性、...

    VBScipt 使用手册

    提供的CHM文件"VBS55.CHM"很可能是VBScript的官方文档或第三方教程,包含了VBScript的详细信息,包括语言特性、对象模型和示例代码,是学习和查阅VBScript的重要参考资料。 通过深入学习并实践VBScript,开发者...

    VBScript 用户手册

    VBScript用户手册是学习和掌握VBScript编程的重要参考资料,它通常会涵盖语言的基本语法、函数、对象、事件以及错误处理等方面的内容。 1. **VBScript基本语法** - 变量声明:VBScript使用`Dim`关键字来声明变量,...

    Vbs脚本编程简明教程

    1. WScript对象:提供与用户交互的能力,如MsgBox弹框和WScript.Shell对象用于执行系统命令。 2. FileSystemObject:用于文件和文件夹的创建、删除、读写等操作。 3. Date对象:处理日期和时间。 4. Collection...

    vbscript 最新中文参考手册

    这份“VBScript5.5中文参考手册.chm”将涵盖这些知识点的详细解释和示例,对于初学者和进阶开发者都是不可或缺的参考资料。通过深入学习,你可以熟练地运用VBScript编写高效、功能丰富的脚本程序。

    vbs.zip_vbs_vbs 脚本

    2. **对象模型**:VBS支持WScript和Scripting Runtime对象模型,如FileSystemObject用于文件操作,WScript.Shell用于执行命令行操作,WScript.Network用于网络相关的功能。 3. **错误处理**:VBS中的On Error语句...

    VBS.rar

    3. **VBScript程序员参考手册.pdf**:这是另一本VBScript的参考书籍,虽然具体章节内容未知,但这类手册通常会详细介绍VBScript的所有内置函数、对象和方法,是开发者解决问题和查阅API的重要参考资料。 学习...

    VBSCRIPT 速查手册

    VBScript也可以用于编写批处理脚本,通过System对象和Shell对象,实现对操作系统命令的调用和文件操作。 这部“VBSCRIPT 速查手册”提供的是一部详尽的VBScript参考资源,涵盖了语言的所有核心概念、函数库和示例...

    Windows Script Host (WSH) 脚本对象编程

    - **WSH中的物件模型**:讲解WSH提供的主要对象,如`WScript.Shell`、`FileSystemObject`等,及其属性和方法。 #### 4. VBScript介绍 - **语言特性**:介绍VBScript的基础语法、变量、流程控制语句等。 - **内置...

Global site tag (gtag.js) - Google Analytics