2013-10-09 67 views
0

我在我的Windows窗體應用程序中有一個按鈕和一個richtextbox。我會寫這樣的:發送richtextbox文本到批處理文件

@echo off 
echo hi 
pause 

當我按下按鈕,CMD將運行,閱讀richtextbox和進程。

問題是cmd無法讀取這些多行。它會在我點擊按鈕時關閉。我可以理解這個問題,但我該如何解決這個問題?

我自己找到了一個解決方案:保存文件,如temp.bat,並用cmd運行它,但有沒有其他方法?

+1

保存文件,然後使用'Process.Start',很確定這是唯一的方法(除非有第三方) – Sayse

+0

我認爲這是唯一的方法來做到這一點。無論如何謝謝回答。 – KaptaPrism

回答

0

有兩種方法可以做到這一點。

第一個是你的建議:製作一個臨時文件來存放你的命令,然後運行該文件。這真的是最容易,也更不容易出錯的。


第二種方法是使用&來分離命令。您將需要用&替換全部Enviornment.NewLine

拿這個舉例來說(你可以在命令行中運行你自己)

echo hey & echo no & echo fish ^& chips & pause 

你一定要確保你的投入沒有&,或者你有一個^逃避它。

See the documentation瞭解更多。