Регистрация бесплатная COM, VBScript на C # dll - PullRequest
0 голосов
/ 13 сентября 2010

Я пытаюсь заставить стороннее приложение (hMailServer) использовать мою библиотеку C #.Они поддерживают сторонние библиотеки с использованием хуков VBScript.У меня все работает нормально, используя COM с полной регистрацией, но теперь я хочу использовать бесплатную регистрацию.

Я изменил манифест hMailServer.exe и добавил манифест в свою библиотеку C #.Теперь служба hMailServer запускается просто отлично, а трассировка SxS показывает, что библиотека найдена.Если я пренебрегаю созданием манифеста библиотеки C #, я получаю сообщение об ошибке «Windows не может запустить службу hMailServer на локальном компьютере ... из-за неправильной конфигурации рядом», а sxstrace выдает ошибки, поэтому я знаю, что манифесты в порядке.Однако события VBScript не запускаются со следующей ошибкой:

Ошибка сценария: Источник (ноль) - Ошибка: 8013101B - Описание (ноль) - Строка: 2 Столбец: 1 - Код (ноль)

Первые две строки сценария VB6 просто читаются:

Dim oHandlers
Set oHandlers = CreateObject("hMailServerPlugins.EventHandlers")

(hMailServerPlugins.EventHandlers, очевидно, является именем моего видимого COM-класса)

Какупомянуто, все отлично работает с регистрацией COM.Есть идеи, что мне не хватает?

1 Ответ

2 голосов
/ 01 августа 2011

Это может быть немного поздно, но я видел эту ошибку, если вы смешали версии .Net Framework.Если вы сначала развернули CLR меньшей версии, а затем попытаетесь создать COM-объект C #, используя более новую платформу, после сбоя факта с этим исключением.

...