[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
本帖最后由 freesoft00 于 2015-3-21 13:38 编辑

回复 14# pcl_test
在64位的系统中,手动打开
Z:\Windows\SysWOW64\cmd.exe 是管理员权限,然后运行编写的创建快捷方式的批处理,会提示脚本错误。
而在64位的cmd中运行没有问题。
请看一下是哪里的问题?我的测试环境是win8.1

脚本执行的很慢,等老半天才弹出来脚本错误,然后才能继续执行批处理下面的任务。

TOP

实在想不出什么好的方法,想用批处理创建url形式的快捷方式,但是不行在win8.1中
创建后的快捷方式路径直接被系统添加上来http://后面是设定的路径。
  1. set "path="%SYSTEMDRIVE%\Program Files\Internet Explorer\iexplore.exe""
  2. set "name=Internet Explorer"
  3. set m="%USERPROFILE%\Desktop\%name%.url"
  4. echo [InternetShortcut] >>%m%
  5. echo URL="%path%" >>%m%
  6. echo IconIndex=1 >>%m%
  7. echo IconFile="%SYSTEMDRIVE%\Program Files\Internet Explorer\iexplore.exe" >>%m%
复制代码

TOP

而且图标也是网页的图标,被系统自动设置为了url.dll的图标。

TOP

本帖最后由 pcl_test 于 2016-6-4 23:31 编辑

回复 16# freesoft00
直接双击运行批处理文件不行吗?怎么还要手动打开cmd?把错误提示截图看看

TOP

回复 17# freesoft00
  1. set "dir=%SYSTEMDRIVE%\Program Files\Internet Explorer\iexplore.exe"
  2. set "name=Internet Explorer"
  3. set "m=%USERPROFILE%\Desktop\%name%.url"
  4. (echo [InternetShortcut]
  5. echo URL="%dir%"
  6. echo IconIndex=0
  7. echo IconFile="%SYSTEMDRIVE%\Program Files\Internet Explorer\iexplore.exe")>"%m%"
复制代码

TOP

本帖最后由 freesoft00 于 2015-3-21 21:30 编辑

回复 19# pcl_test
不是不行,因为有些系统双击打开的是64位的cmd就没有什么问题,有些双击打开的就是32位的cmd,这个时候就不行了。所以需要手动打开32位的cmd环境,然后再运行批处理才能测试出来。
我在论坛搜索了64这个关键才,好像vbs有这个问题。
这里:
http://www.bathome.net/viewthread.php?tid=34003&highlight=64
我不知道是不是和我的是一个问题,我看不懂那个帖子的代码,所以不知道如何修改我的创建快捷方式的批处理测试。

TOP

回复 21# freesoft00
你的错误提示是什么?

TOP

回复 22# pcl_test


    现在不在故障机器旁白,如果可以明天下午或者晚上截图上来。

TOP

回复 20# pcl_test
这个和上面那个应该没有区别吧?

TOP

回复  freesoft00
pcl_test 发表于 2015-3-19 13:22



    请教下。。。xp系统环境下,如何将开始菜单里面的“关机”、“注销”图标,换成下面这2种图标外观?谢谢
  1. -----------------------------------------------
  2. ;创建exe文件的lnk快捷方式
  3. set SrcFile=logoff
  4. set LnkFile=%userprofile%\「开始」菜单\注销
  5. call :CreateShort "%SrcFile%" "%LnkFile%"
  6. goto :eof
  7. ::Arguments              目标程序参数
  8. ::Description            快捷方式备注
  9. ::FullName               返回快捷方式完整路径
  10. ::Hotkey                 快捷方式快捷键
  11. ::IconLocation           快捷方式图标,不设则使用默认图标
  12. ::TargetPath             目标
  13. ::WindowStyle            窗口启动状态
  14. ::WorkingDirectory       起始位置
  15. :CreateShort
  16. mshta VBScript:Execute("Set a=CreateObject(""WScript.Shell""):Set b=a.CreateShortcut(""%~2.lnk""):b.TargetPath=""%~1"":b.WorkingDirectory=""%~dp1"":b.Save:close")
复制代码
  1. -----------------------------------------------
  2. ;创建exe文件的lnk快捷方式
  3. set SrcFile=%SystemRoot%\system32\shutdn.bat
  4. set LnkFile=%userprofile%\「开始」菜单\关机
  5. call :CreateShort "%SrcFile%" "%LnkFile%"
  6. goto :eof
  7. ::Arguments              目标程序参数
  8. ::Description            快捷方式备注
  9. ::FullName               返回快捷方式完整路径
  10. ::Hotkey                 快捷方式快捷键
  11. ::IconLocation           快捷方式图标,不设则使用默认图标
  12. ::TargetPath             目标
  13. ::WindowStyle            窗口启动状态
  14. ::WorkingDirectory       起始位置
  15. :CreateShort
  16. mshta VBScript:Execute("Set a=CreateObject(""WScript.Shell""):Set b=a.CreateShortcut(""%~2.lnk""):b.TargetPath=""%~1"":b.WorkingDirectory=""%~dp1"":b.Save:close")
复制代码

TOP

回复 25# ygqiang


    关机和注销图标在 %windir%\system32\shell32.dll里
随便找一个快捷方式,点击更改图标,定位到%windir%\system32\shell32.dll,从上往下数,看关机图标是第几个
比如win7关机图标是第27个,那么在代码中加一句:
b.IconLocation=""%windir%\system32\shell32.dll, 27""

TOP

回复  ygqiang


    关机和注销图标在 %windir%\system32\shell32.dll里
随便找一个快捷方式,点击更 ...
apang 发表于 2015-3-22 15:09



   
解决了。感谢。xp系统下,代码如下:
  1. -----------------------------------------------
  2. del /f /q "%userprofile%\「开始」菜单\关机.*"
  3. del /f /q "%userprofile%\「开始」菜单\画图.*"
  4. del /f /q "%userprofile%\「开始」菜单\计算器.*"
  5. del /f /q "%userprofile%\「开始」菜单\记事本.*"
  6. del /f /q "%userprofile%\「开始」菜单\命令提示符.*"
  7. del /f /q "%userprofile%\「开始」菜单\注销.*"
  8. del /f /q "%userprofile%\「开始」菜单\我的电脑.lnk"
  9. ping 127.0.0.1 -n 3 >nul 2>nul
  10. -----------------------------------------------
  11. ;创建exe文件的lnk快捷方式
  12. set SrcFile=%SystemRoot%\system32\shutdn.bat
  13. set LnkFile=%userprofile%\「开始」菜单\关机
  14. call :CreateShort "%SrcFile%" "%LnkFile%" "%IconPath%"
  15. goto :eof
  16. ::Arguments              目标程序参数
  17. ::Description            快捷方式备注
  18. ::FullName               返回快捷方式完整路径
  19. ::Hotkey                 快捷方式快捷键
  20. ::IconLocation           快捷方式图标,不设则使用默认图标
  21. ::TargetPath             目标
  22. ::WindowStyle            窗口启动状态
  23. ::WorkingDirectory       起始位置
  24. :CreateShort
  25. mshta VBScript:Execute("Set a=CreateObject(""WScript.Shell""):Set b=a.CreateShortcut(""%~2.lnk""):b.TargetPath=""%~1"":b.WorkingDirectory=""%~dp1"":b.IconLocation=""%windir%\system32\shell32.dll,27"":b.Save:close")
  26. -----------------------------------------------
  27. ;创建exe文件的lnk快捷方式
  28. set SrcFile=%SystemRoot%\system32\mspaint.exe
  29. set LnkFile=%userprofile%\「开始」菜单\画图
  30. call :CreateShort "%SrcFile%" "%LnkFile%"
  31. goto :eof
  32. ::Arguments              目标程序参数
  33. ::Description            快捷方式备注
  34. ::FullName               返回快捷方式完整路径
  35. ::Hotkey                 快捷方式快捷键
  36. ::IconLocation           快捷方式图标,不设则使用默认图标
  37. ::TargetPath             目标
  38. ::WindowStyle            窗口启动状态
  39. ::WorkingDirectory       起始位置
  40. :CreateShort
  41. mshta VBScript:Execute("Set a=CreateObject(""WScript.Shell""):Set b=a.CreateShortcut(""%~2.lnk""):b.TargetPath=""%~1"":b.WorkingDirectory=""%~dp1"":b.Save:close")
  42. -----------------------------------------------
  43. ;创建exe文件的lnk快捷方式
  44. set SrcFile=%SystemRoot%\system32\calc.exe
  45. set LnkFile=%userprofile%\「开始」菜单\计算器
  46. call :CreateShort "%SrcFile%" "%LnkFile%"
  47. goto :eof
  48. ::Arguments              目标程序参数
  49. ::Description            快捷方式备注
  50. ::FullName               返回快捷方式完整路径
  51. ::Hotkey                 快捷方式快捷键
  52. ::IconLocation           快捷方式图标,不设则使用默认图标
  53. ::TargetPath             目标
  54. ::WindowStyle            窗口启动状态
  55. ::WorkingDirectory       起始位置
  56. :CreateShort
  57. mshta VBScript:Execute("Set a=CreateObject(""WScript.Shell""):Set b=a.CreateShortcut(""%~2.lnk""):b.TargetPath=""%~1"":b.WorkingDirectory=""%~dp1"":b.Save:close")
  58. -----------------------------------------------
  59. ;创建exe文件的lnk快捷方式
  60. set SrcFile=%SystemRoot%\system32\notepad.exe
  61. set LnkFile=%userprofile%\「开始」菜单\记事本
  62. call :CreateShort "%SrcFile%" "%LnkFile%"
  63. goto :eof
  64. ::Arguments              目标程序参数
  65. ::Description            快捷方式备注
  66. ::FullName               返回快捷方式完整路径
  67. ::Hotkey                 快捷方式快捷键
  68. ::IconLocation           快捷方式图标,不设则使用默认图标
  69. ::TargetPath             目标
  70. ::WindowStyle            窗口启动状态
  71. ::WorkingDirectory       起始位置
  72. :CreateShort
  73. mshta VBScript:Execute("Set a=CreateObject(""WScript.Shell""):Set b=a.CreateShortcut(""%~2.lnk""):b.TargetPath=""%~1"":b.WorkingDirectory=""%~dp1"":b.Save:close")
  74. -----------------------------------------------
  75. ;创建exe文件的lnk快捷方式
  76. set SrcFile=%SystemRoot%\system32\cmd.exe
  77. set LnkFile=%userprofile%\「开始」菜单\命令提示符
  78. call :CreateShort "%SrcFile%" "%LnkFile%"
  79. goto :eof
  80. ::Arguments              目标程序参数
  81. ::Description            快捷方式备注
  82. ::FullName               返回快捷方式完整路径
  83. ::Hotkey                 快捷方式快捷键
  84. ::IconLocation           快捷方式图标,不设则使用默认图标
  85. ::TargetPath             目标
  86. ::WindowStyle            窗口启动状态
  87. ::WorkingDirectory       起始位置
  88. :CreateShort
  89. mshta VBScript:Execute("Set a=CreateObject(""WScript.Shell""):Set b=a.CreateShortcut(""%~2.lnk""):b.TargetPath=""%~1"":b.WorkingDirectory=""%~dp1"":b.Save:close")
  90. ping 127.0.0.1 -n 5 >nul 2>nul
  91. -----------------------------------------------
  92. ;创建exe文件的lnk快捷方式
  93. set SrcFile=logoff
  94. set LnkFile=%userprofile%\「开始」菜单\注销
  95. call :CreateShort "%SrcFile%" "%LnkFile%" "%IconPath%"
  96. goto :eof
  97. ::Arguments              目标程序参数
  98. ::Description            快捷方式备注
  99. ::FullName               返回快捷方式完整路径
  100. ::Hotkey                 快捷方式快捷键
  101. ::IconLocation           快捷方式图标,不设则使用默认图标
  102. ::TargetPath             目标
  103. ::WindowStyle            窗口启动状态
  104. ::WorkingDirectory       起始位置
  105. :CreateShort
  106. mshta VBScript:Execute("Set a=CreateObject(""WScript.Shell""):Set b=a.CreateShortcut(""%~2.lnk""):b.TargetPath=""%~1"":b.WorkingDirectory=""%~dp1"":b.IconLocation=""%windir%\system32\shell32.dll,44"":b.Save:close")
  107. -----------------------------------------------
  108. ::创建exe文件的lnk快捷方式
  109. ::xp系统,在开始菜单下面,建立快捷方式
  110. set "SrcFile=%SystemRoot%\system32\shutdown.exe"
  111. set "Args=-l -t 2"
  112. set "LnkFile=注销.LNK"
  113. call :CreateShort "%SrcFile%" "%Args%" "%LnkFile%" "%IconPath%"
  114. pause & goto :eof
  115. ::Arguments              目标程序参数
  116. ::Description            快捷方式备注
  117. ::FullName               返回快捷方式完整路径
  118. ::Hotkey                 快捷方式快捷键
  119. ::IconLocation           快捷方式图标,不设则使用默认图标
  120. ::TargetPath             目标
  121. ::WindowStyle            窗口启动状态
  122. ::WorkingDirectory       起始位置
  123. :CreateShort
  124. mshta VBScript:Execute("Set a=CreateObject(""WScript.Shell""):Set b=a.CreateShortcut(a.SpecialFolders(""「开始」菜单"") & ""%userprofile%\「开始」菜单\%~3""):b.TargetPath=""%~1"":b.WorkingDirectory=""%~dp1"":b.Arguments=""%~2"":b.IconLocation=""%windir%\system32\shell32.dll,44"":b.Save:close")
  125. ping 127.0.0.1 -n 2 >nul 2>nul
  126. copy /y 我的电脑.lnk "%userprofile%\「开始」菜单\"
  127. exit
复制代码

TOP

win7 64系统下,代码如下:
  1. ——————————————————————————————————————————————————
  2. del /q 0000-win7.vbs
  3. ::创建exe文件的lnk快捷方式
  4. ::win7系统下,在开始菜单的附件accessories下面,建立快捷方式
  5. @echo off
  6. set "SrcFile=%SystemRoot%\system32\shutdown.exe"
  7. set "Args=-s -t 2"
  8. set "LnkFile=关机.LNK"
  9. call :CreateShort "%SrcFile%" "%Args%" "%LnkFile%" "%IconPath%"
  10. pause & goto :eof
  11. ::Arguments              目标程序参数
  12. ::Description            快捷方式备注
  13. ::FullName               返回快捷方式完整路径
  14. ::Hotkey                 快捷方式快捷键
  15. ::IconLocation           快捷方式图标,不设则使用默认图标
  16. ::TargetPath             目标
  17. ::WindowStyle            窗口启动状态
  18. ::WorkingDirectory       起始位置
  19. :CreateShort
  20. mshta VBScript:Execute("Set a=CreateObject(""WScript.Shell""):Set b=a.CreateShortcut(a.SpecialFolders(""startmenu"") & ""\\Programs\accessories\%~3""):b.TargetPath=""%~1"":b.WorkingDirectory=""%~dp1"":b.Arguments=""%~2"":b.IconLocation=""%windir%\system32\shell32.dll,27"":b.Save:close")
  21. ::创建exe文件的lnk快捷方式
  22. ::win7系统下,在开始菜单的附件accessories下面,建立快捷方式
  23. set SrcFile=logoff
  24. set LnkFile=C:\ProgramData\Microsoft\Windows\Start Menu\Programs\accessories\注销
  25. call :CreateShort "%SrcFile%" "%LnkFile%" "%IconPath%"
  26. goto :eof
  27. ::Arguments              目标程序参数
  28. ::Description            快捷方式备注
  29. ::FullName               返回快捷方式完整路径
  30. ::Hotkey                 快捷方式快捷键
  31. ::IconLocation           快捷方式图标,不设则使用默认图标
  32. ::TargetPath             目标
  33. ::WindowStyle            窗口启动状态
  34. ::WorkingDirectory       起始位置
  35. :CreateShort
  36. mshta VBScript:Execute("Set a=CreateObject(""WScript.Shell""):Set b=a.CreateShortcut(""%~2.lnk""):b.TargetPath=""%~1"":b.WorkingDirectory=""C:\windows\system32\"":b.IconLocation=""%windir%\system32\shell32.dll,44"":b.Save:close")
  37. set "profils=C:\Program Files"
  38. if exist "C:\Program Files (x86)" set "profils=C:\Program Files (x86)"
  39. ::创建exe文件的lnk快捷方式
  40. ::win7系统下,在开始菜单的附件accessories下面,建立快捷方式
  41. set SrcFile=%profils%\Internet Explorer\iexplore.exe
  42. set LnkFile=%userprofile%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Accessories\Internet Explorer
  43. call :CreateShort "%SrcFile%" "%LnkFile%"
  44. goto :eof
  45. ::Arguments              目标程序参数
  46. ::Description            快捷方式备注
  47. ::FullName               返回快捷方式完整路径
  48. ::Hotkey                 快捷方式快捷键
  49. ::IconLocation           快捷方式图标,不设则使用默认图标
  50. ::TargetPath             目标
  51. ::WindowStyle            窗口启动状态
  52. ::WorkingDirectory       起始位置
  53. :CreateShort
  54. mshta VBScript:Execute("Set a=CreateObject(""WScript.Shell""):Set b=a.CreateShortcut(""%~2.lnk""):b.TargetPath=""%~1"":b.WorkingDirectory=""%~dp1"":b.Save:close")
  55. echo Sub startpin(lnkfile)>>0000-win7.vbs
  56. echo 'Const CSIDL_COMMON_PROGRAMS = ^&H17>>0000-win7.vbs
  57. echo Set objShell = CreateObject("Shell.Application")>>0000-win7.vbs
  58. echo 'Set objAllUsersProgramsFolder = objShell.NameSpace(CSIDL_COMMON_PROGRAMS)>>0000-win7.vbs
  59. echo 'strAllUsersProgramsPath = objAllUsersProgramsFolder.Self.Path>>0000-win7.vbs
  60. echo path=Left(lnkfile,InStrRev(lnkfile,"\"))>>0000-win7.vbs
  61. echo Set objFolder = objShell.Namespace(path)>>0000-win7.vbs
  62. echo name=Replace(lnkfile,path,"")>>0000-win7.vbs
  63. echo Set objFolderItem = objFolder.ParseName(name)>>0000-win7.vbs
  64. echo Set colVerbs = objFolderItem.Verbs>>0000-win7.vbs
  65. echo For Each objVerb in colVerbs>>0000-win7.vbs
  66. echo     If Left(objVerb.name,2) = "附到" Then objVerb.DoIt>>0000-win7.vbs
  67. echo Next>>0000-win7.vbs
  68. echo End Sub>>0000-win7.vbs
  69. echo startpin Wscript.Arguments(0)>>0000-win7.vbs
  70. ping 127.0.0.1 -n 3 >nul 2>nul
  71. ren "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\accessories\Paint.lnk" 画图.lnk
  72. ren "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\accessories\Calculator.lnk" 计算器.lnk
  73. ren "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\accessories\System Tools\Resource Monitor.lnk" 资源监视器.lnk
  74. ren "%userprofile%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Accessories\关机.lnk"
  75. ren "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\accessories\Snipping Tool.lnk" 截图.lnk
  76. ren "%userprofile%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Accessories\Notepad.lnk" 记事本.lnk
  77. ren "%userprofile%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Accessories\Command Prompt.lnk" 命令提示符.lnk
  78. ren "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\accessories\注销.lnk"
  79. 0000-win7.vbs "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\accessories\画图.lnk"
  80. 0000-win7.vbs "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\accessories\计算器.lnk"
  81. 0000-win7.vbs "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Accessories\System Tools\资源监视器.lnk"
  82. 0000-win7.vbs "%userprofile%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Accessories\关机.lnk"
  83. 0000-win7.vbs "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Accessories\截图.lnk"
  84. 0000-win7.vbs "%userprofile%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Accessories\记事本.lnk"
  85. 0000-win7.vbs "%userprofile%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Accessories\命令提示符.lnk"
  86. 0000-win7.vbs "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\accessories\注销.lnk"
  87. 0000-win7.vbs "%userprofile%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Accessories\Internet Explorer.lnk"
  88. ping 127.0.0.1 -n 5 >nul 2>nul
  89. del /q 0000-win7.vbs
复制代码

TOP

回复 19# pcl_test

TOP

返回列表