您的位置:首页资讯编程开发 → bat创建快捷方式技巧

bat创建快捷方式技巧

时间:2011/9/29 10:30:50来源:飓风整理作者:lff我要评论(0)

  今天小编就来教大家bat创建快捷方式的方法,首选要告诉大家bat是无法自已创建lnk的快捷方式的,但是可以创建url快捷方式,下面一起来学习下bat创建快捷方式吧。

  一、 简洁的方法

  先通过Windows为相应的程序创建一个快捷方式,再将系统自动生成的快捷方式名修改一下,也就是把快捷方式名中的空格删除。然后可以建立一个批处理文件,使用move命令或copy命令即可完成。比如需要为C盘tv目录下的vnc.exe在桌面是创建快捷方式,可先通过Windows系统为该程序创建一个快捷方式vnc.lnk,然后建立个bat文件,在文件中编写如下命令:

  cd %userprofile%\桌面

  copy c:\tv\vnc.lnk

  或者输入以下命令:

  cd %userprofile%\桌面

  move c:\tv\vnc.lnk

  或者:

  copy QQ2010.lnk "%userprofile%\桌面\QQ2010.lnk"

  二、稍微复杂点的办法

  直接建立一个批处理文件,在其中输入以下命令(依然以“为C盘tv目录下的vnc.exe在桌面是创建快捷方式”为例):

  set path=c:\tv\vnc.exe

  set topath="%USERPROFILE%\桌面\VNC.url"

  echo [InternetShortcut] >> %topath%

  echo URL="%path%" >> %topath%

  echo IconIndex=0 >> %topath%

  echo IconFile=%path% >> %topath%

  通过BAT创建 VBS 和 vbs来创建快捷方式

  思路:

  思路:通过bat输出vbs代码,然后调用WScript.exe执行相关代码

  @echo

  set ShortcutTargetPath="%~dp0%..\External\DEVENV.bat"

  set ShortcutPath="C:\Documents and Settings\lanx\Desktop\TCT.lnk"

  set IconLocationPath="%VS80COMNTOOLS%..\IDE\devenv.exe,3"

  set HotKey="CTRL+SHIFT+T"

  echo Set WshShell=WScript.CreateObject("WScript.Shell") >>tmp.vbs

  echo Set Shortcut=WshShell.CreateShortCut(%ShortcutPath%) >>tmp.vbs

  echo Shortcut.Hotkey = %HotKey% >>tmp.vbs

  echo Shortcut.IconLocation=%IconLocationPath% >>tmp.vbs

  echo Shortcut.TargetPath=%ShortcutTargetPath% >>tmp.vbs

  echo Shortcut.Save >>tmp.vbs

  "%SystemRoot%\System32\WScript.exe" tmp.vbs

  @del /f /s /q tmp.vbs

  三、用API来创建

  编写一个程序,通过API函数为相应的程序创建快捷方式

  通过Shell编程达到目的,但是这种方法在XP中不太实用,因为不容易得到不同用户的桌面目录。下面是MFC代码:

  HRESULT CttDlg::CreateShortcut(LPCSTR pszPathObj, LPSTR pszParam, LPSTR pszPath, LPSTR pszPathLink,LPSTR pszDesc)

  {

  HRESULT hres ;

  IShellLink * psl ;

  IPersistFile* ppf ;

  WORD wsz[ 100] ;

  CoInitialize(NULL);

  hres = (HRESULT)CoCreateInstance( CLSID_ShellLink, NULL, CLSCTX_INPROC_SERVER, IID_IShellLink, (void **) &psl) ;

  if( FAILED( res))

  {

  CoUninitialize();

  return FALSE ;

  }

  // set the path to the shortcut target, and add the description

  psl -> SetPath(pszPathObj);

  psl -> SetArguments( pszParam) ;

  psl -> SetDescription(pszDesc);

  psl -> SetWorkingDirectory(pszPath);

  // query IShellLink for the IPersistFile interface for saving the shortcut in persistent storage

  hres = (HRESULT)(psl -> QueryInterface( IID_IPersistFile, (void **)&ppf)) ;

  if( FAILED( hres))

  {

  CoUninitialize();

  return FALSE ;

  }

  // ensure that that string is ANSI

  MultiByteToWideChar( CP_ACP, 0, pszPathLink, -1, (LPWSTR)wsz, 100);

  // save the link by calling IPersistFile::Save

  hres = ppf -> Save((LPCOLESTR)wsz, STGM_READWRITE) ;

  // release the IPersistFile interface

  ppf ->Release();

  // release the IShellLink interface

  psl ->Release();

  CoUninitialize();

  return hres ;

  }

  为了通知系统桌面发生变化,需要再定义如下函数:

  void CttDlg::NotifyShell(LONG wEventId, LPSTR szPath)

  {

  SHChangeNotify(wEventId,SHCNF_FLUSH | SHCNF_PATH,szPath,0);

  SHChangeNotify(SHCNE_UPDATEDIR | SHCNE_INTERRUPT,SHCNF_FLUSH | SHCNF_PATH,szPath,0);

  }

  然后就可以通过如下代码进行调用了:

  CreateShortcut("c:\\windows\\notepad.exe","c:\\config.sys","c:\\windows","C:\\Documents and Settings\\Xu YingMing\\桌面记事本.lnk","记事本");

  NotifyShell(SHCNE_MKDIR | SHCNE_INTERRUPT,"c:\\windows\\notepad.exe");

  方法四,winrar

  @echo off

  echo Path=%%SystemRoot%%\system32\>test.txt

  echo Silent=^2>>test.txt

  echo Overwrite=^1>>test.txt

  echo Shortcut=D, "mspaint.exe", "\", "创建和编辑图画,以及显示和编辑扫描获得的图片。", "图画">>test.txt

  start /wait winrar.exe a -r -ep1 -m1 -sfx -ztest.txt test.exe %SystemRoot%\system32\mspaint.exe

  start /wait test.exe

  del test.*

  热键和数值的对应关系

  833 - ctrl + shift + a

  834 - ctrl + shift + b

  835 - ctrl + shift + c

  836 - ctrl + shift + d

  837 - ctrl + shift + e

  838 - ctrl + shift + f

  1601 - ctrl + alt + a

  1602 - ctrl + alt + b

  1603 - ctrl + alt + c

  1604 - ctrl + alt + d

  1605 - ctrl + alt + e

  1606 - ctrl + alt + f

相关视频

    没有数据

相关阅读 NBA2K20配置要求高吗 NBA2K20配置要求推荐万智牌竞技场怎么操作 万智牌竞技场快捷键说明NBA2K20普通和豪华版区别 NBA2K20豪华版预购奖励介绍NBA2K20什么时候出 NBA2K20发售时间一览刀塔霸业怎么操作 刀塔霸业快捷操作说明macOS 10.15支持哪些设备升级 macOS Catalina可升级设备一览macOS 10.15有什么新功能 macOS Catalina新功能详细介绍Pathway怎么玩 Pathway新手技巧攻略

文章评论
发表评论

热门文章 没有查询到任何记录。

最新文章 编程语言排行榜2020年android studio怎么删 eclipse怎么设置编码格式 eclipse设置编码格andriod studio如何使用真机测试 andriod sandroid studio怎么生成apk android studioandroid studio如何导入jar包 android stud

人气排行 安卓模拟器BlueStacks安装使用教程编程语言排行榜2020年9月 TIOBE编程语言排行eclipse字体大小怎么设置 eclipse字体大小plsql developer怎么连接数据库 plsql deveTomcat9.0安装教程 Tomcat9.0环境变量配置方plsql developer怎么使用 plsql developerVisual Studio 2015环境搭建教程Eclipse优化设置教程 Eclipse优化设置技巧