-1
在我的c#windows應用程序中,我已經編寫了下面的代碼來運行該進程並殺死所有進程,如果在啓動c#應用程序之前運行,並且如果運行殺死它並通過我的c#應用。使用GetProcessesByName再次獲取被殺死的進程
//Finding TestApp
Process[] pname = Process.GetProcessesByName("TestApp");
If any TesyApp running before kill it
if (pname.Length != 0 && this.processId == 0)
{
for (int i = 0; i < pname.Length; i++)
{
pname[i].Kill();
}
//Again find the TestApp
pname = Process.GetProcessesByName("TestApp");
}
//If not found start the process
if (pname.Length == 0)
{
---
process.Start();
this.processId = process.Id;
}
我的問題是,如果我申請的任何TestApp(由Flex開發出了不同的applcation)正在運行殺死它運行我的C#應用程序之前,並且由C#restrt它。如果我調試我的代碼,一切工作正常。 但是,如果我運行我的C#代碼不在調試模式,然後, pname [i] .Kill(); pname = Process.GetProcessesByName(「TestApp」);這是再次發現。所以長度變爲1,c#無法啓動它並退出if條件。 如果(pname.Length == 0){ - }
問候
它解決了我的問題!謝謝! – Sangeetha