Невозможно загрузить shdocvw.dll или ieframe.dll в Blue Prism - PullRequest
0 голосов
/ 31 октября 2018

Я пытаюсь использовать этап кода для создания и использования COM-объекта Internet Explorer в Blue prism, например:

Dim ie as InternetExplorer
ie = new InternetExplorer

Но когда я попытался добавить внешнюю ссылку .dll, я получил ошибку «Не удалось загрузить справочную библиотеку». Я попробовал оба "shdocvw.dll" и "ieframe.dll", оба не удалось. Кто-нибудь может дать мне несколько советов?

настройка внешнего задания

Сообщение об ошибке

Другая мысль заключается в том, что когда мы создаем бизнес-объект на основе браузера (IE), Blue Prism должна была создать внутренний объект IE. Если мы сможем взаимодействовать с этим объектом на этапе кода, это тоже будет работать. Вот некоторый намек на внутренний объект IE:

Умышленно ввести неверный код JavaScript

mshtml.ihtmlwindow2 в сообщении об ошибке

Ответы [ 2 ]

0 голосов
/ 02 ноября 2018

Для внешней ссылки .dll файл .dll должен быть предварительно установлен в папке Blue Prism

C:\Program Files\Blue Prism Limited\Blue Prism Automate

Импорт .dll с абсолютным путем и и пространств имен, необходимых из файла .dll. Также вы можете создавать собственные VBO по вашему требованию.

ПРИМЕЧАНИЕ. Это может привести к ошибкам при развертывании решения в другой среде. Решение будет зависеть от ссылки .dll, если не найден, код / ​​BOT потерпит крах.

0 голосов
/ 01 ноября 2018

Самое простое решение - вообще не использовать библиотеки DLL и использовать метод Visual Basic CreateObject. У этого есть некоторые недостатки, но это должно быть сделано для большинства вещей.

Dim ie as Object = CreateObject("InternetExplorer.Application")

enter image description here

Очевидно, GetObject не работает с IE по соображениям безопасности, поэтому, если вы хотите взаимодействовать с существующим экземпляром IE, вам может потребоваться немного более креативно .

...