vbs为什么叫宝宝巴士,vbs 宝宝巴士
如何快速学习VBS
看看 写的很好
看完后,高级用法,如Wscript.Shell的有关用法
如果想学高级的,看看吧。
个人建议:VBS的可移植性不强,建议换学VB,二者语法相差不大
vbs是什么意思
什么是VBScript呢? VBScript的全称是:Microsoft Visual Basic Script Editon.(微软公司可视化BASIC脚本版). 正如其字面所透露的信息, VBS(VBScript的进一步简写)是基于Visual Basic的脚本语言. 我进一步解释一下, Microsoft Visual Basic是微软公司出品的一套可视化编程工具, 语法基于Basic. 脚本语言, 就是不编译成二进制文件, 直接由宿主(host)解释源代码并执行, 简单点说就是你写的程序不需要编译成.exe, 而是直接给用户发送.vbs的源程序, 用户就能执行了.
我知道菜鸟现在最关心的就是用什么工具来开发VBS程序了, 答案是:记事本.(Notepad).我不是开玩笑, 其实任何一种文本编辑器都可以用来开发VBS开发, 只不过记事本是由系统自带的, 比较好找而已. 尽管如此, 我还是建议你去下载一个专业的文本编辑器, 因为这些工具可以提供 "语法高亮"等功能, 更加方便开发, 用哪一个随你喜好, 我比较喜欢Edit Plus (2.10).
OK, 我们先来写一个VBScript程序热热身.
REM 输入并回显你的名字
\'使用InputBox和Msgbox函数
Dim name,msg
msg="请输入你的名字:"
name=Inputbox(msg,"名称")
Msgbox(name)
把上面的程序清单输入到记事本里面, 然后保存为以.vbs为扩展名的文件("保存类型"里面选择"所有文件").然后双击运行, 观察运行结果. 注意:请自己输入程序清单, 不要复制-粘贴
我来解释一下这个程序, 第一行和第二行的开头分别是"REM"语句和" \' ", 这两个东西的作用是相同的, 表示本行是注释行, 就是说这两行什么也不干,只是用来说明这段程序的功能, 版权信息等等. 注释行是程序最重要的部分之一, 尽管它不是必需的, 但对于其他人阅读源代码, 以及自己分析源代码是很有好处的. 好的习惯是在必要的地方加上清晰, 简洁的注释.
Dim用来声明一个变量, 在VBS中, 变量类型并不是那么重要, 就是说VBS会帮你自动识别变量类型, 而且变量在使用前不一定要先声明, 程序会动态分配变量空间. 在VBS中你不用考虑name储存的是一个整数还是一个小数(学名叫"浮点数"), 也不用考虑是不是字符串(一串字符, 比如:"Hello World"), VBS会自动帮你搞定. 所以第三行语句可以删除, 效果不会变, 但我强烈反对这么做, 一个变量的基本原则就是:先声明,后使用.变量名用字母开头,可以使用下划线,数字, 但不能使用vbs已经定义的字, 比如dim, 也不能是纯数字.
下一行被称之为"赋值", "="是赋值符号, 并不是数学中的等于号, 尽管看起来一样.这是正统的理解, 你要理解成等于也没有什么不可. 赋值号的左边是一个变量, 右边是要赋给变量的值, 经过赋值以后, msg这个变量在程序中等同于"请输入你的名字:"这个字符串,但当msg被再次复制的时候, 原值就会消失. 不光字符串, 其他任何变量都这样被赋值, 例如: a=2, b=12.222等等.
再往下,Inputbox和Msgbox是VBS内建的函数, 一个函数就相当于一个"黑箱", 有输入(参数)和输出(返回值), 你可以不用了解函数是怎么运作的, 只要了解这个函数能干什么就行了, 我们也可以定义自己的函数, 不过那要等到以后再讲. 现在我们只要了解, 一个函数可以有返回值也可以没有, 可以有参数也可以没有. 例如Inputbox就是有返回值的函数, 我们用赋值号左边的变量来"接"住InputBox的返回值--就是你输入的内容. 在inputbox右边的括号里是参数列表, 每个参数用","分隔开, 每个参数有不同的功效, 比如第一个参数会显示在提示里, 我们把msg这个变量作为第一个参数传给了Inputbox 函数, 而msg="请输入你的名字:", 所以我们在对话框的提示栏就会看到"请输入你的名字:" 第二个参数是对话框的标题, 我们用直接量(学名叫"常量", 这里是"字符串常量")传递给函数, 当然你也可以传递变量. Inputbox还有很多参数, 比如你在"名称"后面再加一个","然后输入随便一串字符(字符串,用双引号""包裹起来的一串字符叫做字符串)然后运行, 看看结果. 你会发现用于输入的文本框有了默认的值, 这就是第三个参数的作用.
Msgbox函数是用来输出的函数, 在VBS中没有专门的输出函数(BASIC中的print,C中的printf), 所以我们只能用对话框来观察输出结果, Msgbox的必要参数只有一个, 就是要输出的内容, 在这种情况下, 我们不需要理会msgbox的返回值. 关于Msgbox和Inputbox我们以后还会在讨论, 今天只是热热身, 到此为止.
要点:
1) 注释(以REM或\'开头)行在程序中不起作用, 但能让别人更容易读懂你的程序.
2) 变量好像一个盒子, 或一个代号, 可以代表你想代表的东西. 变量赋值使用"="
3) 以""包裹起来的字符称之为"字符串"
4) 函数像一个"黑箱", 有参数和返回值, 用"="左边的变量可以接住返回值
5) Inputbox函数弹出一个输入对话框,Msgbox则用于输出
作业:
1) 试验Inputbox的第三个参数
2) 写一段程序输出你的年龄
3) 写一段程序进行3次输入, 分别输入你和你父母的姓名(要求显示提示), 并分3次输出
BtOfficer之VB/VBA/VBS系列概览(2021版)
光阴似箭,2021也在各种争吵中落下帷幕,开通自媒体账号也已有300天,这期间有落寞,也有惊喜。 落寞的是,VB家族的确已日薄西山 ,从大家的反馈中亦可窥见势微之一二。惊喜的是, 在业余编程群体中,VB/VBA/VBS仍然是他们的最爱 。业余编程,要想产生更有价值的成果,专业概念(学习)是绕不过的。但 在极为有限的投入下(时间、精力、意愿),如何平衡简单粗暴与精细专深之间的矛盾?
VB家族从诞生之日起,就镌刻着计算机编程教育的基因。 很多人只看到了VB作为可视化编程的先驱,曾经红极一时,却看不到其真正的易用性和低门槛,在于骨子里的编程启蒙教育理念。 天下编程工具,多如牛毛,唯VB(BASIC)是为教育而生。 所以,VB系列极易上手。但 成也萧何败也萧何,VB家族的势微,也同样与其基因有关。
在BASIC和VB的时代,计算机编程尚是一野荒地, 编程是使用计算机的必经之路。 但随着操作系统的崛起和完善,随着现代软件业的繁荣,编程已经发展成为一个令人瞩目的职业。人们使用计算机(PC、智能手机及其他终端设备),完全凭借一些观感就可上车,甚至横行霸道。 编程作为一个专业,无论是教育还是应用,都已发展成为一个极为成熟的产业。
在一个极细分工的现代 社会 里,需要的是专业的人做专业的事。 为非专业的人提供非专业的编程工具,逻辑上已发生了翻天覆地的变化。它 不再需要像若干年前那样直面代码,取而代之的是AI辅佐下的各种轻代码或奔自然语言编程,本质上是如何使用存量代码库的应用问题。所以, 轮子封装性不够的VB家族,败下阵来也在情理之中。
AI究竟会将人类带向何处?就目前而言还看不出端倪 ,至少在很长一段时间里,AI还是没有办法取代人类的主观能动性。 VB/VBA这种直面代码的业余方式,仍然是很多人最稳妥的选择。 所以BtOfficer将VB家族作为首推分享板块,具体理由已在过往文章中阐述过。 本着为广大非职业IT普及适用的IT技术框架,本文将过往文章(200多篇)分类整理于此(『《 蓝色 》』为链接样式,可点击查阅),以便各位取阅,为后续深入学习打下信心、概念方面的基础。
1、是什么促使BtOfficer要分享IT技术?
尽管有简单易用的Python和C#后来居上,但他们的概念体系仍然是建立在专业者的角度。纯现代意义的初学者语言,除了少儿编程外,几乎不再有生存的土壤。 造成这一结果的根本原因,在于专业编码的巨大存量。 很多人,包括专业编码者们或许都坚定地认为, 未来很长一段时间,传统码手的地位都不可动摇。
但事实并非如此(《AI写代码,来得让人猝不及防!》《程序员是怎么记住许许多多的语法的?》 可见一斑 ) ,在数据量尚未积累得足够庞大之前,凭经验谁也不知道还有哪些关系尚未被人类发现。尿不湿与啤酒的故事,就是 数据的规模化效应 之一。 世间万物之间,并非看得见的才叫因果,很多看不见的往往成为神论。然而,人类已经发现了通往神秘之门的钥匙。
一个个小小的人,以匹夫之勇在地表,举不足百斤,卧不过三尺,走不及风水。但聚众之力,可移山改川,可星辰大海,在广袤的地表和太空遍布文明的痕迹。人类的光芒,闪耀在遥遥太空之中。人类的触手正如藤蔓,一个锚点一个锚点地快速向前。 集众之智乃大智,这便是那把钥匙。
互联网AI便是 集众之智 ,即便硅基芯片不能真正地成为人工智能的栖身之所,攫取众人之智,已足以让其变得强大无比。然而, 这是人类整体层面上的某种进化,对于个体而言或许很难避免被“压榨”的过程 。 如何更全面、更客观地看待和适应自身的处境?或许《 互联的围城,已春暖花开,我却心向罗盘荒野 》可以告诉你。
该文首先,从AI的概念讲起,因为AI与互联网的合一,是二者在当前技术框架下,必然的进化方向,而AI正是关乎进化的关键。其次,讲AI与互联网的现实、进化,我等是如何自陷,又如何自救。摘自该文一小段的《 大数据能可怕到什么程度? 》获得了近40万阅读和近1000赞的成绩,但更全面的文章却仅有100阅读和3赞。 尽管数字世界里(包括以后的元宇宙),跨越边界成为特权,从而重塑传统边界的定义,但并不妨碍我们建设和守好现有的传统边界。因为二者并非『不是你死便我亡』的互斥关系。
众智与小智之间,应当各有各的生存空间,应当互惠互利,相互成就,而非一厢情愿。小智不能滥竽充数,坐享众智之便。众智之上的AI也不能恃强凌弱,奴役个体。这就是为什么BtOfficer要分享IT技术给广大非IT人员的原因所在。
2、为什么鼓励非IT适当掌握编程技能?
诚如华为任正非谈 公司人才体系 所说,作为管理者,你 不能要求每个员工都成为奋斗者 。有的员工就想领点工资按时上下班,你得容忍和尊重这样的员工。对于编程而言,并不是每个非IT都有必要来学,和愿意来学。即便学了的,也不是每个人都愿意更精进, 得尊重那些得过且过的存在。
所谓 有钱难买我愿意 ,即便互联网里高墙林立,即便智能手机上的APP都在觊觎个人隐私,能架住不用?如何平衡个体人的发展与人类整体发展之间的矛盾,也不是每个人必须要去思考和应对的。 所以,明知山有虎,偏向虎山行的都是少数派,毕竟佛度有缘人嘛。任何一位奋斗者所收获的,也绝非普通人所能想象的。不一样的风景,得有不一样的位置去观察。
在《 明比阅历浅,暗拼体力衰,指下讲武德,码上笑春风 》一文中,详细地分析了非IT人士是否需要掌握编程技能,掌握到何种程度,入门原则,入门工具的挑选原则,为何挑选VB系作为入门工具,如何开启编码武德之旅。
BtOfficer的经验证明,当1个专业人士掌握了地球上最通用的计算工具之后,可以将专业优势进行数倍的放大。无论是工作效率,学习效率,还是在整合人际关系上,均能受益不少。 这是在互联网包围下的个体,能够获得的为数不多的神器之一。
3、为什么偏偏首推VB/VBA/VBS作为业余编程的入门工具?
有人说,VB(包括BASIC)当年成为入门的不二法门,是因为没得选,而现今有更好的选择了。 这句话,既正确又不正确。它得考虑受众是谁?如果一个人有意愿,也有时间,为什么要学VB呢?成为编码专业人士的渠道千千万,但最后都离不开基础,与其在捷径中胡乱碰撞,还不如从基础开始一步一个脚印。
什么是基础?那是半导体工业体系历经上百年的沉淀。或许有人认为这么说很夸张,软件尤其是系统屏蔽了很多硬件层的东西,从而使得软硬件分离。事实上,就网上漂浮的绝大部分码手,离硬件都非常的遥远。但这并不能说,不懂硬件,不了解硬件就能做好这一行业。 恰恰是懂硬件者,才是基本盘的操持者,微软、苹果、谷歌等概莫能外。
过来人都清楚,要 想掌握半导体工业在软件层的映射,绝非一朝一日之事 。专业人士,爬过高考,躺过本硕博,再经若干项目的锤炼,都不一定能成为行家。上过几十个IT素质教育课时的童鞋们,凭什么能成为IT专家?在不同基础层面来看, 有基础的可选项的确是多了,但对没有基础的人而言, 历史 的发展并未过多地偏向他们,留给业余人士的选项并未因此而增加。所以,地毯式的专业学习之路,压根就不适合业余编程选手。
4、VB/VBA/VBS分享定位在什么层面?
在分享期间,有不少朋友询问能否普及更基础一点的概念。VB/VBA/VBS的基础部分,网上有太多的资料,也有太多自媒体运营者在分享相关内容,再重复并无太多意义。所以这部分,BtOfficer 主要针对流行的一些错误进行纠正。反倒是VB/VBA/VBS很根底的内容,在网上很难见到,BtOfficer会着重围绕这部分进行分享。
在后续分享的 VB/VBA/VBS插件里,会包括更系统的基础知识,从语法语句到内置函数,再到API和具体应用源码案例,均以动态帮助的形式呈现给用户 ,有需要的届时可下载使用。
虽然,大部分内容适合有一定基础的朋友,比如讲原理的部分。但这并不意味着,分享的内容不适合初入门的人。 VB系大道至简, 再深入的东西,回到最后都是简单的语句和函数 。 针对语句用法用例上的结论,是通用的。掌握这些结论,便可不费吹灰之力就可提升代码的质量。 即便有些内容现阶段够不着,在往后的应用中,迟早都有见面的那一天。待到那时,翻出来看一看,想必会顺利很多。
更何况, 深入VB的部分(尤其是BtOfficer改进VB的部分),对绝大部分VB用户都是一样的,是一个全新的领域。 总之, 如果信哥,那就跟我走,必然会还你一个非同凡响的VB家族。
没有什么比过时、淘汰更能让人感到沮丧的了。尤其是对VB家族而言,没有前途的言论正在主宰着入门者清秀的眼神。 但很少有人去问,为何过了半个世纪,BASIC的后人依然在数千种开发工具中位居前20(据坊间流传的排行榜)。要知道,现在微软的GitHub Copilot可以根据功能注释自动补全(写)代码了。所以,有必要去一探究竟,为正确的选择提供充足的参考。
1、操作系统与开发工具之间的关系
正如前文所说,现代开发工具,在操作系统的加持下,让很多开发者能够远离硬件端,而成为纯软件开发者。网络上大部分争得面红耳赤的,都是没能遵循凡事看硬件的基本逻辑。相信很多人也不会去想,操作系统和开发工具之间的关系。那么《 以史为鉴,编程语言,启示录之系统觉醒 》将是一个不错的概览。
编程语言源自机械时代,随着硬件的进化完善,而不断演化。 从救人于水火的助记汇编、到专注于科学计算的面向过程,再到可扩展易维护的面向对象,无一不是硬件在推波助澜。就 个人计算机而言,硬件体系在32位时代,就趋于稳定。后续的64位,也只不过是锦上添花而已。 每一种计算机语言,都诞生于特殊的需求,并经不断完善,才有后来的样子。 这就意味着,每种语言都有长短之处。每个人的学习也应当有所侧重,追求全能,就像Multics,注定很难有结果。 没有过时的语言,只有趁手的工具。 现代操作系统,将硬件层隔离,让应用开发者远离底层,这让 很多人误以为,语言决定一切。孰不知,高级语言只是硬件的传话筒而已,二进制指令才是机器上的唱歌的角儿。脱离硬件讲语言,知其一不知其二也。
2、BASIC、VB与VB.Net和PC操作系统(Windows)之间的关系
现代常青的开发工具,包括C在内,都汲取了很多前人的智慧。所以,评估一项开发工具是否适合自己的技术路线,很有必要去了解这项工具的设计意图,当时技术的局限,以及后续的发展历程。《 VB前传,从教学到 游戏 ,再到系统,似乎每步都是精心设计 》一文便讲述了被淹没在 历史 中的那段过往。
与BASIC一脉相承的VB,吸收了计算机发展史上,数种优秀开发语言的优点,最终落脚于服务普通大众。因为心胸开阔的Kemeny和Kurtz深知,人才是计算机的灵魂和归宿,普通大众才能赋予计算机无限可能。BASIC的 历史 脉络,也告诉后继的使用者,简单里有深厚的哲学,抓住得住时机,才有自己的时代。
不必苛责VB什么,找到合适的位置,这是BASIC立足于教育,带给我们的启示。诚如Kemeny所说,关键要看用户能否意识到哪些是计算机可以做的,哪些是计算机不能做的。但很肯定,它能给企业和大部分私人生活带来影响。
如果说BASIC时代属于混沌的前者,那么VB就属于清醒的后者。《 早判了,VB已死,但我说话了么? 》一文将带你了解属于VB的哲学。在普通人通往程序之路上,VB就像摆渡人,接来一批又送走一批。 VB存世的意义,或许就在于既普世又度人。心清脑秀者,许你3%得道升华。资历平平者,也许你97%的凡人吃喝。
VB的世界里有自由的周全,也有刻薄的束缚。她试图让所有人都能踏进编程的世界,并在这个晦涩的世界里护其周全。她也总拿自由不是没有代价来告诫使用者,知其然还要知其所以然,到远方去才是 旅游 的意义。
正如《 VB/VBA,请让我点名表扬你 》所说,深入理解VB的 历史 ,仍是把握VB适用场景的关键。
3、VB过时淘汰之说蔚然成风,真实的信息是什么?
要说过时淘汰,很显然并没有,至少VBA还在大行其道。《 VB/VBA这个打不死的小强,还会坚持多久? 》一文,便围绕『语言之争』的若干问题,摆事实讲依据,就Python与VBA,VB与VB.NET之间的恩恩怨怨来了个起底和辟谣。在这篇文章里,援引了微软针对VB在各大系统的支持政策。从中不难发现,所谓VB之死,不过是IDE停止更新罢了。所谓Python替代VBA,不过是一投票帖数千点赞而已。属于咱业余户的家伙事,会继续在Win10/Win11上演绎不老传说。
4、VB死掉的是什么,活下来的又是什么?
此时的VB和彼时的VB,所处的技术环境和商业环境是不一样的。如今VB势微,更多的是指商业开发领域的工作机会。《VB、Delphi等编程语言没落的主要原因有哪些?》或许可以回答VB过时淘汰的根本来源。
作为专业的高级开发语言而言,它必须在高级的路上不断的进化,才会有开发人员使用。大量开发人员的使用,才会降低项目的实施成本。相反,如果得不到进化,那么开发的人才资源,就会逐渐枯竭,从而提高项目的成本,进而影响项目的技术路线。 对于专业开发人员而言,掌握一项停止进化的的高级开发语言,就意味着工作机会的收缩。
但这对于一项可实施的技术而言,并不妨碍它继续工作。所以 这种落败,不是指技术,而是指就业机会的凋零。 就VB和Delphi而言,只要不用于糊口的工作,他们仍然是桌面应用开发的一把好手。正如《影响VB/VBA商业价值的原因是什么?》中所说,VB/VBA会逐渐演变成自产自用的小工具生产者角色。
5、打不死的VB,何以存活?
《为什么Windows的兼容性这么强大,到底用了什么技术?》,或许从系统的兼容特性,一直追溯到X86硬件体系,方能明白,小强不死,是有深层次原因的。
6、场景与前景
《Python取代VBA?先问C#答应否》《Office开发,选VSTO,还是VBA,Python行吗?》《VBA源码可以编译吗?》《VBA是脚本语言吗?》《Excel公式算编程?还别说,真是一门编程语言!》《VB/VBA的改进思考》《为什么VBA名列最讨厌编程语言第一名?》
《vb/vba的数据类型,有大佬可深度介绍下吗?》《VB的任性,从Variant开始》《VB的天地,横看成岭侧成峰》《VB的整数,你真的了解?》《知VBA的浮点数结构,更懂算力》《VB/VBA的无符号整数》《VB/VBA之Boolean的坑,防不胜防,治标还得治本》《VB中Byte、Bool和Int与Lng的开销及性能相同吗?》《VB/VBA字符串》《VB/VBA的ByVal和ByRef》《VB/VBA中Variant不仅是容器,充当传参的Any,更可以当函数用哦》《大家都有哪些提高VBA/VB代码运行效率的小技巧?》...哎哟,太多了,懒得整理了,有兴趣的自己去翻吧。
欢迎关注BtOfficer(收藏、点赞、关注+转发) ,更多精彩仍在继续哦(专栏文章将更系统,更全面,但需要阁下支持哦),有严肃的技术,也有轻松的唠嗑,期待你的加入!
VBS是什么文件???
VBS是基于Visual Basic的脚本语言。VBS的全称是:Microsoft Visual Basic Script Edition。
用记事本就可以看到源代码。在没有语法错误的前提下,直接双击左键就可以运行。
但是要注意,因为VBS较为简单可行性强,所以很多人都喜欢利用VBS去写病毒或者整人的代码,所以在打开VBS之前要确保VBS的安全性和渠道的可信性。
任何一种文本编辑器都可以用来开发VBS, 记事本是windows系统自带的,无需专门下载安装,更方便快捷。
扩展资料:
2000年的时候,一名犯罪分子发送了题为”ILoveYou”的电邮,其中含有恶意附件LOVE-LETTER-FOR-YOU.TXT.vbs,实际上并非是文本文件而是VB脚本。
这封”爱的邮件”在全球范围感染了超过300万PC电脑用户。该恶意软件最终大获成功:成为了2002年传播最广泛的计算机病毒。
即便是最简单的恶意软件也能引起受害人的情绪反应。例如,一款典型的Skype木马病毒在受害人的联系人每次上线时,都会向他们发送”嗨”。
结果显而易见:受害人的许多好友和熟人几乎都会同步作出回复。对于有些用户而言,这种体验相当可怕,因此他们称其为”内向的人所遇到的最可怕病毒。”
事实上,该病毒在在这一问候消息中添加了网络钓鱼链接,因此向所有人说”嗨”绝不是为了好玩那么简单。但该恶意软件之所以受到广泛关注,是因为每次感染一台PC电脑都引起一场有关无用通讯的”巨大海啸”。
参考资料:人民网-五种最怪异的木马病毒:滑稽、吓人又有些奇怪
vbs是什麼意思?
什么是VBScript呢? VBScript的全称是:Microsoft Visual Basic Script Editon.(微软公司可视化BASIC脚本版). 正如其字面所透露的信息, VBS(VBScript的进一步简写)是基于Visual Basic的脚本语言. 我进一步解释一下, Microsoft Visual Basic是微软公司出品的一套可视化编程工具, 语法基于Basic. 脚本语言, 就是不编译成二进制文件, 直接由宿主(host)解释源代码并执行, 简单点说就是你写的程序不需要编译成.exe, 而是直接给用户发送.vbs的源程序, 用户就能执行了.
我知道菜鸟现在最关心的就是用什么工具来开发VBS程序了, 答案是:记事本.(Notepad).我不是开玩笑, 其实任何一种文本编辑器都可以用来开发VBS开发, 只不过记事本是由系统自带的, 比较好找而已. 尽管如此, 我还是建议你去下载一个专业的文本编辑器, 因为这些工具可以提供 "语法高亮"等功能, 更加方便开发, 用哪一个随你喜好, 我比较喜欢Edit Plus (2.10).
OK, 我们先来写一个VBScript程序热热身.
REM 输入并回显你的名字
\'使用InputBox和Msgbox函数
Dim name,msg
msg="请输入你的名字:"
name=Inputbox(msg,"名称")
Msgbox(name)
把上面的程序清单输入到记事本里面, 然后保存为以.vbs为扩展名的文件("保存类型"里面选择"所有文件").然后双击运行, 观察运行结果. 注意:请自己输入程序清单, 不要复制-粘贴
我来解释一下这个程序, 第一行和第二行的开头分别是"REM"语句和" \' ", 这两个东西的作用是相同的, 表示本行是注释行, 就是说这两行什么也不干,只是用来说明这段程序的功能, 版权信息等等. 注释行是程序最重要的部分之一, 尽管它不是必需的, 但对于其他人阅读源代码, 以及自己分析源代码是很有好处的. 好的习惯是在必要的地方加上清晰, 简洁的注释.
Dim用来声明一个变量, 在VBS中, 变量类型并不是那么重要, 就是说VBS会帮你自动识别变量类型, 而且变量在使用前不一定要先声明, 程序会动态分配变量空间. 在VBS中你不用考虑name储存的是一个整数还是一个小数(学名叫"浮点数"), 也不用考虑是不是字符串(一串字符, 比如:"Hello World"), VBS会自动帮你搞定. 所以第三行语句可以删除, 效果不会变, 但我强烈反对这么做, 一个变量的基本原则就是:先声明,后使用.变量名用字母开头,可以使用下划线,数字, 但不能使用vbs已经定义的字, 比如dim, 也不能是纯数字.
下一行被称之为"赋值", "="是赋值符号, 并不是数学中的等于号, 尽管看起来一样.这是正统的理解, 你要理解成等于也没有什么不可. 赋值号的左边是一个变量, 右边是要赋给变量的值, 经过赋值以后, msg这个变量在程序中等同于"请输入你的名字:"这个字符串,但当msg被再次复制的时候, 原值就会消失. 不光字符串, 其他任何变量都这样被赋值, 例如: a=2, b=12.222等等.
再往下,Inputbox和Msgbox是VBS内建的函数, 一个函数就相当于一个"黑箱", 有输入(参数)和输出(返回值), 你可以不用了解函数是怎么运作的, 只要了解这个函数能干什么就行了, 我们也可以定义自己的函数, 不过那要等到以后再讲. 现在我们只要了解, 一个函数可以有返回值也可以没有, 可以有参数也可以没有. 例如Inputbox就是有返回值的函数, 我们用赋值号左边的变量来"接"住InputBox的返回值--就是你输入的内容. 在inputbox右边的括号里是参数列表, 每个参数用","分隔开, 每个参数有不同的功效, 比如第一个参数会显示在提示里, 我们把msg这个变量作为第一个参数传给了Inputbox 函数, 而msg="请输入你的名字:", 所以我们在对话框的提示栏就会看到"请输入你的名字:" 第二个参数是对话框的标题, 我们用直接量(学名叫"常量", 这里是"字符串常量")传递给函数, 当然你也可以传递变量. Inputbox还有很多参数, 比如你在"名称"后面再加一个","然后输入随便一串字符(字符串,用双引号""包裹起来的一串字符叫做字符串)然后运行, 看看结果. 你会发现用于输入的文本框有了默认的值, 这就是第三个参数的作用.
Msgbox函数是用来输出的函数, 在VBS中没有专门的输出函数(BASIC中的print,C中的printf), 所以我们只能用对话框来观察输出结果, Msgbox的必要参数只有一个, 就是要输出的内容, 在这种情况下, 我们不需要理会msgbox的返回值. 关于Msgbox和Inputbox我们以后还会在讨论, 今天只是热热身, 到此为止.
要点:
1) 注释(以REM或\'开头)行在程序中不起作用, 但能让别人更容易读懂你的程序.
2) 变量好像一个盒子, 或一个代号, 可以代表你想代表的东西. 变量赋值使用"="
3) 以""包裹起来的字符称之为"字符串"
4) 函数像一个"黑箱", 有参数和返回值, 用"="左边的变量可以接住返回值
5) Inputbox函数弹出一个输入对话框,Msgbox则用于输出
作业:
1) 试验Inputbox的第三个参数
2) 写一段程序输出你的年龄
3) 写一段程序进行3次输入, 分别输入你和你父母的姓名(要求显示提示), 并分3次输出