如何快速地从网页中获得Email地址文档信息
目录
1引言
(1) . saveas(#39;d:scglhtmsmr_#39; . . .
3结束语
正文
摘要 WSH是一种基于32位Windows平台、应用于Act iveX脚本引擎、与编程语言无关的脚本宿主。本文通过几个实例介绍了如何在中应用WSH技术
关键词Delphii WSH脚本执行和辅助功能
1引言
微软公司的WSH(Windows Scripting Host)是一种基于32位Windows平台、应用于ActiveX脚本引擎、与编程语言无关的脚本宿主。 WSH具有良好的脚本语言支持特性它支持VBScri pt、javascr ipt、 Perl、 REXX等各种脚本语言。 WSH的运行方式较为灵活既可以在Windows中运行也可以在DOS命令模式下启动。微软已经在Windows98、 Windows2000中内置了WSH技术。
WSH对象模型主要包含了两类ActiveX接口:脚本执行和辅助功能。每类接口提供多种WSH对象各对象有自己的方法和属性。脚本执行接口提供了许多属性和方法。这类接口允许脚本操作处理WSH在屏幕上显示特定信息执行一些基本功能如创建Word应用程序对象 。辅助功能接口也提供了丰富的属性和方法供用户使用。利用这些属性和方法我们可以进行各种操作例如映射网络驱动器、连接远程打印机、获取编辑系统环境变量如用户名、计算机名、域名等等 、操作注册表等。系统管理员可以利用这些辅助功能创建简单的登录脚本。程序编写者可以利用这些由WSH提供的对象接口在基于Windows的平台上执行各种自动化任务例如启动Word、 Excel、Powerpo int任务打开CAD文件等。
在中应用WSH技术不但可以利用WSH的强大功能增强应用程序的性能还可以简化应用程序设计使编程工作更为简单。某些原本只能由Windows API函数完成的工作现在可以使用更为简单明了的WSH完成。 WSH为用户提供了多个对象例如 WshShortcut、 WshShell、WshArguments、 WshUrlShortcut、 Automat ion、 WshEnvironment等等。我们可以利用它们进行各种应用。
2 WSH应用实例
映射网络驱动器
在实际开发MIS系统时我们曾经碰到这样一个问题该系统由企业内部30个不同的部门使用 由于管理的需要各部门的数据除了通
过专用数据库接口提交到服务器以实现数据共享外还须由系统自动将各部门数据以专门的HTML文件格式发送到指定的服务器目录下。服务器上对应设置了30个不同的共享目录。服务器上的共享目录分别映射为本地各部门的指定驱动器如W: 。显然逐个部门进行手工映射比较繁琐。 比较严重的情况是如果用户由于误操作断开该映射将导致应用系统无法运行。 比较好的做法是在系统启动时自动映射网络驱动器 WSH为我们提供了非常简单的实现方法。下面是一个示例性程序procedure (Sender: TObject)v aroWshNetwork:variant ;beginoWshNetwork:=CreateOleObject(#39;#39;
(#39;w:#39; #39;ezssydmis#39; #39;True#39;
#39;administrator#39; #39;xyz#39;
End;
程序首先创建基于WSH的OLE对象然后映射服务器ezss上的共享目录ydmi s为W: 。 MapNetworkDrive方法的语法格式为
MapNetworkDri ve strLocalName strRemot eName
[bUpdateProfi le] [strUser] [strPassword]
各参数含义简要说明如下strLocalName映射到本地的驱动器名称。s trRemo teName映射的远程共享名。bUpdateProf i l e如果本参数设置为TRUE这种映射将存储在用户Windows系统的profi les文件夹下作为用户配置保留。strUser、 strPassword指定受托共享的用户名和密码。
若要断开该映射可以使用RemoveNetworkDri ve方法例如(#39;w:#39;
创建应用程序快捷方式图标
WSH可以帮助我们非常容易地创建应用程序快捷方式图标这使得我们能够自由地在安装程序中选择发布程序快捷图标的创建方式。至于应用程序快捷方式图标放置在哪个地方则完全由我们来决定。实际上 WSH允许我们自由地将应用程序快捷方式图标放置在桌面、开始菜单、程序组、发送到、 网上邻居、我的文档等各种地方。在
WindowsNT中还可以放置在所有用户的启动组、开始菜单或桌面上。实际操作时 WSH首先利用"strFol derName"属性返回指定文件夹
如桌面的路径然后利用CreateShortcut方法创建快捷方式。当
然我们也可以指定该快捷方式的热键、 目标路径、工作路径、窗口状态等等。下面是一个示例procedure (Sender: TObject)v aroWshShell sthortcut oMyShortcut:variant ;beginoWshShell:=CreateoleObject(#39;#39;sthortcut:=(#39;DeskTop#39;oMyShortcut:=(sthortcut+#39;MIS辅助教学. lnk#39;
:=#39;ALT+CTRL+C#39;
:= #39;d:#39;
="d:mis"
=1end;
上述程序代码在桌面创建了一个“MIS辅助教学”应用程序快捷方式图标。窗口状态WindowStyle设置为普通 Save()方法用于保存
该快捷方式图标。另外我们可以根据需要将Item
"strFolderName"中的strFolderName修改为AllUseDesktop、AllUsetartMenu、 AllUsePrograms、 AllUsetartup、 Desktop、Favorites、 Fonts、 MyDocuments、 NetHood、 PrintHood、 Programs、Recent、 SendTo、 StartMenu、 Startup等串值 以便在不同的地方创建应用程序快捷方式图标。
实现Word、 Powerpoint、 Excel 自动
尽管已经提供了Off ice组件也提供了这方面的应用实例但在处理一个已经存在的Of f ice文档时仍然不够方便。 WSH可以灵活地处理Off ice文档这使得我们几乎可以在应用程序中无缝集成Office功能。在创建基于Office应用程序的OLE对象后编程人员可以利用Office录制宏的功能非常方便地获得有关处理命令减少了开发难度。这样一来在应用程序中实现Word、 Powerpoint、 Excel 自动化就非常容易了。下面是一个处理Word文档的简单示例procedure (Sender: TObject)v aroWord:vari ant ;begin
OWord:=createoleobject(#39;#39; ) ;
:=fal se;
(#39;d:scglmr_#39;
(1) . saveas(#39;d:scglhtmsmr_#39; 8)end;
上述代码的主要作用是将mr_文件另存为Web页适用于Word97、Word2000。请注意s ave as()中的参数8它用于标识HTML文档格式。如果不使用该参数保存为Web页后可能全是乱码。
操作注册表
已经提供了操作注册表的方法使用 但使用WSH的处理方法更为简单明了。 WSH通过RegRead、 RegDe lete、 RegWr ite方法可以对注册表的5个分支部分 即HKEY_CURRENT_USE R HKCU 、
HKEY_LOCAL_MACH I NE HKLM 、 HKEY_C LA SSE S_ROOT HKCR 、
HKEY_US E 、 HKEY_CUR RENT_C ONF I G 进行操作。注意括号内为缩写形式实际应用时我们既可以使用全称也可以使用缩写。下面来看一个示例程序procedure (Sender: TObject)v aroWshReg:variant ;
beginoWshReg:=CreateOleObject(#39;#39;
(#39;HKCUWSHS amp l eV a l u e#39; 10 #39;RE G_B INARY#39;end;
上述代码在注册表的HKEY_CURRENT_U SER分支下创建主键
WSHSamp le并在该主键下创建二进制值Va lue其数值为10。
RegWrite方法的语法格式为 RegWri te s trName anyValue[strType] 。其中 strType参数用于指定键值的数据类型可以是REG_DWO RD、 RE G_B INA RY、 RE G_SZ等等。
3结束语
总的看来 WSH使程序代码容易编写、易于阅读还可以实现一些特殊功能。在使用开发应用系统时我们可以适当使用WSH技术。
参考文献
1 Charlie Calvert Delphi4编程技术内幕机械工业出版社
1999
2 Microsoft Corporation动态HTML参考和开发应用大全人民邮电出版社
妮妮云的来历妮妮云是 789 陈总 张总 三方共同投资建立的网站 本着“良心 便宜 稳定”的初衷 为小白用户避免被坑妮妮云的市场定位妮妮云主要代理市场稳定速度的云服务器产品,避免新手购买云服务器的时候众多商家不知道如何选择,妮妮云就帮你选择好了产品,无需承担购买风险,不用担心出现被跑路 被诈骗的情况。妮妮云的售后保证妮妮云退款 通过于合作商的友好协商,云服务器提供2天内全额退款到网站余额,超过2天...
速云怎么样?速云,国人商家,提供广州移动、深圳移动、广州茂名联通、香港hkt等VDS和独立服务器。现在暑期限时特惠,力度大。广州移动/深圳移动/广东联通/香港HKT等9折优惠,最低月付9元;暑期特惠,带宽、流量翻倍,深港mplc免费试用!点击进入:速云官方网站地址速云优惠码:全场9折优惠码:summer速云优惠活动:活动期间,所有地区所有配置可享受9折优惠,深圳/广州地区流量计费VDS可选择流量翻...
CloudCone商家在前面的文章中也有多次介绍,他们家的VPS主机还是蛮有特点的,和我们熟悉的DO、Linode、VuLTR商家很相似可以采用小时时间计费,如果我们不满意且不需要可以删除机器,这样就不扣费,如果希望用的时候再开通。唯独比较吐槽的就是他们家的产品太过于单一,一来是只有云服务器,而且是机房就唯一的MC机房。CloudCone 这次四周年促销活动期间,商家有新增独立服务器业务。同样的C...