TC官方合作论坛

 找回密码
 立即注册
查看: 3164|回复: 12

[问题] 怎么发送快捷方式到桌面?

[复制链接]
发表于 2015-5-20 11:08:33 | 显示全部楼层 |阅读模式

马上加入TC

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
将脚本自身EXE,发送一份快捷启动方式图标 到桌面呢?
回复

使用道具 举报

发表于 2015-5-20 14:15:38 | 显示全部楼层
  1. 功能 按钮0_点击()
  2.     桌面快捷方式("TC", "C:\\Program Files\\TC脚本开发工具\\TC.exe")
  3. 结束


  4. 功能 桌面快捷方式(名称, 指向)
  5.     变量 文件句柄 = 文件创建(系统获取系统路径(1) & 名称 & ".url","读写|共享读|共享写|总是创建")
  6.     如果(文件句柄 == 0)
  7.         返回 0
  8.     否则
  9.         文件写入一行字符(文件句柄, "[InternetShortcut]")
  10.         文件写入一行字符(文件句柄, "URL=" & 指向)
  11.         文件写入一行字符(文件句柄, "IconFile=" & 指向)
  12.         文件写入一行字符(文件句柄, "IconIndex=0")
  13.         文件关闭(文件句柄)
  14.         返回 1
  15.     结束
  16. 结束
复制代码
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2015-5-20 14:50:36 | 显示全部楼层

不行阿 ,发送的不是程序自身的快捷方式阿,变成一个不可执行的文件。
我之前用VBS发送的快捷方式 在5X代码不管用了
4X代码给你,你试试,要的就是这种效果 ,你帮我改改好不
  1. 功能 创建快捷方式(文件源路径="",快捷方式名="",快捷方式路径="")        
  2.        如果(文件源路径=="")
  3.           文件源路径=窗口.获取路径(窗口.自身句柄())
  4.        如果结束
  5.        选择(快捷方式名)
  6.            条件 "":
  7.            len1,返回值,返回值2
  8.            字符串.分割(文件源路径,"\",返回值)
  9.            数组空间.大小(返回值,len1)
  10.            字符串.分割(返回值[len1-1],".",返回值2)
  11.            快捷方式名=返回值2[0]
  12.            条件 "窗口标题":
  13.            快捷方式名=窗口.得到标题(窗口.自身句柄())
  14.            默认:
  15.            快捷方式名=字符串.替换(快捷方式名,".lnk","")
  16.        选择结束      
  17.        strProgram ="Sub Shortcut(filepath,lnkpath): On Error Resume Next:  set WshShell = CreateObject("WScript.Shell"): "
  18.        如果(快捷方式路径=="")
  19.                 //在桌面创建快捷方式
  20.                快捷方式名=快捷方式名&".lnk"
  21.                strProgram =strProgram &"strDesktop = WshShell.SpecialFolders("Desktop"): set oShellLink = WshShell.CreateShortcut(strDesktop &"\\"&lnkpath): "   
  22.        否则
  23.               //指定位置的快捷方式
  24.               快捷方式名=快捷方式路径&"\"&快捷方式名&".lnk"  
  25.               strProgram =strProgram &"set oShellLink = WshShell.CreateShortcut(lnkpath): "
  26.        如果结束   
  27.        strProgram =strProgram &"oShellLink.TargetPath = filepath: oShellLink.Save: Set oShellLink = Nothing: Set WshShell = Nothing: End Sub"
  28.        sc = com("ScriptControl")
  29.        sc.language = "VBScript"
  30.        sc.addcode(strProgram)
  31.        sc.run("Shortcut",文件源路径,快捷方式名)   
  32. 功能结束
复制代码

回复 支持 反对

使用道具 举报

发表于 2015-5-20 14:55:16 | 显示全部楼层
代码你测试了么?参数你自己改就行了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-5-20 15:02:51 | 显示全部楼层
忆辰辅助 发表于 2015-5-20 14:55
代码你测试了么?参数你自己改就行了

你的代码测试过了,发送的不是程序自身的快捷方式。
我就是想 让 脚本 可以发送自己的快捷方式 到桌面,这样我就把脚本放到硬盘里,每次从桌面开启就行了。

我给你的4X代码,在4X完美测试。 在5X不行。修改成5X代码后,没有反映
回复 支持 反对

使用道具 举报

发表于 2015-5-20 15:04:49 | 显示全部楼层
  1.     变量 指向 = 窗口获取路径(窗口获取自我句柄())
复制代码


自己改改不就得了么,这样就是指向自身了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-5-20 15:09:47 | 显示全部楼层
忆辰辅助 发表于 2015-5-20 15:04
自己改改不就得了么,这样就是指向自身了

变成这样了
QQ截图20150520150904.png
  1. 功能 按钮0_点击()
  2.     变量 名称="测试"
  3.     变量 文件句柄 = 文件创建(系统获取系统路径(1) & 名称 & ".url","读写|共享读|共享写|总是创建")
  4.     如果(文件句柄 == 0)
  5.         返回 0
  6.     否则
  7.         文件写入一行字符(文件句柄, "[InternetShortcut]")
  8.         文件写入一行字符(文件句柄, "URL=" & 系统获取工作路径())
  9.         文件写入一行字符(文件句柄, "IconFile=" & 系统获取工作路径())
  10.         文件写入一行字符(文件句柄, "IconIndex=0")
  11.         文件关闭(文件句柄)
  12.         返回 1
  13.     结束
  14. 结束
复制代码
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-5-20 15:18:54 | 显示全部楼层
忆辰辅助 发表于 2015-5-20 15:04
自己改改不就得了么,这样就是指向自身了

= = 而且程序图标 获取不到, 这个发送的是IE快捷方式= =
回复 支持 反对

使用道具 举报

发表于 2015-5-20 15:54:26 | 显示全部楼层

是你自己路径写的不对好不好
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-5-20 16:02:02 | 显示全部楼层
忆辰辅助 发表于 2015-5-20 15:54
是你自己路径写的不对好不好

所以能纠正一下吗 我不会写喔,唉
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条

关闭

小黑屋|TC官方合作论坛 (苏ICP备18045623号)

GMT+8, 2024-9-29 06:47 , Processed in 0.046224 second(s), 27 queries .

Powered by 海安简单软件服务部

© 2008-2019 版权所有 保留所有权利

快速回复 返回顶部 返回列表