中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-09-13 22:45
47,812 主题排行 / 349,916 发帖 / 今日 0 篇 / 48,268 会员排行
论坛回收站 » 谁帮我改改这个批处理,谢谢!
可打印版本  1,660 / 2
第1楼 wangyanbac 发表于 2010-04-06 12:44
新手上路 发帖 4 积分 5
谁帮我改改这个批处理,谢谢!
想写一个wim文件查看的东西,用cho.vbs来显示文件选择窗口,将文件路径存到变量nam中,

请问如何将cho.vbs中的变量nam返回给main.bat



文件1:main.bat

@echo off
color 2f

if not exist %windir%/system32/subst.exe goto setup

:menu
cls
title wim文件工具
echo 1 查看wim文件内容;
echo 2 卸载挂载的wim文件;
echo 3 还原映像文件到分区;
set /p choice=请输入选择你要操作的编号(1/2/3),按回车确定:
If /i "%Choice%"=="1" goto vie
If /i "%Choice%"=="2" goto un
If /i "%Choice%"=="3" goto res

:setup
title 正在安装 WIM 工具包
echo 正在安装 WIM 工具包,请稍后.....
rundll32.exe setupapi,InstallHinfSection DefaultInstall 132 wimfltr.inf>nul
copy /Y subst.exe %windir%/system32>nul
copy /Y imagex.exe %windir%/system32>nul
goto menu


:vie
cls
cho.vbs



????????????????????


md %TEMP%\wimg>nul
imagex.exe /mount %nam% 1 %TEMP%\wimg>nul
subst b: %TEMP%\wimg>nul
echo 文件已挂载到B:盘,按任意键查看并返回主菜单!
pause>nul
PING 127.0.0.1>NUL
start b:
goto menu

:un
imagex.exe /unmount %TEMP%\wimg>nul
subst b: /d>nul
rd /q %TEMP%\wimg>nul
echo 操作完成,文件已卸载!
PING 127.0.0.1>NUL
goto menu

:res
goto end



文件2:cho.vbs

Set objDialog = CreateObject("UserAccounts.CommonDialog")
objDialog.Filter = "All Files|*.*"
objDialog.InitialDir = "C:\"
intResult = objDialog.ShowOpen
nam=objDialog.FileName
第2楼 qinchun36 发表于 2010-04-06 12:58
高级用户 发帖 400 积分 609
先在你vbs代码末尾加一行:

wscript.echo nam

然后再bat里面用

:vie
cls
for /f "delims=" %%a in ('cscript -nologo cho.vbs') do (set "nam=%%a")

md %TEMP%\wimg>nul
第3楼 wangyanbac 发表于 2010-04-06 13:48
新手上路 发帖 4 积分 5
谢谢你 qinchun36,果然可以这样!
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023