工控随笔_21_西门子_WinCC的VBS脚本_10_对象_01

Posted volcanol

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了工控随笔_21_西门子_WinCC的VBS脚本_10_对象_01相关的知识,希望对你有一定的参考价值。

  最近有点小忙,各种事情,心情也不是很好,烦心事特别多,因此最近更新的比较慢。

不敢再松懈了,今天正好有点时间,就继续看了一下VBScript中关于对象的一些内容。

 

一、对象

  OOP是编程规模发展到一定程度后才出现的,因为不但操作系统的程序规模越来越大,而且应用

程序的规模也是日益增长。

  代码重用在OOP出现后又是进一步提升。

  什么是对象呢?  按照以前Unix的套路:一切皆文件。  在这里也可以说一切皆对象。计算机本身

也可以看做一个对象。

  对象具有特征和功能,特征表现为属性,功能表现为方法。

  具体不啰嗦,可以看看计算机概论一类的书。

 

二、代码

  

对象


对象的特点从本质上来说对象是内存中的一块内存区域,这块区域和变量一样但是对象和变量又存在差距。对象必须利用专门的语句进行关联后才能引用,且在使用完毕后必须用专门的语句进行销毁才能保证占用的内存被回收,否则就会造成“内存泄露”

Option Explicit

创建对象
Dim objDict
1、通过CreateObject函数创建对象,这个函数需要传递一个必须的参数   这个参数指定要创建的对象的类型。 这个参数在系统中叫做   progID,  如下面的"Scripting.Dictionary"就是ProgID2、通过CreateObject函数创建的对象,只是存储在内存中,我们还不能直   接进行操作,这个函数会返回一个对象的引用,如果不将这个返回的引用   与某个变量联系起来就无法访问对象。3、通过set语句将创建的对象与变量联系起来,这个过程也叫实例化对象。   如下所示
Set objDict = CreateObject("Scripting.Dictionary")
MsgBox objDict.Count

4、如果对象使用完毕,那么必须对其进行撤销,否则对象占用的内存就不会   回收,这样就会造成内存泄露,因此必须进行撤销。通过下面的语句   撤销对象。 当然如果脚本小那么在脚本结束运行的时候,系统会自动撤销   对象。 这个意思是说对象在超出作用域的范围后会自动撤销。
Set objDict =Nothing

If objDict Is Nothing Then 
    MsgBox "对象objDict已经撤销"
End If


脚本运行时对象脚本运行时对象必须通过其他对象创建才能访问。最典型的就是文件系统对象
Dim objFSO
Set objFSO = CreateObject("Scripting.FileSystemObject")

Dim objFolder 
下面的语句必须已经创建了文件夹:D:1_vbs, 否则会出错
Set objFolder = objFSO.GetFolder("D:1_vbs")

对象的访问对象具有属性和方法, 属性表示对象的一些特征方法用来改变属性的特征, 对象的属性和方法通过下面的语法格式进行访问   对象.属性   对象.方法
MsgBox objFolder.Drive   访问创建的objfolder对象的驱动器属性
MsgBox objFolder.Name    访问创建的objfolder对象的名称属性
MsgBox objFolder.Path    访问创建的objfolder对象的路径属性

访问对象的方法,通过文件夹对象的CreateTextFile方法创建文件
objFolder.CreateTextFile "对象新建的文件.txt",True,False

我们可以查看文件夹对象下的文件,这个需要通过集合来访问文件夹对象下有一个文件集合,我们通过传递集合下的元素的名称来访问集合同样文件也是一个对象,因此也需要进行实例化如下所示
Dim objFile 
Set objFile = objFolder.Files("对象新建的文件.txt")

同样通过下面的方法访问对象属性
MsgBox objFile.Name & "创建的时间为:" & objFile.DateCreated


访问对象的特殊语句 With语句因为对象的属性和方法均具有一个共同的特点:归属于同一个对象因此为方便,vbs提供了一种简便的访问方法就是
With objFile 
    MsgBox  "Drive is:" & .Drive & vbNewLine &_
            "Path is:" & .Path & vbNewLine 
End With

 

三、WinCC中的对象模型

  要理解WinCC中的VBS脚本,大体有前面几篇随笔的内容和本篇随笔的内容基本够用了,需要

补充的是属于WinCC特有的VBS对象模型。这里暂时不多说,只用一张图

技术分享图片

  WinCC中VBS的对象模型。

 

四、小结

  对于WinCC的VBS脚本,大体需要的关于VBS的基本知识已经描述完毕,其他的高级功能需要

进一步学习的可以参考微软的出版物《vbs脚本参考》

  从我本身这些年的WinCC的使用经验来看,前面描述的基本够用,一般不会用到太复杂的功能。

后面在描述一些关于文件系统对象的知识后就全面的描述WinCC的相关内容。

 

--------------------------------------------------------------分割线---------------------------------------------------------------

1、文章均为个人原创,欢迎转载,转载请保留出处:https://www.cnblogs.com/volcanol/

2、获取工控PLC、变频器、HMI、计算机、Windows、Linux、嵌入式资料点击:获取资料

3、如果您觉得文章对您有帮助可转至页面上半部分打赏,或移步:打赏 

4、或者在页面右下角点推荐哟!!!

--------------------------------------------------------------分割线---------------------------------------------------------------

以上是关于工控随笔_21_西门子_WinCC的VBS脚本_10_对象_01的主要内容,如果未能解决你的问题,请参考以下文章

工控随笔_07_西门子_WinCC利用命令行实现操作log日志

工控随笔_03_西门子_Step7项目打开后CPU显示问号解决方法

使用wincc vbs脚本查找进程及如何运行进程

如何wincc中使用VBS脚本读写SQLServer数据库文件

工控随笔_C#连接PLC_之_C#入门_01_配置学习环境

VBS小脚本_ 玩坏键盘的指示灯