Как вы развертываете элемент управления ActiveX для проекта VS2008?

Каковы действия по развертыванию проекта, созданного в VS2008 (формы Windows и C#), в качестве элемента управления ActiveX, размещенного в ie? У меня есть проект для загрузки файлов, который я хочу разместить на веб-странице, по которой пользователи могут перейти, нажмите "доверять этому активному элементу управления x", и приложение будет запущено на странице в браузере, как Java-приложение.

Чтобы быть ясным, я не ищу ClickOnce (это установщик), и я не хочу, чтобы пользователь должен был изменить свою безопасность.Net или добавить доверенный сайт (так что просто поместив файл.dll в тег OBJECT не работает). Нужна ли мне цифровая подпись, сертификат? Я нашел ссылки на это, но нет пошагового руководства к нему (как я получил для Java).

Какие-либо предложения? Казалось, что это будет самая легкая часть проекта, но оказалось, что он самый тяжелый, я не могу добиться успеха.

Спасибо Сэм

2 ответа

Решение

И, к сожалению, ответ заключается в том, что "элементы управления ActiveX".net не похожи на элементы управления COM activeX (VB6), даже если вы сделаете элемент управления.net видимым, вы не сможете зарегистрировать его в ОС таким же образом. Что вам нужно сделать, это:

1) Создайте файл.net dll. 2) Создайте exe-программу установки (я сделал это с помощью InstallShield, похоже, это можно сделать и в VS). 3) Упакуйте этот установщик в файл cab. 4) Укажите этот файл cab в IE.

Это приводит к тому, что в IE выпадает небольшое подтверждение "activeX", затем появляется "Вы доверяете этому приложению", затем UAC (vista/w7) и затем вы запускаете обычный процесс установки приложения: окно установщика подходит, подтвердите, выберите установить каталог. После этого ваш элемент управления появится на странице в IE.

В COM он работал так, как только вы делали маленький выпадающий список подтверждения ActiveX (и UAC), приложение просто запускалось

Теперь, выше, только если вам нужно / хотите, чтобы он был.Net 2.0 совместимым. Если вы не против совместимости только с 3.0 или выше, вы можете сделать приложение XBAP:

Какова план действий Microsoft в браузерных приложениях? Silverlight, ClickOnce, ActiveX, библиотеки DLL

И вы даже можете просто взять свою.Net dll, которую вы потратили последние 3 недели, и научиться делать (frick) и вставить ее в приложение WPF:

Как поместить пользовательский элемент управления Windows Forms в приложение WPF?

Надеюсь, что это помогает другим. Сэм

Мы используем AX control в двух формах:

  1. CAB-файл. Процесс установки, как вы описали в вопросе. Вам нужен контроль подписи, упакуйте его в CAB и подпишите файл CAB. Более подробную информацию вы можете найти здесь: Упаковка ActiveX Controls.

  2. Автономный установщик. MSI-файл для пользователей без прав администратора для ручной установки.

Другие вопросы по тегам