Ошибка Interop Forms Toolkit DLL и «Класс не поддерживает автоматизацию или не поддерживает ожидаемый интерфейс» - PullRequest
0 голосов
/ 19 июня 2010

У меня есть приложение .NET WinForms, которое я преобразовал в COM dll с помощью Interop Forms Toolkit 2.1.В проекте установки приложения для моего файла tlb, а также для файла Microsoft.InteropFormTools.tlb установлено значение Зарегистрировать как vsdrpCOM.Предварительные условия для этого проекта - убедиться, что установщик Windows 3.1, .NET Framework 3.5 с пакетом обновления 1 (SP1) и распространяемый пакет Microsoft Interop Forms 2.0a установлены.

Когда я запускаю это локально на Windows XP с обоими VisualStudio 2010 и Visual Studio 6 установлены, все работает отлично.Однако на этом компьютере с Windows XP я получаю сообщение об ошибке: «Класс не поддерживает автоматизацию или не поддерживает ожидаемый интерфейс».

Есть идеи?

Ответы [ 2 ]

2 голосов
/ 22 июня 2010

Я понял. Для тех из вас, кто сталкивается с тем же, сделайте следующее:

  1. Перейдите в Visual Studio 2005, 2008 или 2010 (я использовал 2010) и создайте форму взаимодействия.
  2. Затем перейдите в Visual Basic 6. Если на вашу библиотеку еще нет ссылок, обратитесь к библиотека.
  3. Создайте свой исполняемый файл VB6.
  4. Вернитесь в Visual Studio (версия .NET) и соберите только свой установщик. Таким образом, установщик и VB6 имеют одинаковый файл .tlb

Ты в порядке. Спасибо за предложение, Крис!

0 голосов
/ 21 июня 2010

У вас есть RegAsm сборка (см. stackoverflow для получения дополнительной информации ) на компьютере, на котором вы хотите установить приложение. Сборка также должна находиться в каталоге, в котором выполняется приложение VB6, или установлена ​​в GAC .

.
...