Функция CoCreateInstance - работа с InternetExplorer Как с использование функции CoCreateInstance(Из ole32.dll) создать обьект InternetExplorer и зайти на wasm.ru ? Вообщем меня интересует вот это: (Пример правда на VBS) но на ассемблере Код (Text): objIE = CreateObject("InternetExplorer.Application") objIE.Visible = False objIE.Navigate "http://mail.ru/" WScript.Sleep 300 Set objForm = objIE.Document.forms("Auth") objForm.elements("Login").value = "Vasya" objForm.elements("Domain").value = "bk.ru" objForm.elements("Password").value = "111" objIE.Visible = True Или хотя бы вот это: Код (Text): objIE = CreateObject("InternetExplorer.Application") objIE.Navigate "http://mail.ru/" Если кто знает откликнитесь ...
Помогите, я новичок. Весь код даже не надо, а только вызов самих функций (Все равно я на скриптовом языке функции вызываю ), компилятор (Там fasm или masm ) - не имеет для меня значения. Пожалуйста... Да, и извините, может мне в раздел для начинающих надо. Вообщем помогите чем можете...
Спасибо конечно, но все таки можно кусочек кода на ассемблере ... Т.е. перечень функций для осуществления маленького кусочку кода: Вроде: invoke CoCreateInstance ... invoke CoInitialize ... invoke ... Т.е. описание функций с параметрами...
InternetExplorer.Application - это ProgID. Тебе нужно получить CLSID функцией CLSIDFromProgID Затем функцией CoCreateObject создать объект с таким CLSID У этого объекта запросить интерфейс IDispatch. У IDispatch тебе потребуются два метода: GetIDsOfNames, чтобы по имени метода узнать его идентификатор (DISPID), и Invoke, чтобы вызвать метод (или получить/установить свойство) по известному идентификатору.
#5 - А можно немного поподробнее. Простейший пример (только описание функций) для: Код (Text): objIE = CreateObject("InternetExplorer.Application") objIE.Navigate "http://mail.ru/"
Спасибо. Аттач интересный, я даже многое понял. Единственное что я так и не догнал - это как обратиться к свойству Document Т.е. по сути как выполнить вот эти две строчки: Код (Text): Set objForm = objIE.Document.forms("Auth") objForm.elements("Login").value = "Vasya" Остальное вроде ясно.
Вообще надо хендлить DISPID_DOCUMENTCOMPLETE, получать browser::get_Document (возвращает IHTMLDocument) потом document::get_All возвращает IHTMLElementCollection далее уже энумерейтить всю "коллекцию" либо через какой-нибудь document::get_Forms, (IHTMLFormElement::get_Elements)