У меня есть пользовательский ApplicationContext, и я пытаюсь завершить его, если особые условия соблюдают. Я использую Взаимное исключение для обеспечения единственного экземпляра.
Я попробовал base.OnMainFormClosed(null, null);
. Application.Exit()
и ExitThread
. Все прекращает обрабатывать, но сам процесс все еще работает.
Завершитесь Основной () метод:
static void Main()
{
bool firstInstance;
using (Mutex mutex = new Mutex(true,
@"Global\MyApplication",
out firstInstance))
{
if (!firstInstance)
{
MessageBox.Show("Another instance is already running.");
return;
}
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new CustomContext());
}
}
Какова корректная техника?