Vb脚本编程简明教程之 妙SendKeys简化重复
Vb脚本编程简明教程之 妙
SendKeys简化重复
Vb脚本编程简明教程之--妙SendKeys简化重复操作2010-07-02 10:47每次开机的时候,你想自动登陆你的QQ或者网志吗?巧妙使用VBS中的SendKeys命令(这个命令的作用就是模拟键盘操作,将一个或多个按键指令发送到指定Windows窗口来控制应用程序运行),可以极大的方便我们的常用操作。其使用格式为:。
Object.SendKeysstring其中:。
Object:为WshShell对象,即脚本的第一行为:。
SetWshShell=WScript.CreateObject("WScript.Shell")。
将Object替换为WshShell。
"string"表示要发送的按键指令字符串,需要放在英文双引号中。它包含如下内容:[作者:临汾市外事旅游局薛靖澜,转载请注明出处]。
1.基本键:一般来说,要发送的按键指令都可以直接用该按键字符本身来表示,例如要发送字母"x",使用"WshShell.SendKeys"x""即可。当然,也可直接发送多个按键指令,只需要将按键字符按顺序排列在一起即可,例如,要发送按键"cfan",可以使用。
WshShell.SendKeys"cfan""。
2.特殊功能键:对于需要与Shift、Ctrl、Alt三个控制键组合的按键,SendKeys使用特殊字符来表示:Shift--+;Ctrl--^;Alt--%。
如要发送的组合按键是同时按下Ctrl+E,需要用
"WshShell.SendKeys"^e""表示,如果要发送的组合按键是按住Ctrl键的同时按下E与C两个键,这时应使用小括号把字母键括起来,
书
关于书的成语关于读书的排比句社区图书漂流公约怎么写关于读书的小报汉书pdf
写格式为
"WshShell.SendKeys"^(ec)"",这里要注意它与"WshShell.SendKeys"^ec""的区别,后者表示组合按键是同时按住Ctrl和E键,然后松开Ctrl键,单独按下"C字母键。
由于"+"、"^"这些字符用来表示特殊的控制按键了,如何表示这些按键呢?只要用大括号括住这些字符即可。例如,要发送加号"+",可使用"WshShell.SendKeys"{+}""。另外对于一些不会生成字符的控制功能按键,也同样需要使用大括号括起来按键的名称,例如要发送回车键,需要用"WshShell.SendKeys"{ENTER}""表示,发送向下的方向键用。
WshShell.SendKeys"{DOWN}""表示。
如果需要发送多个重复的单字母按键,不必重复输入该字母,SendKeys允许使用简化格式进行描述,使用格式为"{按键数字}"。例如要发送10个字母"x",则输入"WshShell.SendKeys"{x10}""即可。
例一:WshShell.SendKeys"^{ESC}u"[作者:临汾市外事旅游局薛靖澜,转载请注明出处]。
代码的含义为:按下Ctrl+Esc组合键(相当于按Win键)打开"开始"菜单,接着按U键打开"关机"菜单。
例二:让VBS脚本自动在记事本中输入一行文字"hello,welcometocfan"。
0。
SetWshShell=WScript.CreateObject("WScript.Shell")。
WshShell.Run"notepad"。
WScript.Sleep2000。
//的含义为是脚本暂停2秒,给notepad一个打开的时间,有时时间太短可能导致后面的字符无法进入编辑区。
WshShell.AppActivate"无标
题
快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题
-记事本。
"//AppActiv为寻找可执行程序的标题框,"无标题-记事本"内容你的自己打开看一下。
WshShell.SendKeys"hello,welcometocfan"。
作业1:让脚本自动输入下面两段小短句。
0。
becauseI'mherewithyounow。
作业2:让脚本在输入短句后自动关闭记事本,并保存文件名为"test",注意关闭记事本可以直接使用组合按键Alt+F4来实现。
例三:制作能自动定时存盘的记事本。
我们最常用的记事本没有Word、WPS那样的自动定时存盘功能,其实利用VBS脚本再加上SendKeys命令,就能弥补这个遗憾。打开记事本,输入以下内容(为容易描述和分析,把代码分为四个部分):。
第一部分:定义变量和对象。
DimWshSh[作者:临汾市外事旅游局薛靖澜,转载请注明出处]ell,AutoSaveTime,TXTFileName。
AutoSaveTime=300000。
SetWshShell=WScript.CreateObject("WScript.Shell")。
TXTFileName=InputBox("请输入你要创建的文件名(不能用中文和纯数字):")。
第二部分:打开并激活记事本。
WshShell.Run"notepad"。
WScript.Sleep200。
WshShell.AppActivate"无标题-记事本"。
第三部分:用输入的文件名存盘。
WshShell.SendKeys"^s"。
WScript.Sleep300。
WshShell.SendKeysTXTFileName。
WScript.Sleep300。
WshShell.SendKeys"%s"。
WScript.SleepAutoSaveTime。
第四部分:自动定时存盘。
WhileWshShell.AppActivate(TXTFileName)=True。
WshShell.SendKeys"^s"。
WScript.SleepAutoSaveTime。
0。
WScript.Quit。
将其保存为记事本.vbs,以后要使用记事本时,都通过双击这个脚本文件
来打开。
程序说明:这个脚本的基本思路是定时向记事本发送Ctrl+S这个存盘组合
键。
第一部分:定义了脚本中需要用到的变量和对象。"AutoSaveTime变量用
来设置自动存盘间隔,单位为毫秒,这里设置为5分钟。"TXTFileName变量通
过输入框取得你要创建的文本文件名称。[作者临汾市外事旅游局薛靖澜,转载请注明出处]。
第二部分:运行记事本,对于Windows本身提供的程序,比如计算器等,可直接在"WshShell.Run"后输入程序名称,如"calc",对于非系统程序,则可输入完全路径,但要注意使用8.3格式输入,比如"D:
\Progra~1\Tencent\QQ.exe""。
第三部分:这里用SendKeys命令执行了这样的操作流程(请注意每个操作
:在记事本中按Ctrl+S组合键弹出保存文件的窗口输入之间延时命令的使用)
文件名按Alt+S组合键进行保存(默认保存在"我的文档"目录)。
第四部分:定时存盘的关键,通过"WhileWend"这个当条件为"真"时循环命令,实现自动存盘代码"WshShell.SendKeys"^s""和定时代码
"WScript.SleepAutoSaveTime"的重复执行。因为不能让这个定时存盘循环一直执行,退出记事本后,必须自动退出脚本并结束循环,所以设计了一个循环判断条件"WshShell.AppActivateTXTFileName=True",当记事本运行中时,可激活记事本窗口,这个条件运行结果为"True",定时存盘循环一直执行,退出记事本后,脚本无法激活记事本窗口,就会跳出循环,执行"Wend"后面的"WScript.Quit"退出脚本。
例四:快速登陆QQ软件。假设QQ号码是:10001,密码是:123456,隐身登陆:。
setws=wscript.createobject("wscript.shell")。
ws.run"C:\Progra~1\Tencent\QQ\QQ.exe",0。
wscript.Sleep2000。
ws.AppActivate"QQ用户登录"。
ws.SendKeys"7015247"。
wscript.Sleep200。
ws.SendKeys"{TAB}"。
ws.SendKeys"*"。
wscript.Sleep200。
ws.SendKeys"{ENTER}"。
例五:关机菜单立刻显身。
打开记事本,输入以下命令,并将其保存为1.vbs:。 setWshShell=CreateObject("WScript.Shell")。 WshShell.SendKeys"^{ESC}u"。
双击运行它,你会发现关机菜单立刻出现了。 将"WshShell.SendKeys"^{ESC}u""改为"WshShell.SendKeys"^+{ESC}"",
运行一下看看是否打开了任务管理器。
妙用SendKeys自动上网并登陆网志。
将下面的脚本复制到一个文本文件中,并将其文件名命名为:自动登
陆.vbs,然后将拨号软件及本脚本一起复制到程序--启动项中,就可以实现自
动拨号上网,并登陆到网志上。
代码如下:。
Setwshshell=CreateObject("wscript.shell")。 wshshell.AppActivate"连接MAE-301U拨号连接"。 wscript.Sleep20000。
wshshell.SendKeys"{enter}"。
wshshell.Run"iexplore"。
WScript.Sleep2000。
wshshell.AppActivate"hao123网址之家---实用网址,搜索大全,尽在
www.hao123.com-MicrosoftInternetExplorer"'引号中的内容修改为你的浏览
器打开后标题栏中的内容。
wshshell.SendKeys"%d"。
wshshell.SendKeys"。
wshshell.SendKeys"{enter}"。
WScript.Sleep2000。
wshshell.SendKeys"此处修改为网志帐号"。
wshshell.SendKeys"{tab}"。
wshshell.SendKeys"此处修改为网志密码"。
wshshell.SendKeys"{enter}"。
wshshell.SendKeys"%d"。
◎Vb脚本编程简明教程之十。
-Vb脚本编程常用的编辑器2007年04月10日星期二下午05:41。 转自:。
1、VBSEDit汉化版。
2、primalscript汉化版,可以对30多种脚本进行编辑。 ◎Vb脚本编程简明教程之十一。
--F中文件的基本操作2007年04月11日星期三上午10:12。
转自:。
一、文件属性:。
在windows中,文件的属性一般用数字来表示:。
0代表normal,即普通文件未设置任何属性。1代表只读文件。 2代表隐藏文件。4代表系统文件。16代表文件夹或目录。 32代表存档文件。1024代表链接或快捷方式。0。
setfs=wscript.createobject("scripting.filesystemobject")。 setf=fs.getfile("d:\index.txt")。
msgboxf.Attributes'attributes函数的作用是显示文件属性。 需要说明的是:msgbox显示的结果往往不是上面说明的数字,而是有关属
性代表数字的和。[作者临汾市外事旅游局薛靖澜,转载请注明出处]。 二、创建文件:object.createtextfile方法,注意创建前一般需要检查
文件是否存在。
例如:setfso=wscript.createobject("scripting.filesystemobject")。 iffso.fileexists("c:\kk.txt")then。
msgbox"文件已存在"。
0。
setf=fso.createtextfile("c:\kk.txt")。
0。
如需要强制覆盖已存在的文件,则在文件名后加true
参数
转速和进给参数表a氧化沟运行参数高温蒸汽处理医疗废物pid参数自整定算法口腔医院集中消毒供应
。
三、复制、移动、删除文件:使用copyfile方法、movefile方法、
deletefile方法。0。
setfso=wscript.createobject("scripting.filesystemobject")。 fso.copyfile"c:\kk.txt","d:\kk.txt",true//如上文说述,true代表
强制覆盖。
fso.movefile"c:\kk.txt","d:\"//移动文件。
fso.deletefile"c:\kk.txt"//删除文件。
四、文件的读写:。
1、打开文件:使用opentextfile方法。
如:setts=fso.opentextfile("c:\kk.txt",1,true)。 说明:第二个参数为访问模式1为只读、2写入、8为追加。 第三个参数指定如文件不存在则创建。
2、读取文件:read(x)读x个字符;readline读一行;readall全部读取。 如:setffile=fso.opentextfile("c:\kk.txt",1,true)。 value=ffile.read(20)。
line=ffile.readline。
contents=ffile.readall。
3、常见的指针变量:。
atendofstream属性:当处于文件结尾的时候这个属性返回true。一般用
循环检测是否到达文件末尾。0。
dowhileffile.atendofstreamtrue。
ffile.read(10)。
0。
atendofline属性:如果已经到了行末尾,这个属性返回true。
当前字符位置的列号)和line属性(文件当前行号):在打开Column属性(
一个文件后,行和列指针都被设置为1。
4、在文件中跳行:skip(x)跳过x个字符;skipline跳过一行。
5、在文件中写入字符:可以用2-写入和8-追加的方式来写入。
其方法有:write(x)写入x字符串;writeline(x)写入x代表的一行。
writeblanklines(n)写入n个空行。
注意:最后一定要使用close方法关闭文件。[作者临汾市外事旅游局薛靖澜,转载请注明出处]读文件后一定要关闭,才能以写的方式打开。
◎Vb脚本编程简明教程之十二。
-使系统对话框2007年04月19日星期四下午06:03。
转自:。
在VBS脚本设计中,如果能使用windows提供的系统对话框,可以简化脚本的使用难度,使脚本人性化许多,很少有人使用,但VBS并非不能实现这样的功能,方法当然还是利用COM对象。
1、SAFRCFileDlg.FileSave对象:属性有:FileName-指定默认文件名;FileType-指定文件扩展名;OpenFileSaveDlg-显示文件保存框体方法。
2、SAFRCFileDlg.FileOpen对象:FileName-默认文件名属性;OpenFileOpenDlg-显示打开文件框体方法。
3、UserAccounts.CommonDialog对象:Filter-扩展名属性
("vbsFile|*.vbs|AllFiles|*.*");。
FilterIndex-指定。
InitialDir-指定默认的文件夹。
FileName-指定的文件名。
Flags-对话框的类型。
Showopen方法:。
很简单,ok,让我们来举两个简单的例子:。
例一:保存文件。
SetobjDialog=CreateObject("SAFRCFileDlg.FileSave")。 SetobjFSO=CreateObject("Scripting.FileSystemObject")。 objDialog.FileName="test"。
objDialog.FileType=".txt"。
intReturn=objDialog.OpenFileSaveDlg。
0。
objFSO.CreateTextFile(objDialog.FileName&objdialog.filetype)。
0。
Wscript.Quit。
0。
注意:1、SAFRCFileDlg.FileSave对象仅仅是提供了一个方便用户选择的
界面,本身并没有保存文件的功能,保存文件还需要使用FSO对象来完成。2、
用FileType属性来指定默认的文件类型。3、在调用OpenFileSaveDlg方法时,
最好把返回值保存到一变量中,用它可以判断用户按下的是确定还是取消。 例二:.打开文件。
setobjFile=CreateObject("SAFRCFileDlg.FileOpen")。 intRet=objFile.OpenFileOpenDlg。
0。
msgbox"文件打开成功~文件名为:"&objFile.filename。 0。
wscript.quit。
0。
例三:比较复杂的打开文件对话框。
SetobjDialog=CreateObject("UserAccounts.CommonDialog")。 objDialog.Filter="vbsFile|*.vbs"。
objDialog.InitialDir="c:\"。
tfile=objDialog.ShowOpen。
0。
strLoadFile=objDialog.FileName。
0。
0。
wscript.quit。
0。
说明:在脚本中加入objDialog.Flags=&H020看看会出现什么结果。
Vb脚本编程简明教程之十三。 ◎
-WM基础2007年04月21日星期六下午01:31。
转自:。
WMI即Windows管理规范,是用户管理本地和远程计算机的一种模型。通过它可以访问、配置、管理和监视几乎所有的Windows资源。WMI的语法十分简单,基本上常见的命名空间、对象等用几乎一模一样。它对应的是Windows里的WMI服务(winmgmt)。
一、WMI的起源。
几年前,几家资深的计算机公司由于系统管理领域缺少
标准
excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载
,委托DMTF启动了CIM(通用信息模型)项目,理想的CIM是一种不受*于任何特定实现环境的管理工具。WMI是CIM的微软实现,它有很多类是从CIM中派生出来的。
二、WMI的命名空间。
那么命名空间是做什么作用的呢?我简单这样说,在同一段代码中,如果有两个变量或函数的名字完全相同,就会出现冲突。命名空间就是为解决变量、函数的命名冲突而服务的。解决的办法就是将你的变量定义在一个不同名字的命名空间中。就好像财政局有个张三,公安局也有个张三,但我们清楚,就是因为他们分属不同的单位。有些地方可能不太准确,但大致意思就是这样了。
WMI的命名空间创建了一个层次结构,有点类似于我们的目录文件结构。
1、root-作为所有其他名字的占位符;。
2、root\default-与注册表操作有关的类;。
3、root\security-与系统安全有关的类;。
4、root\cimv2-从CIM派生的类,代表我们最常用的工作环境。
三、WMI的对象路径。
WMI的对象路径用来在CIM库中定位类和它的事例,对象路径用两个反斜
开头,第一个元素是目标计算机的名字,第二个元素是相应的WMI命名空间,杠\
第三个元素是相应的类名,并用:将它与命名空间分隔开来。例如:\.\root\cimv2:win32_service。
其中那个.代表是本地系统。
四、WMI的查询语言--WQL仅仅是ANSISQL的一个子集,只能用于数据的提取。
数据、事件查询的基本语法为:。
Selectpro1,pro2,pro3frommyclass(myclassevent)。
例如:Selectname,pathfromWin32_share说明:列出所有共享的名称和路径。
也可以使用通配符*,例如:Select*fromWin32_share。
关键字Where用于限定查询的范围。
例如:Select*fromWin32_sharewherename="Admin"。
五、WMI脚本中使用的三个步骤。
步骤1:连接到WMI服务。
在任何WMI脚本中,第一个步骤都是建立一个到目标计算机上的Windows管理服务的连接。方法是调用[作者:临汾市外事旅游局薛靖澜,转载请注明出处]VBScript的Getobject函数并将WMI脚本库的名字对象的名称(即"winmgmts:",后跟目标计算机的名称)传递到Getobject,并返回一个对象的
引用,此时,您就可以调用其提供的方法如:InstancesOf,正如方法名所示,InstancesOf返回由资源的类名标识的托管资源的所有实例。
步骤2:检索WMI托管资源的实例。
一般采用WQL来实现。
步骤3:显示WMI托管资源的属性。
最后一个步骤是枚举检索得到集合的内容。一般采用。
0。
Next结构来实现。
六、WMI测试器(wbemtest.exe)验证脚本执行结果。
现在,您对可用于浏览和查看CIM的工具已经有了一些认识,让我们使用WMI测试器(wbemtest.exe)来检查Win32_Process类定义,以便从在您的本地计算机上运行的进程检索一些属性。
1.打开一个命令提示,键入C:\wbemtest.exe,按下Enter来开始WMI测试器工具。请注意,大部分按钮在主WMI测试器窗口上是被禁用的,这说明此时您没有连接到WMI。
2.单击"连接"按钮连接到本地或远程计算机上的WMI服务。显示"连接"对话框,它提供一个标记为名称空间的文本输入区域,该区域默认值为root\default。将名称空间区域的值更改为root\cimv2,单击"连接"对话框的连接按钮返回到主WMI测试器窗口。
3.主窗口中左上角的命名空间标识符应该显示为root\cimv2。请注意,所有的按钮现在都已启用,这说明在当前凭据环境下,您已经成功连接到本地主机上的WMI。单击枚举类别打开"超类信息"对话框。
4.在"超类信息"对话框中,不要填写输入超类别名称区域,单击递归选项,单击确定以枚举root\cimv2名称空间中定义的所有CIM类。
请注意,列于"查询结果"对话框顶部的类是以两个下划线为开头的。这些是系统类。系统类是预定义的CIM类,支持内部WMI配置与操作,例如提供程序注册、命名空间安全性及事件
通知
关于发布提成方案的通知关于xx通知关于成立公司筹建组的通知关于红头文件的使用公开通知关于计发全勤奖的通知
等。现在,忽略系统类,向下滚动"查询结果"对话框直至看到以CIM_开头的类。名称以CIM_开头的类是由DMTF维护的核心与公共基类。继续向下滚动直至到达以Win32_开头的类。名称以Win32_开头的类是Microsoft扩展类,表示Windows特定的托管资源。如果这是您第一次检查root\cimv2命名空间,您可能希望熟悉root\cimv2命名空间中的类的完整集合,尤其是有Win32_前缀的类。
5.向下滚动"查询结果"对话框直至到达Win32_Process类,双击该类名打开Win32_Process对话框的对象编辑器。
6."对象编辑器"对话框显示被选定类的定义和实现的详细信息(属性和方法)。选择HideSystemProperties复选框隐藏系统属性。[作者临汾市外事旅游局薛靖澜,转载请注明出处]剩余的Win32_Process属性表示您可以从在本地或远程计算机上运行的进程检索的信息。
运行如下代码:。
0。
SetwbemServices=Getobject("winmgmts:\"&strComputer)。
SetwbemObjectSet=wbemServices.InstancesOf("Win32_Process")。
0。
WScript.Echo"Name:"&wbemObject.Name&vbCrLf&_。
"Handle:"wbemObject.Handle&vbCrLf&_。
"ProcessID:"wbemObject.ProcessID。
0。
7.在运行脚本之后,您可以用WIMI测试器验证脚本的结果。在Win32_Process对话框的对象编辑器中,单击Instances。产生的查询结果对话框列出在计算机上运行的进程的实例。双击一个指定的进程实例,查看该实例的详细信息。
阻止客人运行你不想运行的程序。
很多人都有这样的经验,刚刚装好的系统,让人运行了一些你不想他运行
,又是聊天,又是下载表情,不过一会,流氓插件、病毒、的程序,比如说QQ
木马已经盘踞了你的计算机,常常是忍痛将这个程序卸载,可是不知情的人很自觉的下载安装,使整个系统无法正常运行。
其实用vbs和wmi结合起来,使你的计算机上有相应的程序安装,别人又无法运行起来太容易了,现在给出代码:。
OnErrorResumeNext'忽略所有的错误。
Dimbag,pipe,honker,good。
0。
good="."'定义为本地计算机。
setbag=getobject("winmgmts:\"&good&"\root\cimv2")'l连接到cimv2命名空间。
setpipe=bag.execquery("select*fromwin32_processwherename='qq.exe'
orname='qqgame.exe'orname='winmine.exe'")看,这是我的计算机上不允许运行的程序,qq、qqgame、winmine(扫雷)如果你还有其他的程序不允许运行,很简单,在其中添加orname='你不允许运行的程序名'。
0。
i.terminate()。
msgbox"发现盗版系统,现已进行功能*~[作者:临汾市外事旅游局薛靖澜,转载请注明出处]"&vbcrlf&"请使用正版软件~","微软提示"'此行其实可有可无,有这行只是为了免去怀疑。
0。
wscript.sleep60000'每1分钟检测一次。
0。
那么如果我自己想运行这些程序该怎么办呢?[作者:临汾市外事旅游局薛靖澜,转载请注明出处]很简单,Ctrl+Alt+Del三个键齐按,打开windows任务管理器,在进程中结束Wscript.exe和wmiprvse.exe进程的运行就可以了。
◎Vb脚本编程简明教程之十四。
-使dictionary对象2007年05月08日星期二下午10:05。
转自:。
VBS中存在一个特殊的对象-dictionnary,是一个集合对象。一般情况霞,我把这个特殊的集合想象为数组,可以使用其中内建的函数完成存储和操纵数据等基本任务,无须担心数据是在哪些行列,而是使用唯一的键进行访问或者是一个只能运行在内存中的数据库,并只有两个字段分别是:key和item,在使用中,字段key是索引字段。
setsdict=CreateObject("Scripting.Dictionary")。
sdict.add"a","apple"。
sdict.add"b","banana"。
sdict.add"c","copy"。
foreachkeyinsdict.keys。
msgbox"键名"&key&"是"&"="&sdict(key)。
0。
sdict.removeall。
这个脚本很简单,就是定义了一个dictionary对象的实例sdict,并加入
了三条数据,然后对每一条数据进行了枚举,最后,将对象的实例清空。 Dictionary对象的成员概要。
属性和说明。
CompareMode设定或返回键的字符串比较模式。
条目对的数量。 Count只读。返回Dictionary里的键/
Item(key)设定或返回指定的键的条目值。
Key(key)设定键值。
方法和说明。
Add(key,item)增加键/条目对到Dictionary。
Exists(key)如果指定的键存在,返回True,否则返回False。 Items()返回一个包含Dictionary对象中所有条目的数组。 Keys()返回一个包含Dictionary对象中所有键的数组。 Remove(key)删除一个指定的键/条目对。
RemoveAll()删除全部键/条目对。
◎Vb脚本编程简明教程之十五。
-VB内置函数2007年05月09日星期三上午11:19。 转自:。
Abs函数:返回数的绝对值。
Array函数:返回含有数组的变体。
Asc函数:返回字符串首字母的ANSI字符码。
Atn函数:返回数值的反正切。
CBool函数:返回已被转换为Boolean子类型的变体的表达式。 CByte函数:返回已被转换为字节子类型的变体的表达式。 CCur函数:返回已被转换为货币子类型的变体的表达式。 CDate函数:返回已被转换为日期子类型的变体的表达式。 CDbl函数:返回已被转换为双精度子类型的变体的表达式。 Chr函数:返回与指定的ANSI字符码相关的字符。 CInt函数:返回已被转换为整形子类型的变体的表达式。 CLng函数;返回已被转换为Long子类型的变体的表达式。 Cos函数:返回角度的余弦。
CreateObject函数:创建并返回对"自动"对象的引用。 CSng函数:返回已被转换为单精度子类型的变体的表达式。 CStr函数:返回已被转换为字符串子类型的变体的表达式。 Date函数:返回当前系统日期。
DateAdd函数:返回的日期已经加上了指定的时间间隔。 DateDiff函数:返回两个日期之间的间隔。
DatePart函数:返回给定日期的指定部分。
DateSerial函数:返回指定年月日的日期子类型的变体。
DateValue函数:返回日期子类型的变体。
Day函数:返回日期,取值范围为1至31。
Eval函数:计算表达式并返回结果。
Exp函数:返回e(自然对数的底)的多少次方。
Filter函数:根据指定的筛选条件,返回含有字符串数组子集的、下限为0的数组。
Fix函数:返回数的整数部分。
FormatCurrency函数:返回的表达式为货币值格式,其货币符号采用系统控制面板中定义的。
FormatDateTime函数:返回的表达式为日期和时间格式。
FormatNumber函数:返回的表达式为数字格式。
FormatPercent函数:返回的表达式为百分数(乘以100)格式,后面有%符号。
GetObject函数:返回从文件对"自动"对象的引用。
GetRef函数:返回对能够绑定到一事件的过程的引用。
Hex函数:返回一字符串,代表一个数的十六进制值。
Hour函数:返回表示钟点的数字,取值范围为0至23。
InputBox函数:在对话框中显式一提示,等待用户输入文本或单击按钮,并返回文本框的内容。
InStr函数:返回一个字符串在另一个字符串中首次出现的位置。 InStrRev函数;返回一个字符串在另一个字符串中出现的位置,但是从字
符串的尾部算起。
Int函数:返回数的整数部分。
IsArray函数:返回Boolean值,反映变量是否为数组。 IsDate函数:返回Boolean值,反映表达式能否转换为日期。 IsEmpty函数:返回Boolean值,反映变量是否已被初始化。 IsNull函数:返回Boolean值,反映表达式是否含有无效数据(Null)。 IsNumeric函数:返回Boolean值,反映表达式能否转换为数字。 IsObject函数:返回Boolean值,反映表达式是否引用了有效的"自动"对
象。
Join函数:返回通过连接许多含有数组的子串而创建的字符串。 LBound函数;返回指定维数数组的最小有效下标。
LCase函数:返回的字符串已被转换为小写字母。
Left函数:返回字符串最左边的指定数量的字符。
Len函数:返回字符串中的字符数或存储变量所需的字节数。 LoadPicture函数:返回图片对象。只用于32位平台。 Log函数:返回数的自然对数。
LTrim函数;返回去掉前导空格的字符串。
Mid函数:从字符串中返回指定数量的字符。
Minute函数:返回分钟数,取值范围为0至59。
Month函数:返回表示月份的数,取值范围为1至12。
MonthName函数:返回表示月份的字符串。
MsgBox函数:在对话框中显示消息,等待用户单击按钮,并返回表示用户
所击按钮的数值。
Now函数:返回计算机的当前系统日期和时间。
Oct函数:返回表示该数八进制数值的字符串。
Replace函数:返回一字符串,其中指定的子串已被另一个子串替换了规
定的次数。
RGB函数:返回代表RGB颜色值的数字。
Right函数:返回字符串最右边的指定数量的字符。
Rnd函数:返回随机数。
Round函数:返回指定位数、四舍五入的数。
RTrim函数:返回去掉尾部空格的字符串副本。
ScriptEngine函数:返回反映使用中的脚本语言的字符串。 ScriptEngineBuildVersion函数:返回使用中的脚本引擎的编译版本号。 ScriptEngineMajorVersion函数:返回使用中的脚本引擎的主版本号。 ScriptEngineMinorVersion函数:返回使用中的脚本引擎的次版本号。 Second函数:返回秒数,取值范围为0至59。
Sgn函数:返回反映数的符号的整数。
Sin函数:返回角度的正弦值。
Space函数:返回由指定数量的空格组成的字符串。
Split函数:返回下限为0的、由指定数量的子串组成的一维数组。 Sqr函数:返回数的平方根。
StrComp函数:返回反映字符串比较结果的数值。
String函数:返回指定长度的重复字符串。
StrReverse函数:返回一字符串,其中字符的顺序与指定的字符串中的顺
序相反。
Tan函数:返回角度的正切值。
Time函数:返回表示当前系统时间的"日期"子类型的"变体"。 Timer函数:返回时经子夜12:00AM后的秒数。
TimeSerial函数:返回含有指定时分秒时间的日期子类型的变体。 TimeValue函数:返回含有时间的日期子类型的变体。 Trim函数:返回去掉前导空格或尾部空格的字符串副本。 TypeName函数:返回一字符串,它提供了关于变量的变体子类型信息。 UBound函数:返回指定维数数组的最大有效下标。
UCase函数:返回的字符串已经被转换为大写字母。
VarType函数:返回标识变体子类型的数值。
Weekday函数:返回表示星期几的数值。
WeekdayName函数:返回表示星期几的字符串。
Year函数:返回表示年份的数值。
◎Vb脚本编程简明教程之十六。
--事件2007年05月10日星期四上午10:32。
转自:。
什么是事件?在我看来,事件就象我们手机上的闹钟,闹钟一响,我们就要去做某些特定的事情。或者这样说,事件就像警钟,当程序运行时,有特殊的事情发生,就会激发事件,事件本身就是一条消息,如果你编写的脚本要对事件进行处理,就需要一个特殊的过程或者函数来接受和处理事件。那么这个特殊的过程或者函数在程序运行时,就不断的*,看系统是否传来了相应的事件,一旦接受到事件,脚本对此作出反应。
那么事件是从那里来的呢?是否需要我们在脚本中对事件进行编写呢?一般情况下,[作者:临汾市外事旅游局薛靖澜,转载请注明出处]事件是某个程序在运行中的特殊状态发出的,我们不需要对事件进行编写,只需要编写处理事件的函数。比如说我们用vbs建立了ie的一个实例,那么当ie的窗口被关闭的时候,就会激发出一个叫做OnQuit的事件。
是不是脚本自然而然就能接受事件并进行处理呢?我们说不是的,在创建对象的时候,我们将使用WSH的createobject命令,例如:。
Setobjie=Wscript.createobject("internetexplorer.application","eve
nt_")。
注意到了吗?多了一个参数,这个参数的作用是什么呢?它叫做事件接收端,当脚本连接的对象包含事件时,如果对象调用的事件是OnBegin,那么WSH将会在脚本中调用一个event_OnBegin的事件处理0。当然事件接受端并不是固定的,如果对象将其定义为MyObj_的话,那么事件处理程序将是:MyObj_OnBegin。
是否很熟悉?在打造个性化QQ一讲中,曾经出现过Window_OnSize(cx,cy)
函数,它其实就是一个事件处理程序。
让我们来举个实际的例子完整的看看事件的处理过程:。
Setobjie=WScript.CreateObject("InternetExplorer.Application","eve
nt_")。
objie.Visible=True。
MsgBox"请关闭浏览器窗口看看效果~",vbSystemModal。
Wscript.sleep6000。
MsgBox"现在已经正常关闭了"。
Subevent_onquit()。
MsgBox"您确定要关闭浏览器吗?",vbSystemModal。
0。
这段脚本打开了一个IE窗口,然后要求你关闭IE窗口,当你关闭窗口的
时候,自动调用事件响应程序。
本篇日志被作者设置为禁止发表新评论
特别声明:
1:资料来源于互联网,版权归属原作者
2:资料内容属于网络意见,与本账号立场无关
3:如有侵权,请告知,立即删除。