这几天试着把客户端自动化构建搭建起来,发现Visual Build还是个不错的工具,任何想自动跑的流程性事务都可以交给他来做。
实际上VB的原理很简单,就是把批处理可视化了。想要可视化,必定会提供N多组件,VB提供的组件很全面,能够想到的操作基本都有,拿Source Control来说,目前主流的源码管理工具都支持,Perforce、AB、SVN、CVS…。在灵活性方面,VB使用类似C/C++中的宏达到灵活配置的要求,此外还提供了VBScript(Visual Basic Script)、Python等脚本接口(VBScript支持最好,运行其他脚本需要自己安装相应执行环境),组件的参数可以包含宏以及用“[]”括起来的脚本代码。
使用VB就像在绘制一幅流程图,通过拖进组件配置参数来完成某项任务,因此条件判断和循环是VB理所应当提供的基本功能。
目前发现的唯一缺憾就是不能并发执行多个操作,为此你不得不把本可以并行执行的操作顺序化,但这并不妨害我对VB的喜爱,计算机软件的一大作用就是要把人从繁琐重复的体力劳动中解放出来。
P.S.
1. 使用Perforce command line操作时,要么首先设置各种配置变量,要么在每个操作中都携带P4CLIENT、HOST、PORT、USER等完备信息,不然可能会出现操作到另外一个depot上(如果有多个depot)的问题。
2. 在用MAPISend通过MS Exchange Server自动发送邮件时,因为公司配置的安全策略,会出现“有一个程序正试图以您的名义自动发送电子邮件”警告让你手动允许,可通过clickyes来绕过。如果是smtp就最好不过了,VB直接提供了mailsend组件。