SHELL語句用法心得 一. 調用系統“建立捷徑”嚮導 是否為VB不支援建立捷徑而於著急呢?雖然您可以調用vb5stkit.dll中的fCreateShellLink函數,
但它是為安裝程式設計的,捷徑的預設路徑總是從目前使用者的“/Start Menu/Programs”開始,也就是說,
如果您的Windows95裝在C盤上,您無法通過 fCreateShellLink 函數把捷徑建立到D盤上去。 現在,給大家介紹一種極為方便、巧妙的方法: 用Shell語句調用系統“建立捷徑”嚮導。 建立一個項目,在表單上放一個按鈕,雙擊此按鈕,加入以下代碼: 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後面跟著一個空格才是引號,否則將出錯。) 運行程式,按一下命令按鈕,怎麼樣?“建立捷徑”嚮導出現了,如果建立成功,捷徑將取
代臨時檔案temp.lnk的位置,如果選取消,temp.lnk 也會自動消失。當然,
您可以在硬碟的任意位置建立 temp.lnk。好,現在又可以為您的程式增添一項新功能了。Enjoy! 二. Rundll32.exe的用途 我們知道,用Shell語句只能調用可執行檔,即 exe、com、bat 和 pif 檔案,
有時我們想要調用其他一 些系統功能該怎麼辦呢?此時,Windows提供的 Rundll32.exe可大顯身手了。
下面我們來認識一下這些用法,也許會給您帶來一點驚喜。 1.要開啟設定系統時間的控制台檔案 (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鍵,右擊某一檔案,菜單中會出現 “開啟檔案”選項,這也許已不是什麼秘密。但現在,
用shell "rundll32.exe shell32.dll OpenAs_RunDLL X" 便能直接調用“開啟檔案”框。 6. 甚至能用這樣一句來列印檔案(包括HTML所 支援的所有文本與映像格式): Shell "rundll32.exe MSHTML.DLL,PrintHTML X”, 1 怎麼樣?是不是小有收穫呢?這下,您一定會對 Rundll32.exe這個平時不起眼的檔案另眼相待了,
它可是系統運行必不可少的組件呢!其實 Shell+Rundll32 還能調用其他許多系統功能,
比如關於NetMeeting和Telnet方面的。如果您有興趣,可以
到往冊表的“我的電腦/HKEY_CLASSES_ROOT/”或“我的電腦/HKEY_LOCAL_MACHINE/Software/CLASSES”下 去看看,
本文的內容大都是從那裡“抄”來的。只要有足夠的決心、信心、耐心,您一定能發現更多有價值的東西。Good luck!