如何快速地从网页中获得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参考和开发应用大全人民邮电出版社
易探云怎么样?易探云香港云服务器比较有优势,他家香港BGP+CN2口碑不错,速度也很稳定。尤其是今年他们动作很大,推出的香港云服务器有4个可用区价格低至18元起,试用过一个月的用户基本会续费,如果年付的话还可以享受8.5折或秒杀价格。今天,云服务器网(yuntue.com)小编推荐一下易探云国内云服务器优惠活动,北京和深圳这二个机房的云服务器2核2G5M带宽低至330.66元/年,还有高配云服务器...
近日快云科技发布了最新的夏季优惠促销活动,主要针对旗下的香港CN2 GIA系列的VPS云服务器产品推送的最新的75折优惠码,国内回程三网CN2 GIA,平均延迟50ms以下,硬件配置方面采用E5 2696v2、E5 2696V4 铂金Platinum等,基于KVM虚拟架构,采用SSD硬盘存储,RAID10阵列保障数据安全,有需要香港免备案CN2服务器的朋友可以关注一下。快云科技怎么样?快云科技好不...
PacificRack在本月发布了几款特价产品,其中最低款支持月付仅1.5美元,基于KVM架构,洛杉矶机房,PR-M系列。PacificRack简称PR,QN机房旗下站点,主要提供低价VPS主机产品,基于KVM架构,数据中心为自营洛杉矶机房,现在只有PR-M一个系列,分为了2个类别:常规(Elastic Compute Service)和多IP产品(Multi IP Server)。下面列出几款秒...