ActiveX Control не удается зарегистрироваться

1

Я создал элемент управления ActiveX, который будет печатать документ на специальном принтере (при условии, что пользователь использует IE, конечно). Управление работает отлично, когда я вручную регистрирую его с помощью regasm/codebase C:\path-to-dll. Следующим шагом будет автоматическая установка, вставив на мою веб-страницу следующее:

<object name="MyPrinter" style="display: none;" id="MyPrinter" classid="CLSID:1F668100-532A-4077-BEDE-1610AF2CC6DF" codebase="@Url.Content("~/Cabinets/MyPrinter.cab")"></object>

При посещении страницы IE запрашивает установку элемента управления. После установки, когда я пытаюсь использовать элемент управления, я получаю классический "Сервер автоматизации не может создать объект".

Я создал файл CAB с помощью iexpress.exe. Файл.msi был создан с помощью проекта InstallShield. Я использую Visual Studio 2013.

Буду признателен за любую оказанную помощь.

Благодарю.

  • 1
    Вы должны создать установщик MSI для Active X. Установщик MSI будет инкапсулирован в файл cab вместе с файлом inf, чтобы указать метод извлечения.
Теги:
internet-explorer
activex

1 ответ

1

Короткий ответ на вашу проблему состоял бы в том, чтобы проверить:

  • dll подписаны с использованием коданого сертификата
  • Установлен установщик msi с использованием коданого сертификата
  • файл cab, содержащий установщик msi, подписан с использованием коданого сертификата
  • ссылка на файл кабины - https://somewhere/within/you/website/my.cab
  • установка кабины напрямую не использует msiexec, а вызывает некоторые exe в кабине

Для более подробного ознакомления с этим ответом.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню