ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

批处理创建快捷方式

2019-07-25 23:02:24  阅读:165  来源: 互联网

标签:解压 文件 exe 批处理 创建 文件夹 快捷方式


批处理中,创建文件的快捷方式,比较方便的是调用vbs脚本。结合 for 命令,可以批量创建多个文件的快捷方式。利用Winrar软件的功能,能比较方便的制作自解压安装软件。

批处理文件的文件编码为ANSI,或GB2312。否则中文会乱码。

单个文件创建快捷方式

假如用MyChrome将Chrome 75绿色便携化到D:\programfiles\Chrome75文件夹,可执行的文件是MyChrome.exe。下面创建MyChrome.exe的快捷方式,并将其发送到桌面,同时在程序组中创建“谷歌浏览器”,其中包括MyChrome.exe快捷方式。

@echo off

::如无:快捷文件以.lnk或.url结尾
setlocal EnableDelayedExpansion

cd Chrome75
set WrkDir=%~dp0

set "LinkName=谷歌浏览器.lnk"
set filname=mychrome.exe
set ThePath=%~dp0%mychrome.exe
mshta VBScript:Execute("Set Shell=CreateObject(""WScript.Shell""):Set Link=Shell.CreateShortcut(""!LinkName!""):Link.TargetPath=""!ThePath!"":Link.WorkingDirectory=""!WrkDir!"":Link.Save:close"^)

if exist "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\谷歌浏览器" (
  del /Q "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\谷歌浏览器"
) else (
  mkdir "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\谷歌浏览器"
)

copy /y 谷歌浏览器.lnk "%USERPROFILE%\Desktop\" >nul 2>nul
move /y *.lnk "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\谷歌浏览器\" >nul 2>nul

因为要在后面的自解压文件用,将该批处理命名保存为“Chrome自解压安装.bat”,放置于MyChome.exe所在的目录。点击运行就能达到设计的要求。

批处理中,直接在当前目录创建MyChrome.exe的快捷方式“谷歌浏览器.lnk”。接下来创建开始菜单的程序组。将快捷方式复制到桌面,再将快捷方式移动到程序组的文件夹中。

也可以直接在桌面创建快捷方式,然后复制快捷方式到程序组的文件中。

setlocal EnableDelayedExpansion必须有,否则会提示“快捷方式文件以.lnk或.url结尾”的错误提示。

简单的方式

如果只是要桌面创建MyChrome.exe的快捷方式,最简单方式如下(注意不需要setlocal EnableDelayedExpansion):

@echo off

mshta VBScript:Execute("Set a=CreateObject(""WScript.Shell""):Set b=a.CreateShortcut(a.SpecialFolders(""Desktop"") & ""\谷歌浏览器.lnk""):b.TargetPath=""%~dp0MyChrome.exe"":b.WorkingDirectory=""%~dp0"":b.Save:close")

多个文件批量创建快捷方式

假设,要创建"英雄无敌魔力觉醒"中的部分文件的快捷方式。要求:

  • 桌面是主程序h3era HD.exe的快捷方式
  • 程序组"魔力觉醒"中包含如下文件的快捷方式:
    • h3era HD.exe
    • h3era_34M HD.exe
    • h3era_43M HD.exe
    • Tools\Mod Manager\mmanager.exe
    • Tools\ERM&ERA帮助宝典v2.0 (测试).chm
    • HD3_Launcher.exe

魔力觉醒的文件夹为D:\ProgramFiles\gs\Hero3_The_Magic_Awakens\,也就是h3era HD.exe(或h3era.exe/Heroes3.exe)所在的文件夹。

下面的批处理或txt文件都保存在魔力觉醒文件夹中。

MagAwaken.txt

先建立一个txt文件"MagAwaken.txt",内容如下:

魔力觉醒:h3era HD.exe
魔力觉醒34M:h3era_34M HD.exe
魔力觉醒43M:h3era_43M HD.exe
MOD管理器:Tools\Mod Manager\mmanager.exe
ERM&ERA帮助宝典v2:Tools\ERM&ERA帮助宝典v2.0 (测试).chm
高清补丁:HD3_Launcher.exe

批处理MagAwaken.bat

批处理文件MagAwaken.bat,内容如下:

@echo off
rem 快捷方式 by Castle@wakeofgods.com(开心鲨鱼@qq)

color 0a
title “英雄无敌WOG之魔力觉醒” 快捷方式 by Castle@wakeofgods.com(开心鲨鱼@qq)

cd Hero3_The_Magic_Awakens
set WrkDir=%~dp0

setlocal EnableDelayedExpansion

for /f "delims=: tokens=1,*" %%a in (MagAwaken.txt) do (
  set LinkName=%%a.lnk
  set filname=%%b
  set ThePath=%~dp0%%b
  mshta VBScript:Execute("Set Shell=CreateObject(""WScript.Shell""):Set Link=Shell.CreateShortcut(""!LinkName!""):Link.TargetPath=""!ThePath!"":Link.WorkingDirectory=""!WrkDir!"":Link.Save:close"^)
)

if exist "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\英雄无敌WOG之魔力觉醒" (
  del /Q "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\英雄无敌WOG之魔力觉醒"
) else (
  mkdir "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\英雄无敌WOG之魔力觉醒"
)

copy /y 魔力觉醒.lnk "%USERPROFILE%\Desktop\" >nul 2>nul
move /y *.lnk "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\英雄无敌WOG之魔力觉醒\" >nul 2>nul

在Winrar自解压文件中的应用

如何用Winrar制作自解压文件?

  1. 右键文件夹,选择“添加到压缩文件...”
  2. 在“常规”标签项的“压缩选项”中,勾选“创建自解压格式压缩文件”,此时“压缩文件名”处的文件扩展名为exe
  3. 如无特殊要求或配置,点击确定即可。否则,看下一步
  4. 切换到“高级”标签,点击“自解压文件选项...”
  5. “高级自解压选项”中,点“设置”标签,在“解压或运行”中输入解压完成后要运行的程序或批处理
  6. 其他的选项标签,暂不讨论。

下面结合制作自解压的Chrome说明。

  • 确保开始保存的文件Chrome自解压安装.batD:\programfiles\Chrome75文件夹。
  • 进入D:\programfiles\文件夹,右键其中的Chrome75文件夹,如上面步骤所示。
  • 在上面的第5个步骤中,设置中输入Chrome75\Chrome自解压安装.bat即可。
  • 得到自解压文件D:\programfiles\Chrome75.exe
  • 测试:双击Chrome75.exe,点“解压”(默认的“目标文件夹”是D:\),将解压文件并得到D:\Chrome75,且生成了快捷方式和程序组。

上面的补充说明:

  • 解压时,Winrar会进入指定的“目标文件夹”,此处默认的“目标文件夹”是D:\
  • 根据压缩时的设置,运行指定的文件。此处是运行Chrome75\Chrome自解压安装.bat。注意,位置仍然在D:\,没有进入D:\Chrome75文件夹。所以批处理中,并没有注释掉cd Chrome75(不影响前面批处理的结果)

参考文献

  1. 批处理创建文件桌面快捷方式
  2. 批处理实现批量创建快捷方式

标签:解压,文件,exe,批处理,创建,文件夹,快捷方式
来源: https://www.cnblogs.com/ourweiguan/p/11247528.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有