关于建立快捷方式的老问题!急!急!!解决问题给25分!!我就这么多了!!!
一笑e而过 2001-12-19 05:16:37 看了很多介绍在桌面和程序组中建立快捷方式的代码,其中一个如下,在执行时,在创建程序组时会出现“找不到入口”的错误,而创建程序快捷方式时又会出现“非法操作”的提示。请问谁能帮我解决这个问题,我以分相谢!!!!
代码如下:
Private Declare Function OSfCreateShellGroup Lib "Vb6stkit.dll" _
Alias "fCreateShellFolder" (ByVal lpstrDirName As String) As Long
Private Declare Function OSfCreateShellLink Lib "Vb6stkit.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 "Vb6stkit.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