中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-11 09:59
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 这个批处理错在那里? 查看 653 回复 5
楼 主 这个批处理错在那里? 发表于 2009-02-20 14:34 ·  中国 广东 东莞 电信
初级用户
★★
积分 118
发帖 66
注册 2005-10-21 03:27
20年会员
UID 43827
状态 离线

@echo off
CLS
COLOR 0b
MODE con: COLS=50 LINES=20
@echo.
@echo 1. 启用VBS缩主执行功能
@echo.
@echo 2. 禁用VBS缩主执行功能
@echo.
@echo 3. 修复MS_ADO数据连接组件
@echo.
SET Choice=
SET /P Choice= 请选择(1或2):
IF NOT "%Choice%"=="" SET Choice=%Choice:~0,1%
ECHO.
IF /I "%Choice%"=="1" GOTO envbs
IF /I "%Choice%"=="2" GOTO disvbs
IF /I "%Choice%"=="3" GOTO FIXADO
goto :eof

:envbs
call :vbsfile /s
@pause>nul|echo. 启用VBS缩主执行功能成功完成,按任一键退出!
goto :eof

:disvbs
call :vbsfile /s /u
@pause>nul|echo. 禁用VBS缩主执行功能成功完成,按任一键退出!
goto :eof

:vbsfile
shift
regsvr32 scrrun.dll %%1 %%2
regsvr32 wshom.ocx %%1 %%2
regsvr32 scrobj.dll %%1 %%2
regsvr32 wshext.dll %%1 %%2
regsvr32 wshcon.dll %%1 %%2
regsvr32 jscript.dll %%1 %%2
regsvr32 vbscript.dll %%1 %%2
regsvr32 "%Commonprogramfiles%\system\ado\msado15.dll" %%1 %%2
Regsvr32 "%Commonprogramfiles%\System\Ole DB\oledb32.dll" %%1 %%2
goto :eof

:FIXADO
regsvr32 /s %Commonprogramfiles%\system\ado\msado15.dll
regsvr32 /s "%Commonprogramfiles%\System\ado\msado15.dll"
regsvr32 /s "%Commonprogramfiles%\System\ado\msador15.dll"
regsvr32 /s "%Commonprogramfiles%\System\ado\msadox.dll"
regsvr32 /s "%Commonprogramfiles%\System\ado\msadomd.dll"
Regsvr32 /s "%Commonprogramfiles%\System\Ole DB\oledb32.dll"
@pause>nul|echo. 修复MS_ADO数据连接组件成功,按任一键退出!
goto :eof


2 发表于 2009-02-20 15:05 ·  中国 广东 东莞 电信
初级用户
★★
积分 118
发帖 66
注册 2005-10-21 03:27
20年会员
UID 43827
状态 离线
版主不在?
3 发表于 2009-02-20 15:24 ·  中国 广东 东莞 电信
初级用户
★★
积分 118
发帖 66
注册 2005-10-21 03:27
20年会员
UID 43827
状态 离线
@echo off
CLS
COLOR 0b
MODE con: COLS=50 LINES=20
@echo.
@echo 1. 启用VBS缩主执行功能
@echo.
@echo 2. 禁用VBS缩主执行功能
@echo.
@echo 3. 修复MS_ADO数据连接组件
@echo.
SET Choice=
SET /P Choice= 请选择(1或2):
IF NOT "%Choice%"=="" SET Choice=%Choice:~0,1%
ECHO.
IF /I "%Choice%"=="1" GOTO envbs
IF /I "%Choice%"=="2" GOTO disvbs
IF /I "%Choice%"=="3" GOTO FIXADO
goto :eof

:envbs
call :vbsfile
@pause>nul|echo. 启用VBS缩主执行功能成功完成,按任一键退出!
goto :eof

:disvbs
call :vbsfile -u
@pause>nul|echo. 禁用VBS缩主执行功能成功完成,按任一键退出!
goto :eof

:vbsfile
regsvr32 scrrun.dll /s
regsvr32 wshom.ocx /s
regsvr32 scrobj.dll /s
regsvr32 wshext.dll /s
regsvr32 wshcon.dll /s
regsvr32 jscript.dll /s
regsvr32 vbscript.dll /s
goto :eof

:FIXADO
regsvr32 /s "%Commonprogramfiles%\System\ado\msado15.dll"
regsvr32 /s "%Commonprogramfiles%\System\ado\msador15.dll"
regsvr32 /s "%Commonprogramfiles%\System\ado\msadox.dll"
regsvr32 /s "%Commonprogramfiles%\System\ado\msadomd.dll"
regsvr32 /s "%Commonprogramfiles%\system\ado\msado15.dll"
Regsvr32 /s "%Commonprogramfiles%\System\Ole DB\oledb32.dll"
@pause>nul|echo. 修复MS_ADO数据连接组件成功,按任一键退出!
goto :eof
4 发表于 2009-02-20 15:38 ·  美国 惠普HP
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
能否在帖子标题中描述一下代码的功能?
5 发表于 2009-02-20 17:16 ·  中国 江西 赣州 电信
银牌会员
★★★★
积分 2,025
发帖 1,122
注册 2007-09-05 20:15
18年会员
UID 96653
性别 男
状态 离线
改成这样:
@echo off
CLS
COLOR 0b
MODE con: COLS=50 LINES=20
echo.
echo 1. 启用VBS缩主执行功能
echo.
echo 2. 禁用VBS缩主执行功能
echo.
echo 3. 修复MS_ADO数据连接组件
echo.
SET Choice=
SET /P Choice= 请选择(1或2):
ECHO.
goto %Choice:~,1%

:1 envbs
call :vbsfile
pause>nul|echo. 启用VBS缩主执行功能成功完成,按任一键退出!
goto :eof

:2 disvbs
call :vbsfile /u
pause>nul|echo. 禁用VBS缩主执行功能成功完成,按任一键退出!
goto :eof

:vbsfile
regsvr32 scrrun.dll /s %1
regsvr32 wshom.ocx /s %1
regsvr32 scrobj.dll /s %1
regsvr32 wshext.dll /s %1
regsvr32 wshcon.dll /s %1
regsvr32 jscript.dll /s %1
regsvr32 vbscript.dll /s %1
regsvr32 "%Commonprogramfiles%\system\ado\msado15.dll" /s %1
Regsvr32 "%Commonprogramfiles%\System\Ole DB\oledb32.dll" /s %1
goto :eof

:3 FIXADO
regsvr32 /s %Commonprogramfiles%\system\ado\msado15.dll
regsvr32 /s "%Commonprogramfiles%\System\ado\msado15.dll"
regsvr32 /s "%Commonprogramfiles%\System\ado\msador15.dll"
regsvr32 /s "%Commonprogramfiles%\System\ado\msadox.dll"
regsvr32 /s "%Commonprogramfiles%\System\ado\msadomd.dll"
Regsvr32 /s "%Commonprogramfiles%\System\Ole DB\oledb32.dll"
pause>nul|echo. 修复MS_ADO数据连接组件成功,按任一键退出!
6 发表于 2009-02-27 05:36 ·  中国 广东 东莞 电信
初级用户
★★
积分 118
发帖 66
注册 2005-10-21 03:27
20年会员
UID 43827
状态 离线
原来如此
论坛跳转: