ActiveX в HTML - PullRequest
       6

ActiveX в HTML

1 голос
/ 28 сентября 2011

Мое требование - создать экземпляр объекта, используя new ActiveX() в html.

Я создал компонент COM SimpleActiveX, используя ATL. Я создал DLL SimpleActiveX.dll для того же. Для того, чтобы создать экземпляр этого компонента в HTML-файл, мне нужно зарегистрировать DLL. Поэтому я зарегистрировал dll с помощью команды regsvr32 %Path of dll%. После этого я пытаюсь создать экземпляр компонента в html-файле следующим образом:

var req;
req = new ActiveX("SimpleActiveX.Hello"); //Assume Hello as a class.
req.Hi(); //Assume that Hi() is a member function of Hello.

При этом я не могу создать объект ActiveX. HTML тоже не дает никаких ошибок. Я не знаю, делаю ли я что-то неправильно или я что-то упускаю.

Может кто-нибудь сказать, пожалуйста, правильные шаги для выполнения вышеуказанных операций.

Как мне создать dll (в данном случае я только что собрал проект ATL в Visual Studio для генерации dll)?

Что еще мне нужно сделать с DLL в случае, если мне нужно создать объект ActiveX в HTML?

В html я встретил нечто, называемое тегом <object> </object>, где мы упоминаем classid и атрибуты. Я не знаю, нужно ли мне упомянуть об этом в моем HTML-файле или нет.

Заранее спасибо за помощь.

1 Ответ

3 голосов
/ 28 сентября 2011

Чтобы создать экземпляр объекта ActiveX в JavaScript, при условии, что dll правильно зарегистрирована, вам просто нужно использовать:

var req = new ActiveXObject("SimpleActiveX.Hello");

К сожалению, я не знаю, как зарегистрировать DLL с помощью Visual Studio.

Что касается тега, он используется, когда вы хотите встроить объект непосредственно в код HTML, чтобы он создавался при загрузке документа вместо использования JavaScript.

Например:

<object id="myObject" classid="CLSID:2D360200-FFF5-11D1-8D03-00A0C959BC0A"></object>

Затем вы можете получить доступ к COM-объекту с помощью

var myObject = document.getElementById("myObject").object
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...