找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 19740|回复: 2

[文本处理] [已解决]求大神对批处理优化、勘误

[复制链接]
发表于 2023-9-19 02:16:45 | 显示全部楼层 |阅读模式
本帖最后由 zldarwin 于 2023-9-19 12:35 编辑

近日通过论坛帮助,解决了多年的兼容性设置问题(站内链接),感谢 Batcher 的专业解答。

随后补充细节,虽测试正常,仍怕隐藏致命问题,仍想继续完善,诚邀大神们指正。

看看能否“优化语句语法、精简代码、使逻辑顺序更合理”等。

批处理用于执行自解压安装包后的自动设定
  1. ::
  2. ::旨在优化电子课堂安装流程
  3. ::

  4. @echo off

  5. set AppName=幼幼版3~4岁D.exe
  6. set CompLayer=~ WIN7RTM
  7. set Folder=幼幼版3~4岁D

  8. ::创建自定义桌面快捷方式
  9. set qbmname=创意阅读(上)2~3岁 D.lnk
  10. set qbmexec=%~dp0幼幼版3~4岁D.exe
  11. mshta VBScript:Execute("Set a=CreateObject(""WScript.Shell""):Set b=a.CreateShortcut(a.SpecialFolders(""Desktop"") & ""\%qbmname%""):b.TargetPath=""%qbmexec%"":b.WorkingDirectory=""%~dp0"":b.Save:close")

  12. ::检测系统版本后,安装不同版本Adobe Air
  13. for /f "delims=" %%i in ('ver') do (
  14.     set "version=%%i"
  15. )
  16. set "version=%version:~-9,3%"
  17. if "%version%" equ "6.1" (
  18.     echo Windows 7
  19.     start %Folder%\adobeAirV32.exe
  20. ) else (
  21.     echo Windows 10/11
  22.     ::Win10/Win11下,设置系统兼容性
  23.     reg add "HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /v "%~dp0%AppName%" /t REG_SZ /d "%CompLayer%" /f
  24.     start %Folder%\adobeAirV29.exe
  25. )

  26. ::打开官网登录页
  27. start http://www.magepark.cn/login/
复制代码

评分

参与人数 1PB +2 收起 理由
Batcher + 2 感谢给帖子标题标注[已解决]字样

查看全部评分

发表于 2023-9-19 09:25:10 | 显示全部楼层
回复 1# zldarwin
  1. set "AppName=幼幼版3~4岁D.exe"
复制代码
set命令使用双引号的好处:
1、避免字符串里面有特殊字符导致出错。
2、避免行尾不小心出现多余空格导致出错。
  1. start "" "%Folder%\adobeAirV29.exe"
复制代码
start命令使用双引号的好处:
避免路径中包含空格或特殊字符导致出错。

评分

参与人数 1技术 +1 收起 理由
zldarwin + 1 细节见深度

查看全部评分

 楼主| 发表于 2023-9-19 12:27:34 | 显示全部楼层
回复 2# Batcher


   
收到,感谢 Batcher ~
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-18 13:20 , Processed in 0.012801 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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