下載本文檔
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
如何快速地從網(wǎng)頁(yè)中獲得Email地址
摘要WSH是一種基于32位Windows平臺(tái)、應(yīng)用于ActiveX腳本引擎、與編程語(yǔ)言無(wú)關(guān)的腳本宿主。本文通過(guò)幾個(gè)實(shí)例介紹了如何在Delphi5.0中應(yīng)用WSH技術(shù)。關(guān)鍵詞DelphiiWSH腳本執(zhí)行和輔助功能1引言微軟公司的WSH(WindowsScriptingHost)是一種基于32位Windows平臺(tái)、應(yīng)用于ActiveX腳本引擎、與編程語(yǔ)言無(wú)關(guān)的腳本宿主。WSH具有良好的腳本語(yǔ)言支持特性,它支持VBScript、javascript、Perl、REXX等各種腳本語(yǔ)言。WSH的運(yùn)行方式較為靈活,既可以在Windows中運(yùn)行,也可以在DOS命令模式下啟動(dòng)。微軟已經(jīng)在Windows98、Windows2000中內(nèi)置了WSH技術(shù)。WSH對(duì)象模型主要包含了兩類ActiveX接口:腳本執(zhí)行和輔助功能。每類接口提供多種WSH對(duì)象,各對(duì)象有自己的方法和屬性。腳本執(zhí)行接口提供了許多屬性和方法。這類接口允許腳本操作處理WSH,在屏幕上顯示特定信息,執(zhí)行一些基本功能(如創(chuàng)建Word應(yīng)用程序?qū)ο螅?。輔助功能接口也提供了豐富的屬性和方法供用戶使用。利用這些屬性和方法我們可以進(jìn)行各種操作,例如:映射網(wǎng)絡(luò)驅(qū)動(dòng)器、連接遠(yuǎn)程打印機(jī)、獲取編輯系統(tǒng)環(huán)境變量(如用戶名、計(jì)算機(jī)名、域名等等)、操作注冊(cè)表等。系統(tǒng)管理員可以利用這些輔助功能創(chuàng)建簡(jiǎn)單的登錄腳本。程序編寫者可以利用這些由WSH提供的對(duì)象接口在基于Windows的平臺(tái)上執(zhí)行各種自動(dòng)化任務(wù),例如:?jiǎn)?dòng)Word、Excel、Powerpoint任務(wù),打開(kāi)CAD文件等。在Delphi5.0中應(yīng)用WSH技術(shù),不但可以利用WSH的強(qiáng)大功能增強(qiáng)應(yīng)用程序的性能,還可以簡(jiǎn)化應(yīng)用程序設(shè)計(jì),使編程工作更為簡(jiǎn)單。某些原本只能由WindowsAPI函數(shù)完成的工作現(xiàn)在可以使用更為簡(jiǎn)單明了的WSH完成。WSH為用戶提供了多個(gè)對(duì)象,例如:WshShortcut、WshShell、WshArguments、WshUrlShortcut、Automation、WshEnvironment等等。我們可以利用它們進(jìn)行各種應(yīng)用。2WSH應(yīng)用實(shí)例2.1映射網(wǎng)絡(luò)驅(qū)動(dòng)器
在實(shí)際開(kāi)發(fā)MIS系統(tǒng)時(shí),我們?cè)?jīng)碰到這樣一個(gè)問(wèn)題:該系統(tǒng)由企業(yè)內(nèi)部30個(gè)不同的部門使用,由于管理的需要,各部門的數(shù)據(jù)除了通過(guò)專用數(shù)據(jù)庫(kù)接口提交到服務(wù)器以實(shí)現(xiàn)數(shù)據(jù)共享外,還須由系統(tǒng)自動(dòng)將各部門數(shù)據(jù)以專門的HTML文件格式發(fā)送到指定的服務(wù)器目錄下。服務(wù)器上對(duì)應(yīng)設(shè)置了30個(gè)不同的共享目錄。服務(wù)器上的共享目錄分別映射為本地各部門的指定驅(qū)動(dòng)器如W:)。顯然,逐個(gè)部門進(jìn)行手工映射比較繁瑣。比較嚴(yán)重的情況是,如果用戶由于誤操作斷開(kāi)該映射,將導(dǎo)致應(yīng)用系統(tǒng)無(wú)法運(yùn)行。比較好的做法是在系統(tǒng)啟動(dòng)時(shí)自動(dòng)映射網(wǎng)絡(luò)驅(qū)動(dòng)器,WSH為我們提供了非常簡(jiǎn)單的實(shí)現(xiàn)方法。下面是一個(gè)示例性程序:procedureTForm1.FormCreate(Sender:TObject);varoWshNetwork:variant;beginoWshNetwork:=CreateOleObject('Wscript.Network');oWshNetwork.MapNetworkDrive('w:','\\ezss\ydmis','True','administrator','xyz');End;程序首先創(chuàng)建基于WSH的OLE對(duì)象,然后映射服務(wù)器ezss上的共享目錄ydmis為W:。MapNetworkDrive方法的語(yǔ)法格式為:MapNetworkDrive(strLocalName,strRemoteName,[bUpdateProfile],[strUser],[strPassword])各參數(shù)含義簡(jiǎn)要說(shuō)明如下:strLocalName映射到本地的驅(qū)動(dòng)器名稱。strRemoteName映射的遠(yuǎn)程共享名。
bUpdateProfile如果本參數(shù)設(shè)置為TRUE,這種映射將存儲(chǔ)在用戶Windows系統(tǒng)的profiles文件夾下作為用戶配置保留。strUser、strPassword指定受托共享的用戶名和密碼。
若要斷開(kāi)該映射,可以使用RemoveNetworkDrive方法,例如oWshNetwork.RemoveNetworkDrive('w:')。2.2創(chuàng)建應(yīng)用程序快捷方式圖標(biāo)
WSH可以幫助我們非常容易地創(chuàng)建應(yīng)用程序快捷方式圖標(biāo),這使得我們能夠自由地在安裝程序中選擇發(fā)布程序快捷圖標(biāo)的創(chuàng)建方式。至于應(yīng)用程序快捷方式圖標(biāo)放置在哪個(gè)地方,則完全由我們來(lái)決定。實(shí)際上,WSH允許我們自由地將應(yīng)用程序快捷方式圖標(biāo)放置在桌面、開(kāi)始菜單、程序組、發(fā)送到、網(wǎng)上鄰居、我的文檔等各種地方。在WindowsNT中,還可以放置在所有用戶的啟動(dòng)組、開(kāi)始菜單或桌面上。實(shí)際操作時(shí),WSH首先利用WshSpecialFolders.Item("strFolderName")屬性返回指定文件夾(如桌面)的路徑,然后利用CreateShortcut方法創(chuàng)建快捷方式。當(dāng)然,我們也可以指定該快捷方式的熱鍵、目標(biāo)路徑、工作路徑、窗口狀態(tài)等等。下面是一個(gè)示例:procedureTForm1.Button1Click(Sender:TObject);varoWshShell,strShortcut,oMyShortcut:variant;begin
oWshShell:=CreateoleObject('Wscript.Shell');
strShortcut:=oWshShell.SpecialFolders.Item('DeskTop');
oMyShortcut:=oWshShell.CreateShortcut(strShortcut+'\MIS輔助教學(xué).lnk');
oMyShortCut.Hotkey:='ALT+CTRL+C';oMyShortcut.TargetPath:='d:\mis\mis.exe';
oMyShortCut.WorkingDirectory="d:\mis\"
oMyShortCut.WindowStyle=1
oMyShortCut.Save;end;上述程序代碼在桌面創(chuàng)建了一個(gè)“MIS輔助教學(xué)”應(yīng)用程序快捷方式圖標(biāo)。窗口狀態(tài)(WindowStyle)設(shè)置為普通,Save()方法用于保存該快捷方式圖標(biāo)。另外,我們可以根據(jù)需要將Item("strFolderName")中的strFolderName修改為AllUsersDesktop、AllUsersStartMenu、AllUsersPrograms、AllUsersStartup、Desktop、Favorites、Fonts、MyDocuments、NetHood、PrintHood、Programs、Recent、SendTo、StartMenu、Startup等串值,以便在不同的地方創(chuàng)建應(yīng)用程序快捷方式圖標(biāo)。2.3實(shí)現(xiàn)Word、Powerpoint、Excel自動(dòng)盡管Delphi5.0已經(jīng)提供了Office組件,也提供了這方面的應(yīng)用實(shí)例,但在處理一個(gè)已經(jīng)存在的Office文檔時(shí)仍然不夠方便。WSH可以靈活地處理Office文檔,這使得我們幾乎可以在應(yīng)用程序中無(wú)縫集成Office功能。在創(chuàng)建基于Office應(yīng)用程序的OLE對(duì)象后,編程人員可以利用Office錄制宏的功能,非常方便地獲得有關(guān)處理命令,減少了開(kāi)發(fā)難度。這樣一來(lái),在應(yīng)用程序中實(shí)現(xiàn)Word、Powerpoint、Excel自動(dòng)化,就非常容易了。下面是一個(gè)處理Word文檔的簡(jiǎn)單示例:procedureTForm1.Button1Click(Sender:TObject);varoWord:variant;beginOWord:=createoleobject('word.application');oWord.visible:=false;oWord.documents.open('d:\scgl\mr_10.doc');oWord.documents.item(1).saveas('d:\scgl\htms\mr_10.html',8);oWord.quit;end;
上述代碼的主要作用是將mr_10.doc文件另存為Web頁(yè),適用于Word97、Word2000。請(qǐng)注意saveas()中的參數(shù)8,它用于標(biāo)識(shí)HTML文檔格式。如果不使用該參數(shù),保存為Web頁(yè)后可能全是亂碼。2.4操作注冊(cè)表
Delphi5.0已經(jīng)提供了操作注冊(cè)表的方法(使用TRegistry.Create),但使用WSH的處理方法更為簡(jiǎn)單明了。WSH通過(guò)RegRead、RegDelete、RegWrite方法,可以對(duì)注冊(cè)表的5個(gè)分支部分,即HKEY_CURRENT_USER(HKCU)、HKEY_LOCAL_MACHINE(HKLM)、HKEY_CLASSES_ROOT(HKCR)、HKEY_USERS、HKEY_CURRENT_CONFIG,進(jìn)行操作。注意,括號(hào)內(nèi)為縮寫形式,實(shí)際應(yīng)用時(shí),我們既可以使用全稱,也可以使用縮寫。下面來(lái)看一個(gè)示例程序:procedureTForm1.Button1Click(Sender:TObject);varoWshReg:variant;beginoWshReg:=CreateOleObject('Wscript.Shell');oWshReg.RegWrite('HKCU\WSHSample\Value',10,'REG_BINARY');end;上述代碼在注冊(cè)表的HKEY_CURRENT_USER分支下創(chuàng)建主鍵WSHSample,并在該主鍵下創(chuàng)建二進(jìn)制值Value,其數(shù)值為10。RegWrite方法的語(yǔ)法格式為:RegWrite(strName,anyValue,[strType])。其中,strType參數(shù)用于指定鍵值的數(shù)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 民生領(lǐng)域貪污賄賂犯罪情況分析
- 軟腭癌的健康宣教
- JJF(陜) 029-2020 實(shí)驗(yàn)室氨氮測(cè)定儀校準(zhǔn)規(guī)范
- 《數(shù)據(jù)分析分享》課件
- 提升產(chǎn)品質(zhì)量管理的工作計(jì)劃
- 建立區(qū)域聯(lián)盟推動(dòng)教學(xué)改革計(jì)劃
- 數(shù)控車銑中心相關(guān)行業(yè)投資規(guī)劃報(bào)告范本
- 醫(yī)用高值耗材相關(guān)行業(yè)投資規(guī)劃報(bào)告
- 食品銷售合同三篇
- 人造崗石樹(shù)脂行業(yè)相關(guān)投資計(jì)劃提議
- 哈汽東芝型超超臨界1000MW汽輪機(jī)低壓缸動(dòng)靜碰磨故障分析與對(duì)策
- 溫州市房屋租賃合同-通用版
- 第7講_校對(duì)符號(hào)使用
- 姬浩然書(shū)香家庭申請(qǐng)表(共2頁(yè))
- 高中學(xué)生遵紀(jì)守法主題班會(huì)PPT教學(xué)講座課件
- 醫(yī)源性冠狀動(dòng)脈夾層的識(shí)別與防治
- 普通話水平等級(jí)測(cè)試培訓(xùn)班課程安排表(80學(xué)時(shí))
- 半自動(dòng)鉆床說(shuō)明書(shū)-機(jī)械原理課程設(shè)計(jì)
- 部編版語(yǔ)文三年級(jí)上冊(cè)期末綜合能力測(cè)試卷(有答案)
- 空心薄壁墩翻模施工技術(shù)交底(修改)
- 光伏系統(tǒng)調(diào)試方案
評(píng)論
0/150
提交評(píng)論