как закрыть .exe приложение по нажатию кнопки - PullRequest
3 голосов
/ 31 марта 2012

Может кто-нибудь сказать мне, как я могу закрыть файл .exe по нажатию кнопки, используя c #. У меня есть идея, как запустить файл .exe по нажатию кнопки, используя c #, следующим образом:

string str = @"C:\windows\system32\notepad.exe";
process.StartInfo.FileName = str;
process.Start();

Но кто-нибудь может сказать мне, как закрыть приложение .exe по нажатию кнопки в c #?

Ответы [ 5 ]

4 голосов
/ 31 марта 2012

Я думаю, что вы хотите позвонить CloseMainWindow() на Process. Это аналогично нажатию на кнопку закрытия окна, поэтому приложение может не закрыться.

Например, если пользователь отредактировал некоторый текст в окне, но не сохранил его, появится диалоговое окно «Хотите сохранить свои изменения?».

Если вы действительно хотите закрыть приложение, не смотря ни на что, вы можете использовать Kill(). Это может привести к потере данных (изменения в файл не будут сохранены), но это не может быть проблемой для вас.

1 голос
/ 06 февраля 2013

Вы должны написать под вашей кнопкой нажмите что-то вроде этого:

private void btnClose_Click(object sender, EventArgs e)
    {
        Close();
    }

Это закроет ваше текущее окно, если оно MDI child window. В противном случае приложение закроется (при условии, что у вас открыто только одно окно).

1 голос
/ 31 марта 2012

Вы запрашиваете Process.Close () ?

1 голос
/ 31 марта 2012

Вы можете использовать:

Process.Kill();

Или убить все экземпляры блокнота, которые вы можете сделать:

foreach (var process in Process.GetProcessesByName("notepad")) {
   process.Kill();
}
0 голосов
/ 31 марта 2012
    processes = Process.GetProcessesByName(procName);
    foreach (Process proc in processes)
    {
        if(proc.MainWindowTitle.equals(myTitle))
        {           
        proc.CloseMainWindow();
        proc.WaitForExit(); or use tempProc.Close();
        }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...