中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-09-13 21:56
47,812 主题排行 / 349,916 发帖 / 今日 0 篇 / 48,268 会员排行
网络日志(Blog) » 【Billunique】个人网志-滴水汇海
可打印版本  42,503 / 59
第46楼 Billunique 发表于 2007-06-14 11:44
中级用户 发帖 112 积分 259
  今天转悠的时候偶然间发现bjsh版主发的这个Vbs教程,真的相当不错:http://www.cn-dos.net/forum/viewthread.php?tid=30588。以后我就可能会不时地从中摘记一些东西啦。
第47楼 Billunique 发表于 2007-06-14 12:05
中级用户 发帖 112 积分 259
  1.因为Msgbox的第三个参数是标题,像下面这样就可以省些力气:


  2.凡是将一对象引用赋给变量,就需要使用Set关键字。那么什么是对象引用呢?凡是字符串、数值、布尔值之外的变量都是对象引用。

  3.Run在运行解析时,遇到空格会停止,解决的方法是使用双引号。比如:wscript.shell.run"""D:\Study\VBS\windows 脚本编程核心技术精解"""。
  run函数有三个参数,第一个参数是你要执行的程序的路径,第二个程序是窗口的形式,0是在后台运行;1表示正常运行;2表示激活程序并且显示为最小化;3表示激活程序并且显示为最大化...; 第三个参数是表示这个脚本是等待还是继续执行,如果设为了true,脚本就会等待调用的程序退出后再向后执行。
第48楼 Billunique 发表于 2007-06-14 15:17
中级用户 发帖 112 积分 259
  1.On Error Resume Next
  这行语句可以告诉vbs在运行时跳过发生错误的语句,紧接着执行跟在它后面的语句。

  2.虽然On Error Resume Next语句可以防止vbs脚本在发生错误时停止运行,但是它并不能真正处理错误,要处理错误,你需要在脚本中增加一些语句,用来检查错误条件并在错误发生时处理它。

  vbscript提供了一个对象err对象,他有两个方法clear,raise,5个属性:description,helpcontext,helpfile,number,source。err对象不用引用实例,可以直接使用。
第49楼 Billunique 发表于 2007-06-14 16:29
中级用户 发帖 112 积分 259
关于操作注册表我想说的:

  1.显然要借助(引用)Wscript.Shell。

  2.路径的最后是用"\"结尾的,比如"HKCU\....\Thing\",就表示这是个项;若没有"\",如"HKCU\....\Thing",则表示这是个键值(键值跟数据不是一个概念)

  3.对于写操作,可以在(路径上的)一个项后进行随意的延伸,不用去担心这个项或键值本身是否存在;如果不存在,那就是“一路”新增,如果存在,那就是修改。All Right?!

  4.若想删除一个键值,则Wscript.Shell.Regdelete "HKCU\....\Thing";
  若想把该键值的数据清空,则Wscript.Shell.Regwrite "HKCU\....\Thing",""。

[ Last edited by Billunique on 2007-6-14 at 04:35 PM ]
第50楼 Billunique 发表于 2007-06-15 12:02
中级用户 发帖 112 积分 259
  
第51楼 Billunique 发表于 2007-06-15 19:29
中级用户 发帖 112 积分 259
  用下面这些代码放在VB编辑器里试试大致可以明白关于文件操作的一些东西:

  想说明的是,OpenTextFile之后进行的Read操作,好像是在“切割”文本似的;上面的先读了到下面就只能读到其“切”完的加上自己“能力范围”内的那部分(我也说不清楚,呵呵)。ReadLine的能力范围只是读一行,不能读指定行。

  Write和WriteLine的用法类似,不过Open的时候需要“OpenTextFile(~.txt,2,”其中1表只读、2表写、8表追加;true为不存在则创建,默认为false。

  若想既写又读,那么必须在要进行具体操作前把模式(即1、2、8)先定好,一种操作对应一个模式,否则脚本就会报错。

[ Last edited by Billunique on 2007-6-15 at 07:50 PM ]
第52楼 Billunique 发表于 2007-06-18 11:49
中级用户 发帖 112 积分 259
运用数组


  Variable arrays are just groups of variables that can be accessed using an index number. This is especially useful if your script needs to look up information stored in variables.

  Variable arrays always need to be declared so that VBScript knows how much storage space it should reserve. You can declare variable arrays using Dim or ReDim.

  Dim initializes a variable array of fixed size. You need to specify the number of elements the array should hold, and you cannot expand or shrink the array afterwards.

  Using Dim, you need to specify the number of entries as a constant or absolute number. You are not allowed to use a variable to feed the size of Dim. ReDim will also accept variables.

  大致说的就是ReDim比Dim好,可以随时改变数组的大小,那我们就用ReDim好了呗:)下面是一个简单例子:


[ Last edited by Billunique on 2007-6-18 at 11:56 AM ]
第53楼 Billunique 发表于 2007-06-18 18:51
中级用户 发帖 112 积分 259
Split和Join

  其实用Split可以简化上面的代码。

  Split其实就是用分隔符将一段字符串“弄”成数组。

  而Join就是把数组里的各个元素“弄”成字符串。比如:
第54楼 Billunique 发表于 2007-09-17 19:14
中级用户 发帖 112 积分 259
三月没来了,实在惭愧啊,又一次被方向迷失了......
第55楼 gne3 发表于 2008-01-11 20:04
高级用户 发帖 252 积分 526
哈哈,你的第二帖对我有启发。谢谢
第56楼 Billunique 发表于 2008-08-18 11:13
中级用户 发帖 112 积分 259
过来打个招呼,我最爱的论坛之一!!好久不见~
第57楼 a574616737 发表于 2008-08-25 10:07
初级用户 发帖 13 积分 28
想楼住学习,等有上大学有时间时,也来这里写写学习笔记
第58楼 Billunique 发表于 2010-05-12 14:24
中级用户 发帖 112 积分 259
呱呱,露个脸,吐个泡泡
第59楼 zzz19760225 发表于 2016-02-09 21:21
超级版主 发帖 2,020 积分 3,673
怎么复制的
第60楼 zzz19760225 发表于 2017-12-04 13:48
超级版主 发帖 2,020 积分 3,673
看看
上一页  1 2 3 4
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023