Компонент ActiveX не может создать объект - PullRequest
3 голосов
/ 21 февраля 2011

Использование Windows 7 64-bit. Я получаю сообщение об ошибке «ActiveX компонент не может создать объект». Все работало хорошо под WinXp. Я вошел в систему как администратор. ActiveX является 32-разрядным компонентом.

Я могу получить доступ к компоненту ActiveX (с помощью CreateObject) без ошибок из программы vb.

Но когда я загружаю свою страницу asp с помощью IE8, часть скрипта vb выдает ошибку при попытке выполнить оператор CreateObject.

Сначала я думал, что пользователю нужны повышенные привилегии, но теперь кажется, что у vbs нет прав доступа к компоненту ActiveX. Я также читал, что 64-разрядный интерпретатор VBS не может выполнить 32-разрядный компонент ActiveX.

1 Ответ

1 голос
/ 28 февраля 2011

ActiveX компонент является DLL. 64-битный хост-процесс не может загрузить 32-битную DLL и наоборот. Поэтому в первую очередь вам необходимо решить эту проблему, а затем подойти к вопросам безопасности (если они сохраняются).

Есть способ загрузить 32-битный ActiveX из 64-битного процесса, создав сервер outproc, но я не знаю подробностей.

...