創(chuàng)建和刪除快捷方式-- | 下一節(jié) | ||
OSfCreateShellGroup,OSfCreateShellLink,OSfRemoveShellLink三個(gè)API函數(shù)存在于VB的一個(gè)動(dòng)態(tài)連接庫(kù)Vb5stkit.dll中,使用它們可以方便的創(chuàng)建桌面上或是開始菜單中的快捷方式。 為了學(xué)習(xí)方便,提供的源碼已經(jīng)作了詳細(xì)的中文注釋,看看源碼框中的代碼: |
我們先來聲明以上幾個(gè)API函數(shù),如下所示:
Private Declare Function OSfCreateShellGroup Lib "Vb5stkit.dll" Alias "fCreateShellFolder" (ByVal lpstrDirName As String) As Long
Private Declare Function OSfCreateShellLink Lib "Vb5stkit.dll" Alias "fCreateShellLink" (ByVal lpstrFolderName As String, ByVal lpstrLinkName As String, ByVal lpstrLinkPath As String, ByVal lpstrLinkArguments As String) As Long
Private Declare Function OSfRemoveShellLink Lib "Vb5stkit.dll" Alias "fRemoveShellLink" (ByVal lpstrFolderName As String, ByVal lpstrLinkName As String) As Long
其中OSfCreateShellGroup函數(shù)的作用是在程序菜單中添加一個(gè)名為lpstrDirName的程序組,其參數(shù)的意義如下:
參數(shù): | 意義 |
lpstrDirName | String,lpstrDirName指定了要?jiǎng)?chuàng)建的程序組的名稱 |
返回值 | Long,非零表示成功,零表示失敗 |
其中OSfCreateShellLink函數(shù)的作用在指定的文件夾內(nèi)創(chuàng)建快捷方式,其參數(shù)的意義如下:
參數(shù): | 意義 |
lpstrfoldername | String,指定保存快捷方式的文件夾,默認(rèn)為"c:\Windows\startmenu\programs" |
lpstrlinkname | String,指定快捷方式的名稱 |
lpstrpathname | String,指定快捷方式所指向的應(yīng)用程序或文件 |
返回值 | Long,非零表示成功,零表示失敗 |
其中OSfRemoveShellLink函數(shù)的作用是刪除一個(gè)已經(jīng)建立的快捷方式,其參數(shù)的意義如下:
參數(shù): | 意義 |
lpstrFolderName | String,指定了要?jiǎng)h除的快捷方式所在的文件夾 |
lpstrLinkName | String,指定了要?jiǎng)h除的快捷方式的名稱 |
返回值 | Long,非零表示成功,零表示失敗 |
聲明完后就可以在程序中使用這幾個(gè)函數(shù)了,我們先來創(chuàng)建一個(gè)桌面上的快捷方式吧,只須一句代碼即可:
lresult = OSfCreateShellLink("..\..\desktop", "記事本", "c:\Windows\notepad.exe", "")
其中"..\..\desktop"是指桌面所在的目錄,"記事本"是快捷方式的名稱,而快捷方式所指向的目標(biāo)文件是"c:\windows\notepad.exe"。
下面看看怎么添加快捷方式到開始和程序菜單中:
1、添加快捷方式到開始菜單:
2、添加快捷方式到程序菜單(開始菜單中的“程序”子菜單)中
'在程序菜單中添加一個(gè)名為Test的程序組
lresult = OSfCreateShellGroup("Test")
'在程序菜單的Test程序組下創(chuàng)建記事本的快捷方式
lresult = OSfCreateShellLink("test", "記事本", "c:\Windows\notepad.exe", "")
現(xiàn)在運(yùn)行程序就能看到添加到各個(gè)位置的快捷方式了,刪除這些快捷方式的方法也很簡(jiǎn)單,比如我們要?jiǎng)h除剛才添加在桌面上的快捷方式,則可以用下面代碼來實(shí)現(xiàn)。
lresult = OSfRemoveShellLink("..\..\desktop", "記事本")
同樣的要?jiǎng)h除開始和程序菜單中的快捷方式,只須使用如下語(yǔ)句即可:
'刪除開始菜單上的快捷方式
lresult = OSfRemoveShellLink("..\..\start menu", "記事本")
'刪除Test程序組下的快捷方式
lresult = OSfRemoveShellLink("Test", "記事本")
聯(lián)系客服