如果我想将"C:\Program Files\360\360safe\360Safe.exe"中的360.exe的快捷方式创建到E:\新建文件夹文件夹下程序该怎么写?Private Declare Function fCreateShellLink Lib "vb6stkit.dll" (ByVal lpstrFolderName As String, ByVal lpstrLinkName As String, ByVal lpstrLinkPath As String, ByVal lpstrLinkArgs As String, ByVal fPrivate As Long, ByVal sParent As String) As Long
Private Sub Command1_Click()
Dim lReturn As Long lReturn=fCreateShellLink("E:\新建文件夹","360","C:\Program Files\360\360safe\360Safe.exe","")End Sub
这程序哪错了为什么创建不成功?

解决方案 »

  1.   

    用createobject(wscript.shell)创建快捷方式很方便,类似这样:
    dim iw as object
    set iw=createobject(wscript.shell)
    with iw.createshortcut(E:\新建文件夹文件夹\360Safe.lnk)
    .targetpath="C:\Program   Files\360\360safe\360Safe.exe"
    .iconlocation="C:\Program   Files\360\360safe\360Safe.exe"
    .save
    end with
      

  2.   

    wscript.shell和各个路径都要加双引号打漏了
      

  3.   


    'Example Name:CreateShellLink
    Private Declare Function fCreateShellLink Lib "VB5STKIT.DLL" (ByVal lpstrFolderName As String, ByVal lpstrLinkName As String, ByVal lpstrLinkPath As String, ByVal lpstrLinkArgs As String) As Long
    Private Sub Form_Load()
        'KPD-Team 1999
        'URL: http://www.allapi.net/
        'E-Mail: [email protected]
        ' -> code by Raist Lin
        'Create a shell link on your desktop
        lngresult = fCreateShellLink("..\..\Desktop", "LINK", "C:\myfile.exe", "")
    End Sub
      

  4.   


    '事先在工程菜单中引用c:\windows\system32\WSHom.Ocx'读取快捷方式属性
    Private Sub Command1_Click()
        Dim WSH As WshShell
        Dim Urllink As WshShortcut
        Dim DeskPath As String
        Dim lnkName As String
          Set WSH = New WshShell
        DeskPath = WSH.SpecialFolders("Desktop")  '获得桌面路径
    '    Debug.Print WSH.SpecialFolders("MyDocuments")
    '    Debug.Print WSH.SpecialFolders("Favorites")
        lnkName = Dir(DeskPath & "\AA.lnk")
        Set Urllink = WSH.CreateShortcut(DeskPath & "\" & lnkName)
        With Urllink
            Print .TargetPath          '目标
            Print .Hotkey              '热键
            Print .WorkingDirectory    '工作目录
            Print .WindowStyle         '运行方式
            Print .Description         '备注
      End With
      Set Urllink = Nothing
      Set WSH = Nothing
      
    End SubPrivate Sub Command2_Click()
    '引用windows scripting host object model   Dim WSH As WshShell
        Dim Urllink As WshShortcut
        Dim DeskPath As String
        Dim lnkName As String
      
        Set WSH = New WshShell
        DeskPath = WSH.SpecialFolders("Desktop")  '获得桌面路径
        
        '得到快捷方式
        lnkName = Dir(DeskPath & "\*.lnk")
        Debug.Print lnkName
        While Len(lnkName)
            Debug.Print lnkName
            lnkName = Dir
        Wend
        
        '可以用wsh_shell.expandenvironmentstrings("%windir%")获得windows路径
        Set Urllink = WSH.CreateShortcut(DeskPath & "\Test.lnk")
        With Urllink
            .TargetPath = "d:\test.txt"         '目标
            .IconLocation = WSH.ExpandEnvironmentStrings _
                ("%SystemRoot%\system32\SHELL32.dll,70")     '图标,可以是自己的ico
            .Hotkey = "ctrl+shift+F"            '快捷键
            .WorkingDirectory = "d:\"           '起始位置
            .WindowStyle = 1                    '运行方式
            .Description = "新疆鼎立科技"       '备注
            .Arguments = StrArg                 '参数
      End With
      Urllink.Save '保存快捷方式
      
    '  '添加到桌面
    'lReturn = fCreateShellLink("..\..\Desktop", "Shortcut to Calculator", "c:\windows\calc.exe", "")
    ''添加到程序组
    'lReturn = fCreateShellLink("", "Shortcut to Calculator", "c:\windows\calc.exe", "")
    ''添加到启动组
    'lReturn = fCreateShellLink("\Startup", "Shortcut to Calculator", "c:\windows\calc.exe", "")
      
    End Sub
      

  5.   

    LZ 试试
    callf CreateShellLink( "E:\新建文件夹 ", "360 ", "C:\Program   Files\360\360safe\360Safe.exe ", " ",True, "$(Programs)") 我感觉lz,那个是得到一个值,应该不是一个动作。本人新手菜鸟一个,有说的不对的地方,请不要嘲笑谩骂本人。谢谢^_^