一. 調(diào)用系統(tǒng)“創(chuàng)建快捷方式”向?qū)?
是否為VB不支持創(chuàng)建快捷方式而于著急呢?雖然 您可以調(diào)用vb5stkit.Dll中的fCreateShellLink函 數(shù),但它是為安裝程序設計的,快捷方式的默認路徑 總是從當前用戶的“\Start Menu\Programs”開始,也 就是說,如果您的Windows95裝在C盤上,您無法通過 fCreateShellLink函數(shù)把快捷方式創(chuàng)建到D盤上去。
現(xiàn)在,給大家介紹一種極為方便、巧妙的方法: 用Shell語句調(diào)用系統(tǒng)“創(chuàng)建快捷方式”向?qū)А?
新建一個項目,在窗體上放一個按鈕,雙擊此按 鈕,加入以下代碼:
Private Sub Command1_Click()
Open App.Path & "/temp.lnk" For Output As #1
Close #1 '以上兩句在程序所在目錄建立一 個臨時文件
Shell "Rundll32.exe AppWiz.Cpl,NewLinkHere
"& App.Path & "/temp.lnk"
End Sub
(注意:Shell語句中NewLinkHere后面跟著一個 空格才是引號,否則將出錯。)
運行程序,按一下命令按鈕,怎么樣?“創(chuàng)建快 捷方式”向?qū)С霈F(xiàn)了,如果創(chuàng)建成功,快捷方式將取 代臨時文件temp.lnk的位置,如果選取消,temp.lnk 也會自動消失。當然,您可以在硬盤的任意位置建立 temp.lnk。好,現(xiàn)在又可以為您的程序增添一項新功 能了。Enjoy!
二. Rundll32.exe的用途
我們知道,用Shell語句只能調(diào)用可執(zhí)行文件,即 exe、com、bat和pif文件,有時我們想要調(diào)用其他一 些系統(tǒng)功能該怎么辦呢?此時,Windows提供的 Rundll32.exe可大顯身手了。下面我們來認識一下這 些用法,也許會給您帶來一點驚喜。
1.要打開設置系統(tǒng)時間的控制面板文件 (Timedate.cpl),只需運行如下代碼:
Shell "Rundll32.exe
Shell32.dll,Control_RunDLL Timedate.cpl"
至于打開其他控制面板文件,相信您一定能夠舉 一反三,嘗試一下,換個文件名就成了。
2.要運行某一快捷方式(*.lnk)則可以用以下 代碼:
She11 "Rundll32.exe url.dll, FileProtocolHandler X" (X代表要運行的文件,包括 路徑,下同。
3. 也可以這樣寫來打開ActiveMovie控制:
Shell "RUNDLL32.EXE amovie.ocx,Rundll",1
而用Shell "RUNDLL32.EXE amovie.ocx,Rundll /play X",1 將直接播放媒體文件。
4. Shell "rundll32.exe desk.cpl,InstallScreenSaver X”當然是安裝屏幕保 護啦,如果你寫了一個屏幕保護程序,那么可以在安 裝程序中寫上它,而不一定要裝到system目錄下。順 便提一下,VB不是自撈一個“Application Setup Wizard”么?它的VB源代碼都在安裝目錄下的 “/setupkit/setup1”中放著呢,好好把它研究一下。 你完全能做出富有個性的安裝程序來。
5.按住shift鍵,右擊某一文件,菜單中會出現(xiàn) “打開方式”選項,這也許已不是什么秘密。但現(xiàn)在, 用shell "rundll32.exe shell32.dll OpenAs_RunDLL X" 便能直接調(diào)用“打開方式”框。
6. 甚至能用這樣一句來打印文件(包括HTML所 支持的所有文本與圖像格式):
Shell "rundll32.exe MSHTML.DLL,PrintHTML X”, 1
怎么樣?是不是小有收獲呢?這下,您一定會對 Rundll32.exe這個平時不起眼的文件另眼相待了,它 可是系統(tǒng)運行必不可少的部件呢!其實 Shell+Rundll32還能調(diào)用其他許多系統(tǒng)功能,比如關 于NetMeeting和Telnet方面的。如果您有興趣,可以 到往冊表的“我的電腦\HKEY_CLASSES_ROOT\”或“我 的電腦/HKEY_LOCAL_MACHINE/Software/CLASSES”下 去看看,本文的內(nèi)容大都是從那里“抄”來的。只要 有足夠的決心、信心、耐心,您一定能發(fā)現(xiàn)更多有價 值的東西。Good luck!中國教程在線,http://www.5istudy.cn