登录社区:用户名: 密码: 忘记密码 网页功能:加入收藏 设为首页 网站搜索  

文档

下载

图书

论坛

安全

源码

硬件

游戏
首页 | 信息 | 空间 | VB | VC | Delphi | Java | Flash | 补丁 | 控件 | 安全 | 黑客 | 电子书 | 笔记本 | 手机 | MP3 | 杀毒 | QQ群 | 产品库 | 分类信息 | 编程网站
  立华软件园 - Visual Basic 专区 - 技术文档 - 系统控制 技术文章 | VB源代码 | 电子图书 | VB网站 | 相关下载 | 在线论坛 | QQ群组 | 搜索   
 VB技术文档
  · 窗体界面
  · 系统控制
  · VB.Net
  · 多媒体
  · 网络编程
  · API函数
  · 游戏编程
  · 数据报表
  · 其他文档
 VB源代码
  · 窗体界面
  · 文件目录
  · 多媒体
  · 网络编程
  · 系统API
  · 数据报表
  · 游戏编程
  · VBA办公
  · 其他代码
 VB论坛
  · Visual Basic 讨论区
  · VB.Net 讨论区
  · VB数据库开发讨论区
  · VB系统API讨论区
 其他VB资源
  · VB下载资源
  · VB电子图书
  · VB QQ群组讨论区
  · VB 其他网站资源




用VB创建Windows快捷方式(无需DLL)
发表日期:2005-09-01作者:pkmaster&szyicol[转贴] 出处:VB论坛  

 创建开始菜单快捷方式




Option Explicit

Private Sub Command1_Click()

    CreateProgManGroup Me, "测试", "test.grp"
    CreateProgManItem Me, "d:\ghost.exe", "Ghost"
    CreateProgManItem Me, "d:\setupQQ.exe", "QQ"

End Sub

Sub CreateProgManGroup(X As Form, GroupName$, GroupPath$)
    Dim i As Integer
    X.Label1.LinkTopic = "ProgMan|Progman"
    X.Label1.LinkMode = 2
    Rem 空循环使DDE有时间执行
    For i = 1 To 10
        DoEvents
    Next
    X.Label1.LinkTimeout = 100
    Rem LinkExecute 是在DDE通道中传送这样的命令
    '──建立一个名为GroupName $的程序组。

    X.Label1.LinkExecute "[ CreateGroup (" + GroupName$ + Chr$(44) + GroupPath$ + ") ]"
    X.Label1.LinkTimeout = 50 '恢复Label1 的属性值
    X.Label1.LinkMode = 0
End Sub


Sub CreateProgManItem(X As Form, CmdLine$, IconTitle$)
    Dim i As Integer
    X.Label1.LinkTopic = "ProgMan|Progman"
    X.Label1.LinkMode = 2
    For i = 1 To 10
        DoEvents
    Next
    X.Label1.LinkTimeout = 100
    X.Label1.LinkExecute "[AddItem(" + CmdLine$ + Chr$(44) + IconTitle$ + Chr$(44) + ", ,) ]"
    X.Label1.LinkTimeout = 50 '恢复Label1 的属性值
    X.Label1.LinkMode = 0
    Screen.MousePointer = 0
End Sub


  '将程序建立成“启动”文件夹的捷径
Text1.LinkTopic = "Progman|Progman"
Text1.LinkMode = 2 '手动
Text1.LinkExecute "[ShowGroup(启动, 4)]"
Text1.LinkExecute "[AddItem(可执行文件完整路径, 捷径名称)]"

  假设我们想把“c:\vb5db\myprog.exe”建立成“启动”资料夹名称为“我的程序”的捷径,则最后一行的 LinkExecute 应该如下:

Text1.LinkExecute "[AddItem(c:\vb5db\myprog.exe, 我的程序)]"


  在桌面上添加程序的快捷方式
  假如程序为C:\Program Files\MyProg\Prog.exe,需加参数/Para
  新键一个项目,添加命令按钮和标签各一个,把下面的代码加上去,一运行,你将如愿以偿!
Option Explicit
Private Sub Command1_Click()
  CreateGroup "MyProg", "", "", 2, True
  CreateGroup "MyProg", "C:\ProgramFiles\MyProg\Prog.exe/Para", _
  "Para", 3, True
End Sub
Sub CreateGroup(ByVal strGroup As String, ByVal strCmd As String, ByVal _
strTitle As String, ByVal intDDE As Integer, ByVal fLog As Boolean)
  Const strCOMMA$ = ","
  Const strRESTORE$ = ", 1)]"
  Const strACTIVATE$ = ", 5)]"
  Const strENDCMD$ = ")]"
  Const strSHOWGRP$ = "[ShowGroup("
  Const strADDGRP$ = "[CreateGroup("
  Const strREPLITEM$ = "[ReplaceItem("
  Const strADDITEM$ = "[AddItem("

  Dim i As Integer
  Dim Sourcefile As String, Destinationfile As String

  Form1.Label1.LinkMode = 0
  For i% = 1 To 20
   On Error Resume Next
   Form1.Label1.LinkTopic = "PROGMAN|PROGMAN" '设置发送端应用程序和主题
   If Err = 0 Then Exit For
   DoEvents
  Next
  Form1.Label1.LinkMode = 2 '采用手动方式建立连接
  For i% = 1 To 10
   DoEvents
  Next
  Form1.Label1.LinkTimeout = 100 '设置等待 DDE 响应消息的时间。

  If Err = 0 Then
   Select Case intDDE
     Case 1 '建立程序项
      Form1.Label1.LinkExecute strADDGRP & strGroup & strENDCMD
      Form1.Label1.LinkExecute strADDITEM & strCmd & strCOMMA & _
        strTitle & String$(3, strCOMMA) & strENDCMD
     Case 2 '建立程序组
      Form1.Label1.LinkExecute strADDGRP & strGroup & strENDCMD
      Form1.Label1.LinkExecute strSHOWGRP & strGroup & strRESTORE
     Case 3 '建立程序项,并复制一份添加到桌面
      Form1.Label1.LinkExecute strADDGRP & strGroup & strENDCMD
      Form1.Label1.LinkExecute strADDITEM & strCmd & strCOMMA & _
        strTitle & String$(3, strCOMMA) & strENDCMD
      Sourcefile = "C:\WINDOWS\Start Menu\Programs\" & strGroup & _
        "\" & strTitle & ".lnk" ' 指定源文件名
      Destinationfile = "C:\WINDOWS\DESKTOP\" & strTitle & ".lnk"
                 '指定目的文件名。
      FileCopy Sourcefile, Destinationfile
   End Select
  End If

  '断开DDE联接
  Form1.Label1.LinkMode = 0
  Form1.Label1.LinkTopic = ""
End Sub
 

我来说两句】 【发送给朋友】 【加入收藏】 【返加顶部】 【打印本页】 【关闭窗口
中搜索 用VB创建Windows快捷方式(无需DLL)

 ■ [欢迎对本文发表评论]
用  户:  匿名发出:
您要为您所发的言论的后果负责,故请各位遵纪守法并注意语言文明。

关于我们 / 合作推广 / 给我留言 / 版权举报 / 意见建议 / 广告投放 / 友情链接  
Copyright ©2001-2006 Lihuasoft.net webmaster(at)lihuasoft.net
网站编程QQ群   京ICP备05001064号 页面生成时间:0.00257