在启动的应用程序closures之前,batch file不允许交互

我正在写一个允许select的batch file

这是我遇到的问题…

如果我select在单独的窗口(资源pipe理器/单独)启动Internet Explorer的选项,我不能与我的batch file进行交互,并select其他选项,直到我启动的IE窗口被closures。

我希望能够与我的菜单进行交互,启动应用程序,并随时进行特殊select…我不想closures刚刚启动的应用程序,以便再次与我的batch file进行交互。

我正在使用此batch file访问我创build的不同菜单,以便在支持我的用户(在大型IT服务台)的同时在不同的时间完成任务数组。

例:

:MENUS1 CLS ECHO ============= MENU NAME ============= ECHO ------------------------------------- ECHO 1. Explorer Separate S1 ECHO 2. Control Panel S2 ECHO 3. Network Connections S3 ECHO 4. Add/Remove Programs S4 ECHO 5. Internet Options S5 ECHO 6. Java Control Panel S6 ECHO 7. More Options S7 ECHO ------------------------------------- ECHO 8. Selection S8 ECHO ------------------------------------- ECHO 9. Selection S9 ECHO ------------------------------------- ECHO ==========PRESS 'Q' TO QUIT========== ECHO ======PRESS 'MM' FOR MAIN MENU======= ECHO. SET INPUT= SET /P INPUT=Please select a number: IF /I '%INPUT%'=='S1' GOTO SelectionS1 IF /I '%INPUT%'=='S2' GOTO SelectionS2 IF /I '%INPUT%'=='S3' GOTO SelectionS3 IF /I '%INPUT%'=='S4' GOTO SelectionS4 IF /I '%INPUT%'=='S5' GOTO SelectionS5 IF /I '%INPUT%'=='S6' GOTO SelectionS6 IF /I '%INPUT%'=='S7' GOTO SelectionS7 IF /I '%INPUT%'=='S8' GOTO SelectionS8 IF /I '%INPUT%'=='S9' GOTO SelectionS9 IF /I '%INPUT%'=='Q' GOTO Quit IF /I '%INPUT%'=='MM' GOTO MENU CLS ECHO ============INVALID INPUT============ ECHO ------------------------------------- ECHO Please select a number from the ECHO Shortcut Menu [S1-S9] or select 'MM' echo for Main Menu or 'Q' to quit. ECHO ------------------------------------- ECHO ======PRESS ANY KEY TO CONTINUE====== PAUSE > NUL GOTO MENU REM System Shortcuts Option 1 S1 :SelectionS1 Explorer /separate GOTO MENUS1 :SelectionS2 panel GOTO MENUS1 :SelectionS3 ncpa.cpl GOTO MENUS1 :SelectionS4 appwiz.cpl GOTO MENUS1 :SelectionS5 inetcpl.cpl GOTO MENUS1 :SelectionS6 jpicpl32.cpl GOTO MENUS1 

所以,如果我select选项#1 – 资源pipe理器单独S1执行命令资源pipe理器/单独和一个新的资源pipe理器窗口启动,但如果我也想select选项#2 – 控制面板S2打开控制面板…我可以'直到我closures批处理打开的资源pipe理器窗口。 注意,我不得不在每个命令之后添加'GOTO MENUS1',因为1)在我做之前 – 所有的命令都试图一个接一个地启动,2)我想redirect回菜单…

任何想法,我可以解决这个问题,我可以与batch file进行交互,而无需closures我通过批处理打开的应用程序?

如果您希望在启动的程序终止之前将控件返回到批处理文件,则必须使用“ start ProgramName Options 。 例如:

 :SelectionS1 start Explorer /separate GOTO MENUS1 

/separate参数告诉Windows启动一个新的资源管理器实例,与使用start Explorer不同。