|
148373805
新手上路

积分 4
发帖 1
注册 2007-7-13
状态 离线
|
『楼 主』:
[求教]如何用批处理实现发送一个文件的快捷方式至桌面
如题
|
|
2007-7-13 23:28 |
|
|
bjsh
银牌会员
    
积分 2000
发帖 621
注册 2007-1-1
状态 离线
|
|
2007-7-14 00:29 |
|
|
heicai
中级用户
  
积分 385
发帖 156
注册 2007-1-19
状态 离线
|
『第
3 楼』:
批处理配合用Shortcut这个外置小工具就可以 SHORTCUT.EXE -f -t %systemroot%\system32\notepad.exe -n "%USERPROFILE%\桌面"\记事本 -d "%USERPROFILE%"
|
|
2007-7-14 18:01 |
|
|
yywd
中级用户
  
积分 358
发帖 130
注册 2005-11-12
状态 离线
|
『第
4 楼』:
用vbs,可发送一个文件的快捷方式至任何位置
|
|
2007-7-14 19:31 |
|
|
sonicandy
中级用户
  
积分 273
发帖 91
注册 2007-5-7
状态 离线
|
『第
5 楼』:
给你个例子
Option Explicit
'''''''''''''''''''''''''''''''''''''''''''''''''''''''
' AddDir2SendTo v1.0
' 脚本功能: 为任意目录在SendTo中创建快捷方式
' 安装方法: 直接双击文件,本脚本会自动安装
' 使用方法: 安装后会在右键的发送到菜单中出现
' "自定义目录"和"添加目录"选项,在文件夹上点右键
' 选择"添加目录"将快捷方式添加到自定义目录中,
' 以后任何文件都可以发送到这个目录了,很方便吧:)
' 作者: sonic_andy
' 修改日期: 2006.10.28
Dim objShell,objFSO,objFile,objDir,objShellLink,strTargetDir
'创建wscript的shell和FileSystemObject对象
Set objShell = CreateObject("Wscript.Shell")
Set objFSO = CreateObject("Scripting.FileSystemObject")
'定义快捷方式创建的目标文件夹
strTargetDir = objShell.SpecialFolders("SendTo") & "自定义目录"
'若参数为空,则安装脚本到系统
If Wscript.Arguments.count=0 Then setup
'参数是否符合标准
If Not objFSO.FolderExists(Wscript.Arguments(0)) Then
MsgBox("指定的对象必须是目录!")
Wscript.quit
End If
'将参数作为目录名创建文件对象
Set objDir = objFSO.GetFolder(Wscript.Arguments(0))
'调用过程添加快捷方式
addLink strTargetDir & "" & objDir.Name & ".lnk",objDir.Path,objDir.Name,""
MsgBox("目录[" & objDir.Name & "]的快捷方式创建成功!")
Wscript.quit
'''''''''''''''''''''''''''''''''''''''''''''''''''''''
' 过程:安装脚本
Sub setup ( )
Set objFile = objFSO.GetFile(Wscript.ScriptFullName)
'将脚本文件的快捷方式创建到sendto目录下
addLink objShell.SpecialFolders("SendTo") & "添加目录.lnk",objFile.Path,"添加目录",objFile.ParentFolder
'在sendto目录中建立'自定义目录'文件夹
If Not objFSO.FolderExists(strTargetDir) Then
objFSO.CreateFolder(strTargetDir)
End If
MsgBox "安装成功!"
Wscript.quit
End Sub
'''''''''''''''''''''''''''''''''''''''''''''''''''''''
' 过程:添加快捷方式
Sub addLink (strLinkfile, strTargetpath, strDescription, strWorkdir)
'创建一个指定路径(包含文件名)的快捷方式
Set objShellLink = objShell.CreateShortcut(strLinkfile)
'设置目标路径
objShellLink.TargetPath = strTargetpath
'设置快捷方式描述
objShellLink.Description = strDescription
'设置工作目录
objShellLink.WorkingDirectory = strWorkdir
'保存快捷方式
objShellLink.Save
End Sub
|
|
2007-7-14 22:21 |
|
|
netwinxp
高级用户
   
积分 741
发帖 366
注册 2007-7-25
状态 离线
|
『第
6 楼』:
由于.LNK不是文本文件,不那么直观,我们可以借用.URL来实现快捷方式。
下面我们以记事本为例:
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:: 下面是.URL的格式
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:: [InternetShortcut]
:: URL="%SystemRoot%\System32\notepad.exe"
:: WorkingDirectory="%UserProfile%\桌面"
:: IconFile="%SystemRoot%\System32\notepad.exe"
:: IconIndex=0 0是管道符要用^转义
:: HotKey=1601(Ctrl+Alt+A)
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
SET link="%UserProfile%\桌面\记事本编辑器.url"
ECHO [InternetShortcut]>%link%
ECHO URL="%SystemRoot%\System32\notepad.exe">>%link%
ECHO WorkingDirectory="%UserProfile%\桌面">>%link%
ECHO IconFile="%SystemRoot%\System32\notepad.exe">>%link%
ECHO IconIndex=^0>>%link%
ECHO HotKey=1601>>%link%
BTW格式自由明了:D
开始菜单:%UserProfile%\「开始」菜单\程序
快速栏:%AppData%\Microsoft\Internet Explorer\Quick Launch
英文版系统的桌面:%UserProfile%\Desktop
英文版系统的开始菜单:%UserProfile%\StartMenu
[ Last edited by netwinxp on 2007-7-26 at 02:03 PM ]
|
|
2007-7-26 13:43 |
|