VBS函数应用–getobject的使用获得Automation对象

VBS函数应用–getobject的使用获得Automation对象VBS函数应用–getobject的使用获得Automation对象

大家好,又见面了,我是你们的朋友全栈君。

返回对文件中 Automation 对象的引用。

GetObject([pathname] [, class])

参数

Pathname

可选项。字符串,包含待检索对象的文件的完整路径和名称。如果省略 pathname 则必须有 class

Class

可选项。字符串,对象的类。

class 参数的语法格式为 appname.objectype,其中包括以下部分:

参数

appname

必选项。字符串,提供对象的应用程序名称。

objectype

必选项。字符串,要创建的对象的类型或类。

说明

使用 GetObject 函数可以访问文件中的 Automation 对象,而且可以将该对象赋值给对象变量。使用 Set 语句将 GetObject 返回的对象赋值给对象变量。例如:

Dim CADObject
Set CADObject = GetObject("C:\CAD\SCHEMA.CAD")

在执行上述代码时,就会启动与指定路径名相关联的应用程序,同时激活指定文件中的对象。如果 pathname 是零长度字符串 (“”),GetObject 返回指定类型的新对象实例。如果省略 pathname 参数,GetObject 将返回指定类型的当前活动对象。如果没有指定类型的对象,就会出现错误。

某些应用程序允许只激活文件的一部分,方法是在文件名后加上一个惊叹号 (!) 以及用于标识要激活的文件部分的字符串。有关创建这种字符串的详细信息,请参阅创建对象的应用程序的有关文档。

例如,在绘图应用程序中,一个存放在文件中的图可能有多层。可以使用下述代码来激活图 SCHEMA.CAD 中的某一层:

Set LayerObject = GetObject("C:\CAD\SCHEMA.CAD!Layer3")

如果没有指定对象的类,则 Automation 会根据所提供的文件名,确定要启动的应用程序以及要激活的对象。但是,有些文件可能支持多个对象类。例如,图可能支持三种不同类型的对象:Application 对象、Drawing 对象和 Toolbar 对象,所有这些都是同一个文件中的一部分。使用可选项的 class 参数可以指定文件中要激活的对象。例如:

Dim MyObject
Set MyObject = GetObject("C:\DRAWINGS\SAMPLE.DRW", "FIGMENT.DRAWING") 

在上述样例中,FIGMENT 是绘图应用程序的名称,而 DRAWING 则是它支持的一种对象类型。对象被激活之后,就可以在代码中使用所定义的对象变量来引用它。在前面的例子中,可以使用对象变量 MyObject 访问新对象的属性和方法。例如:

MyObject.Line 9, 90
MyObject.InsertText 9, 100, "嗨,你好!"
MyObject.SaveAs "C:\DRAWINGS\SAMPLE.DRW"

注意 在对象的当前实例存在,或者要用已加载的文件创建对象时,请使用 GetObject 函数。如果没有当前实例,并且不准备使用已加载的文件启动对象,请使用 CreateObject 函数。

如果对象已注册为单个实例的对象,则无论执行多少次 CreateObject,都只能创建该对象的一个实例。若使用单个实例对象,当使用零长度字符串 (“”) 语法调用时,GetObject 总是返回同一个实例,而如果省略 pathname 参数,则会出现错误。

复制代码代码如下:

Set oDOM = WScript.GetObject(WScript.Arguments(0))
do until oDOM.readyState = “complete”
WScript.sleep 200
loop
WScript.echo oDOM.documentElement.outerHTML

复制代码代码如下:

Set oDOM=WScript.GetObject(“http://www.ip138.com/ip2city.asp”)’就是取得这个对象
Do Until oDOM.readyState=”complete” ‘一直循环等待200ms,直到页面加载完成
WScript.sleep 200’就是等待200ms
Loop
WScript.echo oDOM.documentElement.outerText’取得某个文本,并弹出对话框以显示此消息
Set oDOM=nothing’断开与对象的连接以释放内存。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/107091.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 博客群发软件–用 Windows Live Writer完美发布新浪、网易、blogcn、blogbus、cnbl

    博客群发软件–用 Windows Live Writer完美发布新浪、网易、blogcn、blogbus、cnbl前言:当今网络博客、微薄铺天盖地,相信即使一个普通的用户也都注册了很多家品牌的博客或者微薄等,那么困扰着大家一个很大的问题,同时在多家博客发布同样的内容,如果说只是简单的文字还好说,复制粘贴就完事了,但是如果里面包含着图片,那么使用复制粘贴是不可以的,因为诸多博客品牌之间图片是不能共享使用的。研究了一天,终于找到较为完美博客群发软件,那就是微软出品的…

    2022年7月13日
    32
  • 【Java】一篇文章带你了解String、StringBuffer和StringBuilder的区别

    【Java】一篇文章带你了解String、StringBuffer和StringBuilder的区别String:字符串常量StringBuffer:字符串变量(多线程情况下使用,保护线程安全)synchronized:保护线程安全的StringBuilder:字符串变量(单线程情况下使用)String、StringBuffer、StringBuilder的主要区别:1.String类的内容不可以修改,而StringBuffer和StringBuilder的内容可以修改;2.StringBuffer和StringBuilder的大部分功能都是相似的;3.StringBu..

    2022年7月17日
    18
  • 老鸟的Python新手教程

    老鸟的Python新手教程

    2021年11月15日
    41
  • [网络安全自学篇] 二十二.Web渗透之网站信息、域名信息、端口信息、敏感信息及指纹信息收集[通俗易懂]

    [网络安全自学篇] 二十二.Web渗透之网站信息、域名信息、端口信息、敏感信息及指纹信息收集[通俗易懂]这是作者的系列网络安全自学教程,主要是关于网安工具和实践操作的在线笔记,特分享出来与博友共勉,希望您们喜欢,一起进步。前文分享了Powershell基础入门知识,涉及条件语句、循环语句、数组、函数、字符串操作、注册表访问等。这篇文章将分享Web渗透的第一步工作,涉及网站信息、域名信息、端口信息、敏感信息及指纹信息收集。

    2022年6月16日
    21
  • ASP Session 对象

    ASP Session 对象Session对象用于存储关于某个用户会话(session)的信息,或者修改相关的设置。存储在session对象中的变量掌握着单一用户的信息,同时这些信息对于页面中的所有页面都是可用的。实例设置并返回LCID本例演示”LCID”属性。此属性设置并返回一个指明位置或者地区的整数。类似于日期、时间以及货币等内容都要根据位置或者地区来显示。返回SessionID本例演示”Ses

    2022年7月25日
    5
  • git clone 加速,只需1秒就可提升几十倍速度,亲测有效

    git clone 加速,只需1秒就可提升几十倍速度,亲测有效使用github的镜像网站进行访问,github.com.cnpmjs.org,我们将原本的网站中的github.com进行替换。eg:原来为:将github.com换为github.com.cnpmjs.org即可实现加速修改后:

    2022年7月21日
    10

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号