Ошибка ком при попытке автоматического закрытия браузера иногда - PullRequest
0 голосов
/ 06 октября 2009

Я пытаюсь закрыть свой браузер в C #, используя следующий код:

private void KillIE()
    {
        ShellWindows winShells = new ShellWindowsClass();
        foreach (InternetExplorer Browser in winShells )
        {
            Browser.Quit();
        }
    }

Иногда это работает, но сегодня это не так, и я не могу заставить его работать. Теперь все, что я получаю, это следующее сообщение.

Ошибка HRESULT E_FAIL была возвращена после вызова COM-компонента.

Кто-нибудь знает, почему это происходит?

1 Ответ

0 голосов
/ 06 октября 2009

Использование класса Process может быть обходным путем, и это определенно ".NET-способ" сделать это.

using System.Diagnostics;

foreach (Process proc In Process.GetProcessesByName("iexplorer.exe"))
{
    // The nice way
    proc.CloseMainWindow();

    // The hard way
    proc.Kill();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...