Наше приложение обычно использовало элемент управления ActiveX для загрузки и установки нашего клиента в IE (XP и ранее), однако по мере того, как наша пользовательская база смещается в сторону большего количества компьютеров с Vista с включенным «Защищенным режимом», мы должны провести расследование.
Так что, забегая вперед, стоит ли пытаться использовать API защищенного режима? Приведет ли это к потоку диалоговых окон и прав администратора, чтобы делать то, что нужно нашему приложению (запись в некоторые локальные файловые места, доступ к некоторым другим приложениям и т. д.)?
Я наполовину склонен просто добавить приложение-установщик, не основанное на браузере, которое при необходимости будет выполнять грязную работу по загрузке и установке клиента ... его нужно будет установить только один раз, а в крупных корпоративных структурах это может быть вытолкнут ОНО.
Есть ли еще какие-то идеи, которые мне не хватает?
Это также не отдельное приложение: это (назовем это) часть «административного пользователя» ... другие части клиента просто флэш-память, но для определенных функций мы должны взаимодействовать с ОС.

Вы проверяли Microsoft Развертывание ClickOnce?
Если я правильно помню, вы можете встроить манифесты, которые помогут автоматически работать с защищенными режимами, избавив вас от головной боли с API.
Я считаю, что ClickOnce ориентирован на то же, для чего был разработан ваш установщик ActiveX.
Поскольку вы говорите, что ваш ИТ-отдел может это продвинуть, я предполагаю, что вы могли бы использовать и такую технологию.
Даже если вы можете не писать приложения в .NET CLR, вы можете использовать Visual Studio для создания этих манифестов и установщиков.
Этот клиент - настольное приложение, а не какое-то программное обеспечение, работающее внутри браузера? В этом случае, пожалуйста, просто предоставьте обычное приложение-установщик для загрузки. По моему личному опыту работы с установщиками, размещаемыми в браузере, они просто сбивают с толку, а те немногие, что я видел, в некотором роде казались плохо закодированными.
Если вы используете установщик на основе MSI, я уверен, что многие администраторы домена Windows тоже полюбят вас, поскольку у Microsoft есть инструменты для удаленного развертывания установок на основе MSI на больших наборах машин.
Гораздо лучше сделать это правильно, чем откладывать дальше. Vista - это способ Microsoft сказать, что они больше не позволяют людям игнорировать проблемы безопасности и поощрять людей обновлять свой код.
Я уверен, что другие пользователи здесь смогут указать, что вы знакомы с некоторыми передовыми практиками MSDN по написанию элементов управления ActiveX.
Спасибо за ответы .... Я должен добавить, что наш клиент на самом деле является исполняемым файлом, созданным вне мира Windows, поэтому единственный установщик, который действительно имеет значение, - это программа-загрузчик ...