簡體   English   中英

作為子進程啟動的應用程序的終止結束調用應用程序

[英]The termination of an application started as a child process ends the calling application

我有一個應用程序可以從我的項目中啟動另一個應用程序:

MainWindow mw = new OtherApplication.MainWindow();
mw.Show();

當這個其他應用程序關閉時,它也會自動終止父應用程序。 這是我試圖避免的。 我使用此方法關閉子應用程序:

private void btnClose_Click(object sender, RoutedEventArgs e)
{
   Application.Current.Shutdown();
}

從屬應用程序既可以獨立使用,也可以由父應用程序調用。 我能否以某種方式確定應用程序是單獨啟動還是作為父應用程序的子進程運行? 在這種情況下,我可能不得不調整 btnClose_Click 方法?

如何在不終止父應用程序的情況下關閉作為子進程運行的應用程序?

我自己發現:

        private void btnClose_Click(object sender, RoutedEventArgs e)
        {
            string processname = System.IO.Path.GetFileNameWithoutExtension 
                (System.Reflection.Assembly.GetEntryAssembly().Location);
            if (processname != "OtherApplicationName")
                Close();
            else
                Application.Current.Shutdown();
        }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM