調用埃克我在其中有不同的模塊,並且取決於多個dll等從另一個應用程序
現在,我想調用CLI應用程序與其他應用程序的用戶界面C#一個完整的命令行應用程序。但問題在於,CLI應用程序的Thread部分不能正常工作,控件只能跳到最後。那麼,有什麼辦法可以處理這種情況?
例如:我的應用程序CLI.exe,我想打電話,所以我寫了下面的代碼:
Process proc = new Process();
proc.StartInfo.FileName = CLI.exe;
proc.StartInfo.Arguments = args;
proc.StartInfo.UseShellExecute = false;
proc.StartInfo.CreateNoWindow = false;
proc.StartInfo.RedirectStandardOutput = true;
proc.StartInfo.RedirectStandardError = true;
proc.StartInfo.RedirectStandardInput = true;
proc.Start();
proc.WaitForExit();
現在,這個電話我要調用的應用程序。下面的代碼是有我的應用程序CLI.exe
System.Console.WriteLine("Start app {0}", args);
do
{
System.Threading.Thread.Sleep(1000);
} while (model.Exited == false);
System.Console.WriteLine("Finish app");
現在,在之間做while循環,我做了很多的PF處理而model.exit不要假的。 但是它啓動應用程序,寫入Start應用程序消息,然後它寫入Finish應用程序,並在兩者之間的處理從未發生過。
model.Exit也未經處理就變爲真。另外,如果我使用批處理命令運行CLI.exe或在cmd上運行CLI.exe,它可以完美運行。
那麼,任何想法如何管理呢?
什麼model.exited並沒有ü檢查爲什麼它成爲真正的 –
請提供更多的細節。 – sachin
這似乎是你打電話的應用程序的問題。也許一些依賴於標準輸入?你如何初始化'model.Exited'?你如何在循環內部設置它? – Alex