2011-03-02 16 views
1

我有2個exe(A,B)和一個dll(C)。在線程中調用UI應用程序

A是一個用戶從命令行調用參數-ui或-file_path的exe文件。

if -ui is passed:B用於顯示UI。 如果傳遞了-file_path,則C用於進一步的功能。

如果-ui傳遞,我使用以下代碼(Main方法):

System.Threading.Thread a = new System.Threading.Thread(yah); 
a.Start(); 

static void yah() 
{ 
    SyngoViaInstallerUI.Program.Main(); 
} 

但它阻止從那裏被調用的exe A中的命令行。是否可以取消阻塞cmdLine,或者我應該爲-ui參數創建一個新進程?

謝謝。

回答

3

您必須爲B創建單獨的進程才能釋放進程A並優雅地完成。

0

下面的代碼工作,但這是正確的方式?

System.Diagnostics.Process pr = new System.Diagnostics.Process(); 
System.Diagnostics.ProcessStartInfo psi = new System.Diagnostics.ProcessStartInfo(); 
psi.FileName = @"file_path"; 
pr.StartInfo = psi; 
pr.Start(); 

感謝。

+0

是的。這是流程創建的方式。 – 2011-03-02 10:53:58

相關問題