程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> Visual Basic語言 >> VB綜合教程 >> Shell語句用法心得

Shell語句用法心得

編輯:VB綜合教程
一.調用系統“創建快捷方式”向導
  是否為VB不支持創建快捷方式而於著急呢?雖然您可以調用vb5stkit.Dll中的fCreateShellLink函數,但它是為安裝程序設計的,快捷方式的默認路徑總是從當前用戶的“\StartMenu\Programs”開始,也就是說,如果您的Windows95裝在C盤上,您無法通過fCreateShellLink函數把快捷方式創建到D盤上去。
  現在,給大家介紹一種極為方便、巧妙的方法:用Shell語句調用系統“創建快捷方式”向導。
  新建一個項目,在窗體上放一個按鈕,雙擊此按鈕,加入以下代碼:
  PrivateSubCommand1_Click()
  OpenApp.Path&" emp.lnk"ForOutputAs#1
  Close#1'以上兩句在程序所在目錄建立一個臨時文件
  Shell"Rundll32.exeAppWiz.Cpl,NewLinkHere
  "&App.Path&" emp.lnk"
  EndSub
  (注意: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_RunDLLTimedate.cpl"
  至於打開其他控制面板文件,相信您一定能夠舉一反三,嘗試一下,換個文件名就成了。
  2.要運行某一快捷方式(*.lnk)則可以用以下代碼:
  She11"Rundll32.exeurl.dll,FileProtocolHandlerX"(X代表要運行的文件,包括路徑,下同。
  3.也可以這樣寫來打開ActiveMovie控制:
  Shell"RUNDLL32.EXEamovie.ocx,Rundll",1
  而用Shell"RUNDLL32.EXEamovie.ocx,Rundll/playX",1將直接播放媒體文件。
  4.Shell"rundll32.exedesk.cpl,InstallScreenSaverX”當然是安裝屏幕保護啦,如果你寫了一個屏幕保護程序,那麼可以在安裝程序中寫上它,而不一定要裝到system目錄下。順便提一下,VB不是自撈一個“ApplicationSetupWizard”麼?它的VB源代碼都在安裝目錄下的“setupkitsetup1”中放著呢,好好把它研究一下。你完全能做出富有個性的安裝程序來。
  5.按住shift鍵,右擊某一文件,菜單中會出現“打開方式”選項,這也許已不是什麼秘密。但現在,用shell"rundll32.exeshell32.dllOpenAs_RunDLLX"便能直接調用“打開方式”框。
  6.甚至能用這樣一句來打印文件(包括HTML所支持的所有文本與圖像格式):
  Shell"rundll32.exeMSHTML.DLL,PrintHTMLX”,1
  怎麼樣?是不是小有收獲呢?這下,您一定會對Rundll32.exe這個平時不起眼的文件另眼相待了,它可是系統運行必不可少的部件呢!其實Shell+Rundll32還能調用其他許多系統功能,比如關於NetMeeting和Telnet方面的。如果您有興趣,可以到往冊表的“我的電腦\HKEY_CLASSES_ROOT\”或“我的電腦HKEY_LOCAL_MACHINESoftwareCLASSES”下去看看,本文的內容大都是從那裡“抄”來的。只要有足夠的決心、信心、耐心,您一定能發現更多有價值的東西。Goodluck!->

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved