Я хотел бы закрыть Discord программно, надлежащим образом (без вызова Process.Kill () ).
AFAIK Обычный способ элегантно закрыть программу - проверить, есть главное окно, связанное с процессом (например: Process.MainWindowHandle != IntPtr.Zero
), а затем вызовите Process.CloseMainWindow()
. Он отправит сообщение о закрытии в главное окно.
Он не работает с Discord, поскольку главное окно может быть уже закрыто, а программа все еще работает в фоновом режиме. Обычный способ выйти из Discord - щелкнуть правой кнопкой мыши значок на панели задач и выбрать «Выход из Discord», а не просто закрыть главное окно.
Когда Windows завершает работу, Discord автоматически закрывается. Я не думаю, что Windows просто убивает все процессы Discord, так что, может быть, есть способ сделать что-то похожее на то, что делает Windows?