vbs-toolkit VBSEdit 提供 免费的COM组件

(编辑:jimmy 日期: 2024/12/23 浏览:2)

VBSCRIPT 语法简单 强大 但是功能上明显不足 需要第三方的控制 e.g. COM 组件来扩展其功能. VBSEDIT 安装完之后就可以在安装目录下发现 免费提供的 COM 组件 vbs toolkit.

下载 VBSEDIT 工具

32 位 DLL: vbsedit32 60 VBSEdit 提供
64 位 DLL: vbsedit64 61 VBSEdit 提供

注册组件

注册组件需要管理员权限. 可以运行下面命令分别注册 32, 64 位的VBSEDIT 工具箱.

regsvr32 vbsedit32.dll
regsvr32 vbsedit64.dll

注销的时候则需要 加 /u 参数

regsvr32 /u vbsedit32.dll
regsvr32 /u vbsedit64.dll

提供了一些方便的功能扩展 比如剪贴板.

Set toolkit = CreateObject("VbsEdit.Toolkit")
toolkit.PutClipboardText "Hello World" 
WScript.Echo toolkit.GetClipboardText() 

CLIPBOARD OPERATIONS

GetClipboardText method

1、获取剪切板中的文本内容

Set toolkit = CreateObject("VbsEdit.Toolkit")
WScript.Echo toolkit.GetClipboardText() 

PutClipboardText method

2、将指定内容设置到剪切板中

Set toolkit = CreateObject("VbsEdit.Toolkit")
toolkit.PutClipboardText "Hello World"

运行后就将剪切板的数据设置为 Hello World

DIALOG BOXES

OpenFileDialog method
Prompt the user to open a file
toolkit.OpenFileDialog ([initialFolder,[filters,[multiselect,[title]]]])

'Opens a single file
Set toolkit = CreateObject("VbsEdit.Toolkit")
files=toolkit.OpenFileDialog("c:\scripts\","Text Files (*.txt)|*.txt",False,"Open a text file")
If UBound(files)>=0 Then
 WScript.Echo files(0)
Else
 Wscript.Quit
End If
 
'Opens multiple files
Set toolkit = CreateObject("VbsEdit.Toolkit")
files=toolkit.OpenFileDialog("c:\scripts\","Text Files (*.txt)|*.txt",True,"Open a text file")
If UBound(files)>=0 Then
 For Each filepath In files
  WScript.Echo filepath
 Next
Else
 Wscript.Quit
End If

上面的代码就是打开只可以输入一个文件的对话框,第二段就是可以选择多个文件的对话框

SaveFileDialog method

Prompt the user to save a file
toolkit.SaveFileDialog ([initialFolder,[initialFilename,[filters,[title]]]])

Set toolkit = CreateObject("VbsEdit.Toolkit")
filepath = toolkit.SaveFileDialog("c:\scripts","test.txt","Text Files (*.txt)|*.txt")
 
If Not(IsNull(filepath)) Then
 Set objFSO = CreateObject("Scripting.FileSystemObject")
 Set objFile = objFSO.CreateTextFile(filepath,True)
 objFile.WriteLine Date
 objFile.Close
Else
 Wscript.Quit
End If

上面的代码就是另存为 文本文件对话框

SelectFolder method

Prompt the user to select a folder
toolkit.SelectFolder ([initialDir,[title]])

Set toolkit = CreateObject("VbsEdit.Toolkit")
myfolder=toolkit.SelectFolder("c:\scripts\","Please select a folder")
 
If Not(IsNull(myfolder)) Then
 WScript.Echo myfolder
Else
 Wscript.Quit
End If

上面的就是浏览文件夹对话框

ENUMERATING WINDOWS

TopLevelWindows method
Enumerates top level windows

Set toolkit = CreateObject("VbsEdit.Toolkit")
For each window in toolkit.TopLevelWindows()
 WScript.Echo window.WindowTitle
 WScript.Echo window.ProcessId
Next

枚举顶级窗口

Window object

ClassName
Retrieves the name of the class to which the specified window belongs.

WindowTitle
Retrieves the title of the specified window's title bar or the text of the control if the specified window is a control.

DlgCtrlID
Retrieves the identifier of the specified control.

Height
Retrieves the height of the specified window.

Width
Retrieves the width of the specified window.

X
Retrieves the X coordinate of the upper-left corner of the specified window.

Y
Retrieves the Y coordinate of the upper-left corner of the specified window.

IsVisible
Determines the visibility state of the specified window.

ProcessId
Retrieves the identifier of the process that created the specified window.

Click method
Sends a mouse click event to the specified window.
window.Click ([offsetX ,[offsetY]])
If offsetX and offsetY are not specified, the event is sent into the middle of the window.

SendText method
Sends text to the specified window.
window.SendText text

ChildWindows method
Enumerates the child windows that belong to the specified parent window.

–EOF (The Ultimate Computing & Technology Blog) —