Установка новой версии элемента управления ActiveX в моем веб-приложении - PullRequest
0 голосов
/ 07 января 2011

Мне было поручено обновить и установить новую версию старого элемента управления ActiveX в нашем веб-приложении Aspx (радость!).Фактическое обновление довольно простое, но установка вызывает у меня головную боль.Вот что я попробовал:

  • В редакторе VB6 получите свойства проекта ActiveX и снимите флажок «автоинкремент» на вкладке «Создать».
  • Установитьверсия до 1.0.12
  • Создайте новую CAB с помощью мастера Package & Deployment.
  • Скопируйте эту CAB на мой сайт.

Затем в самом Aspx яобновите версию activeX следующим образом:

Me.Page.Header.Controls.Add(New LiteralControl(String.Format("<div style=DISPLAY:none'><object id='PrtLabel' codebase='{0}' classid='CLSID:AB61148E-D4B5-4D4B-8867-9E4CE8229B5E' viewastext></object></div>", "PrtLabel.CAB#version=1,0,0,12")))

После этого я удаляю файлы prtlabel.dll и prtlabel.inf из папки «c: \ windows \loaded program files».

Проблема в том, что когда я затем захожу на веб-страницу, и она просит меня установить ActiveX, она на самом деле этого не делает (хотя сообщение об ошибке не появляется).Когда я возвращаюсь в папку «c: \ windows \ загруженные программные файлы», туда скопирован ТОЛЬКО файл prtlabel.inf, а НЕ файл prtlabel.dll.

Существует ли специальная процедура для установкиновая версия элемента управления ActiveX на вашем сайте?

Спасибо

Сэм

Ответы [ 2 ]

1 голос
/ 08 января 2011

Сравнить содержимое оригинальных и новых кабинетных файлов. Отсутствуют ли файлы?

Возможно, вы захотите сделать различие для оригинальных и новых файлов inf. Производил ли PDW разумный инф?

Это может быть связано с тем, что ваш элемент ActiveX не помечен как безопасный для сценариев перед установкой на клиентский ПК.

0 голосов
/ 18 января 2011

Ну, как всегда, дьявол кроется в деталях.Оказалось, что в разметке HTML вам нужно было не только изменить версию, но также и classid ..., который можно найти внутри нового файла CAB.

Me.Page.Header.Controls.Add(New LiteralControl(String.Format("<div style=DISPLAY:none'><object id='PrtLabel' codebase='{0}' classid='**CLSID:AB61148E-D4B5-4D4B-8867-9E4CE8229B5E**' viewastext></object></div>", "PrtLabel.CAB#version=1,0,0,12")))
...