Создание объекта regasm'ed в javascript

По причинам, в которые я не буду вдаваться, мне нужно создать объект из .NET dll в javascript. Браузер, который я использую, - это какая-то нелепая проприетарная вещь, но это означает, что у него нет настроек безопасности, так что я на 100%, что проблема не в этом, пока все не начали вмешиваться в настройки IE ActiveX.

Я нашел .dll, который содержал нужный мне класс, и перекомпилировал его. Я отследил его CLSID в своем реестре, просто чтобы убедиться, что все прошло и имена библиотек остались прежними.

Итак, теперь я вызываю new ActiveXObject(), используя его ProgID в Javascript, и мой try-catch возвращает «Сервер автоматизации не может создать объект». Любой другой объект, который я пытаюсь создать, работает нормально, только не этот.

Я успешно использовал этот класс в Visual Basic, но верхний комитет решил, что вместо красиво упакованного .EXE им нужно веб-приложение, которое запускается в этом их браузере (я думаю, чтобы оправдать трату всех этих денег на лицензию на это).

Итак, что я забыл сделать? Какая правильная цепочка событий должна иметь место для успешного создания объекта из .NET dll в JavaScript?


person NickGlowsinDark    schedule 01.04.2014    source источник
comment
Вы забыли опубликовать код   -  person mplungjan    schedule 01.04.2014
comment
Проблема не в коде, а в процессе. Я обнаружил, что если я использую тег ‹object›, я могу создать объект, но не могу получить доступ к его методам или свойствам. Что-то о том, как я пытался сделать его COM-доступным; это все, что мне нужно прояснить.   -  person NickGlowsinDark    schedule 01.04.2014


Ответы (1)


Не могли бы вы

  1. используйте отражатель (например, ilspy) а) если он не запутан

  2. декомпилировать библиотеку

  3. перенести методы / функции в библиотеку JavaScript? Возможно, вы сможете использовать такой инструмент, как JSil, чтобы помочь вам преобразовать этот код, если вы не знакомы с базой кода библиотеки.

person mg3    schedule 20.10.2016