Сначала создайте компонент COM, вставьте двойной интерфейс и реализуйте следующие три метода на этом интерфейсе:
Stdmethodimpctest :: test (void) // Нет входных и выходных параметров {// todo: добавить код реализации Messagebox (null, L ", L" Test ", MB_OK); returns_ok;} stdmethodimpctest :: test1 (bstra1) // Существует параметр ввода строки {// todo: добавить код реализации Messagebox (null, a1, l ", тест", mb_ok); return_ok;} stdmethodimpct :: test3 (bStr* a1) // Существует adderate lepretame leptaite leptaite leptaite leptaite leptaite lepetate leptaite leptaite leptaite leptaite: MessageBox (NULL, L "Test3", L "Test", MB_OK);*A1 = :: Sysallocstring (L "Fenghuo Три месяца семейных букв стоят десять тысяч золотых"); return_ok;}Приведенные выше три метода в COM демонстрируют три ситуации: нет входных и выходных параметров, один входной параметр и один выходной параметр. После составления программы используйте REGSVR32 для регистрации компонента в системе, а затем вы можете использовать метод компонента COM в IE с JavaScript. Есть две ситуации для использования, примеры следующие:
1. напрямую вызовите метод COM
Создайте HTML -текст и введите следующее:
<html> <Head> <title> Пример метода для вызова компонента com </title> <script language = "javascript"> document.write ("<hr>") var xml = new activexobject ("atldll.test.1") xml.test () xml.test1 ("pass parameters to the method and calm method. Параметры из Method Document.Write ("str"+str) document.write ("<hr>") </script> </head> <body> Продемонстрировать метод для вызова компонента COM в программе сценария IE </body> </html>2. Вызовите метод COM в функции JavaScript
Создайте HTML -текст и введите следующее:
<html> <Head> <Title> Active Object Donghailin </title> <script type = "text/javascript"> функция Displaymessage () {document.write ("<hr>") var xml = new activexobject ("atldll.test.1") xml.test () xml.test1 ("Передача строки string. // возвращать строку из com Component Document.Write ("str"+str) document.write ("<hr>")} </script> </head> <body> <form> <input type = "value =" Щелкните меня! " onclick = "displaymessage ()"> </form> </body> </html>Обратите внимание, что написанный компонент COM предназначен для других системных вызовов, поэтому строка ввода и выходного параметра должна быть типа BSTR.
3. Методы установить свойства компонента Com
Свойства первого набора в компоненте COM. Добавить переменные атрибута в класс интерфейса
BSTR M_BSTR;
Щелкните правой кнопкой мыши интерфейс и выберите «Разрушение» -> «Добавить атрибуты» введите тип параметра «BSTR» в «Тип атрибута ввода» в «Добавить атрибутный мастер, введите« BST »в« Имя атрибута »и введите« BSTR ».
Stdmethodimp ctest :: get_bstr (bstr * pval) {// todo: добавить код реализации здесь * pval = m_bstr; вернуть s_ok; } Stdmethodimp ctest :: put_bstr (bstr newval) {// todo: добавить код реализации здесь m_bstr = newval; MessageBox (NULL, M_BSTR, L "Тест атрибута", MB_OK); вернуть s_ok; }Следующий код демонстрирует настройку и получение свойств в сценарии JavaScript IE.
<html> <Head> <Title> Active Object Donghailin </title> <script type = "text/javascript"> функция Displaymessage () {document.write ("<hr>") var xml = new Activexobject ("atldll.test.1") xml.BSTR = "Стриганое сценарий в саду не может заблокировать красное апрель. C ++ IS put_bstr (...) document.write («возвращаемое значение свойства:»+xml.bstr) // Значение свойства получено в C ++ get_bstr (variable pointer) document.write ("<hr>")} </script> </head> <body> <table align = width = 50> <form> <input type = "value =" clake> " onclick = "displaymessage ()"> </form> </table> </body> </html>Вышеупомянутый метод простой реализации использования компонентов COM в JavaScript - это весь контент, которым я поделился с вами. Я надеюсь, что вы можете дать вам ссылку, и я надеюсь, что вы сможете поддержать Wulin.com больше.