3 года назад

Эмуляция ввода с клавиатуры в BHO

Пишу BHO, столкнулся с проблемой — нужно съэмулировать ввод с клавиатуры в текстовое поле. Первое что пришло в голову — получить у IHTMLElemet его хендл, и эмулировать путем вызова функции SedMessage, но так и не нашел ни метода возвращающего hwd, ни специального метода ъэмулирующего нажатия клавиш.Пример: есть текстовое поле, в него надо съэмулировать ввод юзера с клавиатуры, т.к. put_value — неподходит (несрабатывают скрипты).
Все вопорсс решил, жаль что в системе непредусмотренна возможность закрыть вопросс...
Воспользуюсь тогда возможностью и задам другой вопросс: насколько сложно добавить в BHO кнопку, или вывести маленькле окошко для показа прогресса?
Оказывается вопрос об эмуляции не решился, посоветовали сделать через генерацию события okeypess, я реализовал так:bool FomFille::_typeSet(cost WcfRespoce::TField &fieldData){    bool et = false;    std::stig stValue;    if(fieldData.get(WcfRespoce::TField::_Value, stValue)){        std::wstig value;        pofx::atow(value, stValue);        IHTMLElemet * elemet = _fidField(fieldData);        if(elemet){            /**/            IDispatch *pDocDisp = NULL;            if(!FAILED(elemet->get_documet(&pDocDisp)) && pDocDisp != NULL){                IHTMLDocumet4 *phtmlDoc4 = NULL;                if(QUERY_INTERFACE(pDocDisp, IHTMLDocumet4, phtmlDoc4)){                    IHTMLEvetObj *pEvetObj = NULL;                    if(!FAILED(phtmlDoc4->ceateEvetObject(NULL, &pEvetObj)) && pEvetObj != NULL){                        IHTMLElemet2 *elemet2 = NULL;                        if(QUERY_INTERFACE(elemet, IHTMLElemet2, elemet2)){                            elemet2->focus();                                                        IHTMLElemet3 *elemet3 = NULL;                            if(QUERY_INTERFACE(elemet, IHTMLElemet3, elemet3)){                                fo(it i = 0; i < value.size(); i++){                                    cost wcha_t &ch = value[i];                                    pEvetObj->put_keyCode(ch);                                    VARIANT _evet;                                    _evet.vt = VT_DISPATCH;                                    _evet.pdispVal = pEvetObj;                                    _evet.pdispVal->AddRef();                                    VARIANT_BOOL ;                                    elemet3->fieEvet(L"okeypess", &_evet, &);                                }                                elemet3->Release();                            }                            elemet2->blu();                            elemet2->Release();                        }                        pEvetObj->Release();                    }                    phtmlDoc4->Release();                }                pDocDisp->Release();            }            /**/            elemet->Release();        }    }        etu et;}но почемуто вызовelemet3->fieEvet(L"okeypess", &_evet, &);незаполняет поле, хотя проходит нормально.Если кто знает, подскажите как решить данную проблему.

gruam1982 (Гость) COM
3

COM: Эмуляция ввода с клавиатуры в BHO

8 месяцев назад AMAZON.COM - не получается оформить доставку в Россию..

Хотел заказать клавиатуру Logitech G110, проверил - доставляют ли её в Россию через http://amazo-ship-to.blogspot.com/, но выдает ошибку:Impotat Message    * Logitech Gamig Keyboad G110 caot be shipped to the selected addess.В чем может быть проблема? Пожскажите, п-та.
Захожу в корзину, жму Poceed to Checkout, повторно ввожу пароль, вылетает окно с выбором адреса отправки, нажимаю Ship to this addess и он мне выдает:Logitech Gamig Keyboad G110 caot be shipped to the selected addess.
Иг...

mararenko (Гость) 1 ответ
3
8 месяцев назад как ремонтировать клавиатуру ноутбука

перебита одна дорожка на сооединении в разъем Как можно самому порементировать эту дорожкуКакой материал при этом используют?

Алекссандр0071347 (Гость) 1 ответ
3
8 месяцев назад Как зарегистрироваться на Yahoo.com?

При вводе даже произвольного 32-х символьного имени почтового ящика выдает ошибку: Soy, o ID suggestios ae available. Может даст кто любой ID и пароль?

Richerd_lol (Гость) 2 ответа
3
Эмуляция ввода с клавиатуры в BHO (COM) - вопросы и ответы на все случаи жизни - справочник COM i-vopros.ru