---- 要在VB中创建Windows的快捷方式,需要用到VB的一个动态链接库Vb5stkit.dll。在该动态链接库中提供了三个函数OSfCreateShellGroup、OSfCreateShellLink、OSfRemoveShellLink,分别用于创建快捷方式程序组、快捷方式、删除快捷方式。这三个函数的声明形式分别如下:
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
---- 其中lpstrDirName指定了程序组的名称;lpstrfoldername指定保存快捷方式的文件夹,默认为“c:\Windows\start menu\programs”,lpstrlinkname指定快捷方式的文件名,lpstrpathname指定快捷方式所指向的应用程序或文件。
---- 下面的代码具体演示了以上三个函数的用法:
---- 首先在VB下新建“工程”,然后在Form1的“通用”,“声明”部分输入上面列出的函数声明,然后在Form1上添加三个命令按钮,在其Click事件中分别输入:
Private Sub Command1_Click()
Dim lresult As Long
'在桌面创建记事本的快捷方式
lresult = OSfCreateShellLink("..\..\desktop",
"记事本", "c:\Windows\notepad.exe", "")
'在开始菜单创建记事本的快捷方式
lresult = OSfCreateShellLink("..\..\start menu",
"记事本", "c:\Windows\notepad.exe", "")
'在程序菜单的Test程序组下创建记事本的快捷方式
lresult = OSfCreateShellLink("test", "记事本",
"c:\Windows\notepad.exe", "")
End Sub
Private Sub Command2_Click()
Dim lresult As Long
'在程序菜单中添加一个名为Test的程序组
lresult = OSfCreateShellGroup("Test")
End Sub
Private Sub Command3_Click()
Dim lresult As Long
'删除开始菜单上的快捷方式
lresult = OsfRemoveShellLink
("..\..\start menu", "记事本")
'删除桌面上的快捷方式
lresult = OsfRemoveShellLink
("..\..\desktop", "记事本")
'删除Test程序组下的快捷方式
lresult = OSfRemoveShellLink("Test", "记事本")
End Sub
---- 按F5运行工程1,单击命令按钮就可以看到实际的效果了。
---- 最后还要说明一点,虽然上述代码是在VB5.0下调试的,但同样适用于VB4.0,只是需要将上述声明中的Vb5stkit.dll替换为stkit432.dll。上述代码在Windows98,vb5.0 SP3下通过。
上一篇: VB5.0中实现字体闪烁效果
下一篇: VB5.0应用程序的启动与退出设计
文章整理:西部数码--专业提供域名注册、虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!




