通过一个指定的类名引用一个 COM 对象.
ObjCreate ( "类名称" [, "服务器名称" [,"用户名", ["密码"]]] )
类名称 | 一个对象的类名称,格式如下: "appname.objectype" 你同样可以使用一个 CLSID 字符串来代替. |
服务器名称 | [可选参数]服务器的名称.当使用一个远程计算机的对象时, 须填写. |
用户名 | [可选参数]用户名称,用于使用远程计算机上面的对象时. 请输入这种格式的用户名 "计算机名称\用户名" 或者 "域名\用户名". |
密码 | [可选参数]可选的密码,用于使用远程计算机上面的对象时. |
成功: | 返回 对象句柄. |
失败: | 返回 0 并设置 @error 为 1. |
; Example 1
;
; Counting the number of open shell windows
Local $oShell = ObjCreate("shell.application") ; Get the Windows Shell Object
Local $oShellWindows = $oShell.windows ; Get the collection of open shell Windows
If IsObj($oShellWindows) Then
Local $string = "" ; String for displaying purposes
For $Window In $oShellWindows ; Count all existing shell windows
$string = $string & $Window.LocationName & @CRLF
Next
MsgBox(0, "Shell Windows", "You have the following shell windows:" & @CRLF & @CRLF & $string);
EndIf
Exit
; Example 2
;
; Open the MediaPlayer on a REMOTE computer
Local $oRemoteMedia = ObjCreate("MediaPlayer.MediaPlayer.1", "name-of-remote-computer")
If Not @error Then
MsgBox(0, "Remote ObjCreate Test", "ObjCreate() of a remote Mediaplayer Object successful !")
$oRemoteMedia.Open(@WindowsDir & "\media\tada.wav") ; Play sound if file is present
Else
MsgBox(0, "Remote ObjCreate Test", "Failed to open remote Object. Error code: " & Hex(@error, 8))
EndIf