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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> пердать нажатие клавиши конкретному окну 
:(
    Опции темы
kapbepucm
Дата 19.6.2007, 08:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Ну, с блокнотом я разобрался. Но моя задача заключается в другом. Блокнот здесь я выбрал для примера, думая что ситуация похожа, оказалось не всё так просто. Оказывается, сообщение надо посылать дочернему окну на-прямую.
У меня проблема состоит в том, что я знаю Handle только главного окна. Что находится на нём- какие компоненты и каких типов мне не известно. Известно лишь то, что фокус ввода стоит в поле похожем на TextBox. В общем случае это типичное приветственное окно для входа в некую программу, где надо съэмулировать такую последовательность нажатий клавиш: [U][S][E][R][N][A][M][E][Tab][P][A][S][S][W][O][R][D][Enter]. Раньше я пользовался функцией kbd_event, но программа иногда глючит, и не делает своё окно активным, результат- запускается папка, расположенная у меня на Desktop'е с названием User (интересно почему?).
Наверное, есть только одна зацепка: если окно активизировать,то там, где будет установлен фокус ввода, надо каким-то образом извлечь Handle. Интересно, есть ли такой способ? А может есть способ, где, зная только Handle главного окна, можно выполнить поставленную задачу...

Это сообщение отредактировал(а) kapbepucm - 19.6.2007, 09:52


--------------------
(С) kapbepucm
PM MAIL Skype   Вверх
Tectoder
Дата 19.6.2007, 15:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 202
Регистрация: 13.3.2007

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



kapbepucm, а почему бы не заполнить поле функцией setwindowtext?
PM   Вверх
kapbepucm
Дата 19.6.2007, 15:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Tectoder, дело в том, что я не знаю Handle дочернего окна (если это вообще окно). Хочу сделать именно грамотную эмуляцию нажатий и отпусканий клавиш кливиатуры. Визуально, поле только напоминает TextBox.

Это сообщение отредактировал(а) kapbepucm - 19.6.2007, 15:25


--------------------
(С) kapbepucm
PM MAIL Skype   Вверх
bom
Дата 19.6.2007, 16:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 329
Регистрация: 22.2.2004
Где: Казахстан, Алматы

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



Нельзя найти "то, не знаю что" и управлять "тем, не знаю чем".

Цитата(kapbepucm @  19.6.2007,  11:22 Найти цитируемый пост)
 Раньше я пользовался функцией kbd_event, но программа иногда глючит, и не делает своё окно активным


Ищи причину глюка.
PM MAIL   Вверх
kapbepucm
Дата 19.6.2007, 16:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Причина глюка это параллельный запуск других программ. Вопрос в том, что мне нужна программа, которая может универсально работать- активно окно или нет. Вышеупомянутыми способами пробовал- но должного эффекта не наблюдал. Неужели нет такого способа посылающего некое сообщение главному окну, а окно уже само "решает", куда и что передавать дальше?

Это сообщение отредактировал(а) kapbepucm - 19.6.2007, 17:02


--------------------
(С) kapbepucm
PM MAIL Skype   Вверх
bom
Дата 19.6.2007, 18:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 329
Регистрация: 22.2.2004
Где: Казахстан, Алматы

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



Цитата(kapbepucm @  19.6.2007,  19:34 Найти цитируемый пост)
Неужели нет такого способа посылающего некое сообщение главному окну, а окно уже само "решает", куда и что передавать дальше?


Ну, если только повысить интеллектуальность окна "Ультима Онлайн" путем изменения его исходного кода smile Но это уже вопрос не для этого форума.

PM MAIL   Вверх
kapbepucm
Дата 19.6.2007, 18:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Ясно, будем продолжать искать ответ...


--------------------
(С) kapbepucm
PM MAIL Skype   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "VB6"
Akina

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

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

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

  • Литературу по VB обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • Используйте теги [code=vb][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.


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

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


 




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


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

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