Из того, что вы говорите (возможно, я неправильно прочитал), только при запуске GTalk это должно убить IE, после этого IE может быть запущен. Может ли быть запущено несколько экземпляров GTalk?
Вы управляете кодом GTalk? Похоже, это лучше всего реализовать в процедуре запуска GTalk.
Если нет, то @ peSHIr лучше всего подойдет для проверки того, обнаружен ли процесс GTalk.
Однако, даже если можно запустить только один экземпляр GTalk, вам нужно будет вырваться из кода, который IE убивает при первом запуске (возможно, хранит идентификатор процесса GTalk), а затем периодически проверять (возможно, используя таймер) процесс GTalk запущен, и если нет (или если он есть, но с другим идентификатором процесса), вы снова запустите код уничтожения IE
Редактировать: простой пример использования таймера
Обратите внимание, что этот объект таймера является одноразовым,
Вот быстрый пример;
//in startup code...
timer = new System.Threading.Timer(CheckProcessAndKillIeIfNeedBe, null, 0L, (long)TimeSpan.FromMinutes(1).TotalMilliseconds);
//some method elsewhere
public void CheckProccessAndKillIeIfNeedBe(object state)
{
//do the process check and kill IE if conditions are met
}
null = состояние, 0L означает выполнение сейчас, а последний параметр - ваш интервал в миллисекундах для частоты, с которой это должно выполняться