2016-04-24 2 views
-1

Приложение окна WPF открывается из другого окна при его запуске. Но я хочу закрыть одно окно. Если приложение уже запущено, и я снова нахожусь в приложении, чтобы открыть его снова, то предыдущее приложение будет закрыто, и новое приложение будет запущено.Как закрыть предыдущий WPF при его запуске?

Я могу закрыть текущее окно, когда оно уже запущено.

Application.Current.Shutdown(); 

Но я хочу закрыть предыдущее окно, которое работает.

+0

Я имею в виду, что если приложение запускается и я его снова открываю, тогда предыдущее окно будет закрыто, а новое будет активировано. Как и видеоплеер. –

+0

На самом деле обычно делается то, что новый передает параметры команды уже запущенному приложению, а затем закрывается. Так что это действительно новый, который закрывается, а не старый. –

ответ

0

Чтобы сигнализировать через границы процесса, вам нужен примитив уровня ОС, такой как именованный мьютекс.

При запуске приложения вы должны SignalAndWait на одном и том же мьютексе.

Используйте сигнал, чтобы убить существующий текущий процесс и подать сигнал о начале нового процесса.

+0

извините, я не понимаю .... –

+1

Тогда начните читать. Все ключевые слова находятся внутри. Это не специфичная для WPF бит. - совсем нет (за исключением того, что вы никогда не узнали, что такое WPF, какие процессы и т. д.). – TomTom

+0

Ниже приведены некоторые из основ. Счастливое кодирование. https://msdn.microsoft.com/en-us/library/tsds36f0(v=vs.110).aspx –