странное исключение в веб-сервисе ASP.NET при работе на IIS - PullRequest
0 голосов
/ 22 декабря 2011

У меня какая-то странная проблема.Я занимаюсь разработкой сложной сети веб-сервисов, в которой используется VB6 .dll.В моем предыдущем посте у меня были некоторые проблемы с DLL, но мы их решили.

Итак, новая проблема: Когда я отлаживаю свой сервис (те, которые используют dll VB6) на сервере разработки из Visual Studio - все работает нормально, проблема начинается, когда я публикую свой сервис в IIS (я попробовал свойместный IIS).После этого, когда я вызываю метод .dll (как я понимаю, мне нужно вызывать его по ссылке - и это то, что говорит мне компилятор), я получаю исключение:

"System.Runtime.InteropServices.COMException (0x800A000D): Несоответствие типов при ... "

На самом деле здесь происходит в третьей строке:

Object s = (Object)OrderId;
Object s1 = (Object)lines.Length;
proxy.OrderRead(ref s, ref s1);

OrderId и Legth являются целыми числами.

Как я понимаю, это исключение из библиотеки DLL из vb6: /

В чем может быть проблема?Почему он запускается при отладке, но не работает на IIS?

1 Ответ

0 голосов
/ 22 декабря 2011

При отладке в vb6 IDE зарегистрирует dll для вас.После публикации вы можете зарегистрировать свою vb6 dll на сервере.Откройте командную строку и перейдите в расположение библиотеки DLL и выполните команду regsvr32 myvb6.dll.

Также проверьте эти настройки.http://support.microsoft.com/kb/281630

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...