标题: 谁帮我改改这个批处理,谢谢!
[打印本页]
作者: wangyanbac
时间: 2010-4-6 12:44
标题: 谁帮我改改这个批处理,谢谢!
想写一个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
作者: qinchun36
时间: 2010-4-6 12:58
先在你vbs代码末尾加一行:
wscript.echo nam
然后再bat里面用
:vie
cls
for /f "delims=" %%a in ('cscript -nologo cho.vbs') do (set "nam=%%a")
md %TEMP%\wimg>nul
作者: wangyanbac
时间: 2010-4-6 13:48
谢谢你 qinchun36,果然可以这样!