Модераторы: mihanik
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Введение текста в editbox IE программным способом 
:(
    Опции темы
nazkaren
Дата 22.5.2007, 09:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 22.5.2007
Где: Армения

Репутация: нет
Всего: нет



Ребята.
У меня несколько проблем, надеюсь вы поможите мне их решить.
1.
Мне надо программным способом ввести значения в editbox-ы в IE.
Я пробовал послать сообщения окну. Но это никакого эффекта не дает.
Я думаю что сообщения надо передать прямо control-ам (или я не прав?), а как - не знаю.
2.
Такая же проблема, только надо сэмуллировать Tab, Enter, некаторые shortcut-ы и тд и тп.
3.
Еще во время эмулляции ожидается загрузка страниц IE. Как узнать когда они полностью загружены что-бы продолжить работу с ними.

Скрипт я пишу в VBA. Но если у вас есть примеры на других языках, не проблема - посылайте.

PM MAIL YIM   Вверх
Genyaa
Дата 23.5.2007, 10:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Усердный
*


Профиль
Группа: Участник
Сообщений: 154
Регистрация: 25.9.2006
Где: Москва

Репутация: 2
Всего: 11



1 и 2. См. sendkeys в Help'е VBA.

3. Я лично просто делаю приостановку выполения кода с помощь Wait (точнее я использую свою функцию, но она подобна Wait)

--------------------
Всякое решение плодит новые проблемы.
PM WWW   Вверх
nazkaren
Дата 23.5.2007, 13:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 22.5.2007
Где: Армения

Репутация: нет
Всего: нет



Уважаемый Genyaa, как отправить сообщение: я знаю. У меня проблема иного рода: когда я отправляю сообщение IE, не вижу никакого эффекта, отправка WM_CHAR или WM_KEYUP, WM_KEYDOWN не заставляют IE написать хоть буковку в активный editbox.
 
За sendkeys спасибо, я иным способом решил эету задачу.

А на счет третего пункта: пожалуй я не воспользуюсь вашим методом, подожду других предложений.

PM MAIL YIM   Вверх
mihanik
Дата 24.5.2007, 07:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


-=Белый Медведь=-
****


Профиль
Группа: Комодератор
Сообщений: 4054
Регистрация: 24.4.2006
Где: г. Тверь

Репутация: 9
Всего: 109



Цитата(nazkaren @  23.5.2007,  13:06 Найти цитируемый пост)
За sendkeys спасибо, я иным способом решил эету задачу

Как?
Опиши решение!!!

И кроме того!!!
Модератор: Пожалуйста, один топик - один вопрос.


--------------------
Программистами не рождаются, - это родовая травма...
user posted imageuser posted image
PM MAIL WWW ICQ   Вверх
nazkaren
Дата 24.5.2007, 07:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 22.5.2007
Где: Армения

Репутация: нет
Всего: нет



mihanik-у

Private Declare Function FindWindow Lib "user32.dll" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function SendMessage Lib "user32.dll" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByRef lParam As Any) As Long

    Const NILL = 0&
    Const WM_SYSCOMMAND = &H112
    Const WM_CHAR = &H102
    Const WM_KEYDOWN = &H101
    Const WM_KEYUP = &H102
    Const SC_CLOSE = &HF060

    strClassName = "IEFrame" ' Internet Explorer window class name
    strCaption = "HFE: User Sign In - Microsoft Internet Explorer" ' IE Caption

    '* Determine the handle to the Calculator window.
    Handle = FindWindow(strClassName, strCaption)

    '* Post a message to Calc to end it's existence.
'    X& = SendMessage(Handle, WM_SYSCOMMAND, SC_CLOSE, NILL)

    X& = SendMessage(Handle, WM_CHAR, 65, NILL)
    X& = SendMessage(Handle, WM_KEYDOWN, 13, NILL)
    X& = SendMessage(Handle, WM_KEYUP, 13, NILL)

Дело в том Mihanik что Genyaa в сущности не ответил на мой вопрос. Я не спрашивал как отправить сообшение а как записывать текст в конкретный control - а именно: в активный editbox некоего окна IE.

А насчет разных вопросов - я сформулировал эти вопросы в одном месте, потому что думаю что они взаимосвязаны, и человек который ответит на один, сможет ответить и на две остальные.
PM MAIL YIM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Программирование, связанное с MS Office"
mihanik staruha

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами



  • Несанкционированная реклама на форуме запрещена
  • Пожалуйста, давайте своим темам осмысленный, информативный заголовок. Вопль "Помогите!" таковым не является.
  • Чем полнее и яснее Вы изложите проблему, тем быстрее мы её решим.
  • Оставляйте свои записи в "Книге отзывов о работе администрации"
  • А вот тут лежит FAQ нашего подраздела


Если Вам понравилась атмосфера форума, заходите к нам чаще!
С уважением mihanik и staruha.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Программирование, связанное с MS Office | Следующая тема »


 




[ Время генерации скрипта: 0.0436 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.