如何快速地从网页中获得Emai l地址(1)
摘 要WSH是一种基于32位Windows平台、应用于Active娠X脚本引擎、 与编程语言无关的脚本宿主。本文通过几个实例介绍了如何在中应用耵WSH技术。
关键词 Delph蒉i i WSH 脚本执行和辅助功能
1 引言
微软公司的WSH(W砣indowsScriptingHos t)是一种基于32位Windows平喾台、应用于ActiveX脚本引擎、与舂编程语言无关的脚本宿主。 WSH具有良藩好的脚本语言支持特性 它支持VBSc 雄ript、 javascript、 Pe 皆rl、 REXX等各种脚本语言。WSH堤的运行方式较为灵活 既可以在Wind哧ows中运行也可以在DOS命令模式下启动。微软已经在Windows98 奄、Windows2000中内臵了WS翌H技术。
WSH对象模型主要包含了两喑类ActiveX接口:脚本执行和辅助在功能。每类接口提供多种WSH对象各对象有自己的方法和属性。脚本执行接口顾提供了许多属性和方法。这类接口允许脚本操作处理WSH在屏幕上显示特定信吡息执行一些基本功能。辅助功能接口也提供了丰富的属性和方法供用户使用。利仨用这些属性和方法我们可以进行各种操作以例如映射网络驱动器、连接远程打印忱机、获取编辑系统环境变量、
1/7
操作注册表亍等。 系统管理员可以利用这些辅助功能创霰建简单的登录脚本。程序编写者可以利用孪这些由WSH提供的对象接口在基于Wi 晶ndows的平台上执行各种自动化任务顷例如启动Word、 Excel 、 P酚owerpoint任务打开CAD文啮件等。
在中应用WSH技术不但可以穰利用WSH的强大功能增强应用程序的性能还可以简化应用程序设计使编程工作更为简单。某些原本只能由Windo熵wsAPI函数完成的工作现在可以使用忙更为简单明了的WSH完成。 WSH为用府户提供了多个对象例如 WshSho 獭rtcut、 WshShel l 、 Wsh 岛Arguments、WshUrlShㄒortcut、 Automation、 筒WshEnvironment等等。我朊们可以利用它们进行各种应用。
2 W丰SH应用实例
映射网络驱动器
在实际掣开发MIS系统时 我们曾经碰到这样一见个问题该系统由企业内部30个不同的部门使用由于管理的需要各部门的数躬据除了通过专用数据库接口提交到服务器甯以实现数据共享外还须由系统自动将各骰部门数据以专门的H TML文件格式发送到指定的服务器目录下。服务器上对应设彡臵了30个不同的共享目录。服务器上的瘕共享目录分别映射为本地各部门的指定驱濡动器如W: 。 显然逐个部门进行手工虏映射比较繁琐。 比较严重的情况是如果用户由于误操作断开该映射将导致应用系统无法运行。 比较好的做法是在系统启檐
2/7
动时自动映射网络驱动器 WSH为我们嘣提供了非常简单的实现方法。 下面是一个宅示例性程序procedure(S意ender:TObject) ;va⑧roWshNetwork:vari 鹕ant;beginoWshNet work:=CreateOleObj 塌ect (' ' ) ;
('w: ' , '\e ジzssydmis' , 'True' , ' 半administrator' , 'xyz' ) ;
End;
程序首先创建基于WSH的OLE对象然后映射服务器ezss上的共享目录ydmis为W: 。 席MapNetworkDrive方法的飞语法格式为
MapNetwor鞔kDrive
各参数含义简要说明踮如下strLocalName 映堀射到本地的驱动器名称。strRem攉oteName映射的远程共享名。bUpdateProfi le如果本参数喻设臵为TRUE,这种映射将存储在用户援Windows系统的prof i les文件夹下作为用户配臵保留。strUser、 strPassword指定受楞托共享的用户名和密码。
若要断开该映烁射可以使用RemoveNetworkDrive方法
3/7
例如('w: ' ) 。
创建应用程序快捷方式图标
WSH可甄以帮助我们非常容易地创建应用程序快捷贲方式图标这使得我们能够自由地在安装程序中选择发布程序快捷图标的创建方式怒。至于应用程序快捷方式图标放臵在哪个挠地方 则完全由我们来决定。实际上 WSH允许我们自由地将应用程序快捷方式图标放臵在桌面、开始菜单、程序组、发送到、 网上邻居、我的文档等各种地方。在WindowsNT中还可以放臵在衫所有用户的启动组、开始菜单或桌面上。 帚实际操作时 WSH首先利用属性返回指ゑ定文件夹的路径然后利用Create遏Shortcut方法创建快捷方式。 当玮然 我们也可以指定该快捷方式的热键、 妻目标路径、工作路径、 窗口状态等等。下竹面是一个示例procedure(固Sender:TObject) ;v涂aroWshShel l, strSh砝ortcut,oMyShortcut 犀:variant;beginoW窝shShel l:=Createole贷Object (' ' ) ;strSho莼rtcut:=('DeskTop' ) ;oMyShortcut:=(st 雪rShortcut+'MIS辅助教学铱. lnk' ) ;
:='ALT+C TRL+C' ;
:='d: ' ;
4/7
="垣d:mis"
=1
;end;
上娈述程序代码在桌面创建了一个“MIS辅国助教学”应用程序快捷方式图标。 窗口状宪态设臵为普通 Save()方法用于保И存该快捷方式图标。 另外 我们可以根据盟需要将Item中的strFolderName修改为Al lUsersDesktop、Al lUsersStartMenu、 Al lUsersProgr ams、 Al lUsersStartu 靳p、 Desktop、Favorite绻s、 Fonts、 MyDocument s、 NetHood、 PrintHoo讪d、Programs、 Recent、 劢SendTo、 StartMenu、 S冰tartup等串值以便在不同的地方荸创建应用程序快捷方式图标。
实现Wo铿rd、 Powerpoint、 Exce馒l 自动
尽管已经提供了 Office组氽件也提供了这方面的应用实例但在处轭理一个已经存在的Office文档时仍躺然不够方便。 WSH可以灵活地处理Of 峒fice文档这使得我们几乎可以在应用程序中无缝集成Office功能。在柬创建基于Office应用程序的OLE╃对象后编程人员可以利用Office录制宏的功能 非常方便地获得有关处理ヤ命令减少了开发难度。这样一来在应铐用程序中实现Word、 Powerpo鲆int、 Excel 自动化就非常容易愧了。下面是一个处理Word文档的简单蹀示例procedure(Send戋er:TObject) ;
5/7
var
拿oWord:variant;beg霄in
OWord:=createol 尕eobject (' ' ) ;
:=fa溅lse;
('d: scglmr_' ) ;
(1) . saveas ('d: s 莒cglhtmsmr_' , 8) ;
;end;
上述代码的主要作用是将mr钟_文件另存为Web页适用于Word房97、 Word2000。请注意savじeas ()中的参数8 它用于标识HT ML文档格式。如果不使用该参数保存扃为Web页后可能全是乱码。
操作注册弊表
已经提供了操作注册表的方法但使辜用WSH的处理方法更为简单明了。 WS│H通过RegRead、 RegDele 渡te、 RegWrite方法可以对注庾册表的5个分支部分即HKEY_CU糈RRENT_USER、HKEY_LO侨CAL_MACHINE、 HKEY_C莴LASSES_ROOT、 HKEY_U底SERS、HKEY_CURRENT_痒CONFIG进行操作。注意括号内尻为缩写形式 实际应用时 我们既可以使щ用全称也可以使用缩写。下面来看一个两示例程序procedure(Sender:TObject) ;
6/7
varoWshReg:variant;beginoWshReg:=Cr褐eateOleObject (' ' ) ;
('HKCUWSHSampleVal 樵ue' , 10, 'REG_BINARY俳' ) ;end;
上述代码在注册表的驵HKEY_CURRENT_USER分搭支下创建主键WSHSample并在岂该主键下创建二进制值Value其数鬟值为10。RegWrite方法的语法奥格式为RegWrite。其中 st骖rType参数用于指定键值的数据类型 可以是REG_DWORD、 REG_萁BINARY、 REG_SZ等等。
3结束语
总的看来 WSH使程序代码割容易编写、 易于阅读还可以实现一些特殊功能。在使用开发应用系统时 我们可以适当使用WSH技术。
参考文献
1 砀Charl ieCalvert Del 觏phi4编程技术内幕机械工业出版社浑 1999
2MicrosoftC orporation 动态HTML参绽考和开发应用大全人民邮电出版社
7/7
华纳云(HNCloud Limited)是一家专业的全球数据中心基础服务提供商,总部在香港,隶属于香港联合通讯国际有限公司,拥有香港政府颁发的商业登记证明,保证用户的安全性和合规性。 华纳云是APNIC 和 ARIN 会员单位。主要提供香港和美国机房的VPS云服务器和独立服务器。商家支持支付宝、网银、Paypal付款。华纳云主要面向国内用户群,所以线路质量还是不错的,客户使用体验总体反响还是比较好...
前几天还在和做外贸业务的网友聊着有哪些欧洲机房的云服务器、VPS商家值得选择的。其中介绍他选择的还是我们熟悉的Vultr VPS服务商,拥有比较多达到17个数据中心,这不今天在登录VULTR商家的时候看到消息又新增一个新的机房。这算是第18个数据中心,也是欧洲VPS主机,地区是瑞典斯德哥尔摩。如果我们有需要欧洲机房的朋友现在就可以看到开通的机房中有可以选择瑞典机房。目前欧洲已经有五个机房可以选择,...
美国知名管理型主机公司,2006年运作至今,虚拟主机、VPS、云服务器、独立服务器等业务全部采用“managed”,也就是人工参与度高,很多事情都可以人工帮你处理,不过一直以来价格也贵。也不知道knownhost什么时候开始运作无管理型业务的,估计是为了扩展市场吧,反正是出来较长时间了。闲来无事,那就给大家介绍下“unmanaged VPS”,也就是无管理型VPS,低至5美元/月,基于KVM虚拟,...