_>Если подробнее, то IE7-8 запускают отдельные закладки в отдельных процессах. Наш плагин должен использовать общие ресурсы. Достигается это тем, что первый стартанувший обявляет себя RemotingService, а остальные соотв. клиентами. Поскольку жизненный цикл процесса остаётся на совести IE, значит верить здесь нельзя ни во что — процесс может прибиться в любую секунду. Остаётся открытым вопрос корректного закрытия использованых Mutex, каналов связи для Remoting и подключённых RemoteEventHandlers. Есть подозрения, что всё может дурно закончится, поскольку OnQuit у окна-плагина не вызывается никогда.
Вообще-то, получить уведомление об уничтожении любого процесса в любом случае документировано можно только в драйвере, в приложении ты никогда не сможешь узнать о том, что его сейчас кто-то убивает и уж тем более не успеешь ничего сделать перед этим. Ну это к тому, что если реально надо, то дорога к написанию драйвера и всем связанным с этим проблемам. Но действительно ли оно нужно? К слову сказать, объекты синхронизации типа мутексы (как и любые другие объекты ядра) автоматически и корректно уничтожаются в момент закрытия последнего хендла. Т.е. если каждый из "твоих" процессов держит хендл на мутекс, то вообще-то ничего страшного, — мутекс будет автоматически уничтожен при убийстве последнего "твоего" процесса. Полагаю, что с RemoteEventHandlers примерно такая же штука, потому что в итоге всё базируется на примитивах ядра...