我正在嘗試使用批處理文件複製命令提示符。我現在的代碼重現如下。使用批處理文件複製命令提示符
@echo off
title Command Prompt
:LOOP
set /p COMMAND="%CD%>"
title Command Prompt - %COMMAND%
call %COMMAND%
echo.
title Command Prompt
goto LOOP
但是,我有一個問題。如果我正在調用一個程序(例如gpedit.msc
),那麼當正常的命令提示符返回而不等待程序返回時,批處理文件將等待直到程序返回,然後再繼續。
如何測試命令是否爲程序,那麼我可以使用start
命令?
單靠CMD是不可能的。 CMD是否等待或不等待程序完成,確定程序是基於GUI還是基於文本。例如:'notepad.exe'和'chkdsk.exe'。 CMD不提供檢測這個的命令。 – Jay
@Jay令人失望。不過謝謝。 – mc10
那麼,有*是一種方式,一個很難。解析EXE文件的頭文件(PE文件格式的頭文件)來檢查它是GUI還是文本程序。您可以使用VBScript作爲幫助程序來讀取EXE二進制文件(手動,在字節級別)並報告結果。您也可以使用'DEBUG.EXE'腳本來完成,但這會更麻煩。 – Jay