ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > Программирование > С/С++, C#, Delphi, .NET, Asm
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

PostMessage в соседнее окно.
  #1  
Старый 24.05.2010, 18:03
090808
Познающий
Регистрация: 15.03.2009
Сообщений: 87
Провел на форуме:
893829

Репутация: 34
Отправить сообщение для 090808 с помощью ICQ
По умолчанию PostMessage в соседнее окно.

Необходимо с помощью PostMessage отправить сочетание клавиш из переменной.

тоесть

Postmessage(h,WM_KEYDOWN,82,0);
Postmessage(h,WM_KEYDOWN,13,0);

В данным примере отправляются буквы rs
Как сделать чтобы отправляло команду например из edit1?


тоесть нужно в едит ввести буквы и чтобы эти буквы передались приложению (h)

Последний раз редактировалось 090808; 24.05.2010 в 18:40..
 
Ответить с цитированием

  #2  
Старый 24.05.2010, 18:12
Ildon
Познающий
Регистрация: 13.04.2010
Сообщений: 66
Провел на форуме:
183788

Репутация: 2
По умолчанию

Вот так и лучше через SendMessage

SendMessage(HWND, WM_SETTEXT, 0, (LPARAM)Edit1->Text.c_str());

Но еси не катит то место SendMessage пиши Пост Мессадж

Для тебя так

PostMessage(h,WM_KEYDOWN,(LPARAM)StrToInt(Edit1->Text),0);

Ну еси буквы над мне подумать

Последний раз редактировалось Ildon; 24.05.2010 в 20:47..
 
Ответить с цитированием

  #3  
Старый 24.05.2010, 18:36
090808
Познающий
Регистрация: 15.03.2009
Сообщений: 87
Провел на форуме:
893829

Репутация: 34
Отправить сообщение для 090808 с помощью ICQ
По умолчанию

Цитата:
Сообщение от Ildon  
Вот так и лучше через SendMessage

SendMessage(HWND, WM_SETTEXT, 0, (LPARAM)Edit1->Text.c_str());

Но еси не катит то место SendMessage пиши Пост Мессадж

Для тебя так

PostMessage(h,WM_KEYDOWN,(LPARAM)StrToInt(Edit1->Text),0);
Не помогло
 
Ответить с цитированием

  #4  
Старый 24.05.2010, 22:50
Gar|k
Постоянный
Регистрация: 20.03.2009
Сообщений: 564
Провел на форуме:
991929

Репутация: 395


По умолчанию

Ildon мда... 090808 если не понял Ildon тебе показывает вариант когда тебе известен HWND элемента EDIT окна в которое ты хочешь записать текст
"Edit1->Text.c_str()" указывает на то что Ildon кодит в не кошерном С++ дибилдере.

Если тебе нужно послать сообщение WM_KEYDOWN другому окну:
1. Нужно найти его хендл (FindWinodow и тд)
2. Тебе нужно прочитать текст из твоего edit-а (GetWindowTextA, GetDlgItemTextA)
3. Пощитай разницу между кодом клавиши и ASCII кодом типа r= 82 0x72 (а может есть какая таблица я хз) в общем тебе нужно знать какая буква какой код имеет на клаве.
4. В цикле отправляй сообщения другому окну // GetWindowText насколько я помню возвращает длину записанного буфера
 
Ответить с цитированием

  #5  
Старый 25.05.2010, 07:54
Ildon
Познающий
Регистрация: 13.04.2010
Сообщений: 66
Провел на форуме:
183788

Репутация: 2
По умолчанию

Цитата:
Сообщение от Gar|k  
Ildon мда... 090808 если не понял Ildon тебе показывает вариант когда тебе известен HWND элемента EDIT окна в которое ты хочешь записать текст
"Edit1->Text.c_str()" указывает на то что Ildon кодит в не кошерном С++ дибилдере.
Вот токо не надо тут на компилятор наезжать , а насчет примера ,я просто не врубился в начале что ему надо
 
Ответить с цитированием

  #6  
Старый 25.05.2010, 08:53
St0nX
Участник форума
Регистрация: 19.05.2007
Сообщений: 281
Провел на форуме:
2823587

Репутация: 106
Отправить сообщение для St0nX с помощью ICQ
По умолчанию

Что бы отправить сообщение в поле Edit другого окна надо:
Найти само окно:
Код:
HWND hd, hdEdit;
char ms[] = "Mister trololo";
hd = FindWindow(NULL,'NameWindow');
Потом сам эллемент
Код:
hdEdit = FindWindowEx( hd , 0, 'Edit','Edit'); //2 параметр имя класса 3 параметр имя элемента.
(Узнать имя и класс эллемента не своего окна можно или используя spy++ или наваять прогу с использованием GetWindow.)
Теперь отправляем
Код:
if(hdEdit!=NULL)
{
SendMessage(hdEdit, WM_SETTEXT, 0, (LPARAM)ms);
}
По идее все должно сработать.
 
Ответить с цитированием

  #7  
Старый 25.05.2010, 13:11
Ildon
Познающий
Регистрация: 13.04.2010
Сообщений: 66
Провел на форуме:
183788

Репутация: 2
По умолчанию

Да ему не текст в едит ))) Ему надо послать сочетание букв в окно
 
Ответить с цитированием

  #8  
Старый 25.05.2010, 17:10
090808
Познающий
Регистрация: 15.03.2009
Сообщений: 87
Провел на форуме:
893829

Репутация: 34
Отправить сообщение для 090808 с помощью ICQ
По умолчанию

Цитата:
Сообщение от Ildon  
Да ему не текст в едит ))) Ему надо послать сочетание букв в окно
Верно
 
Ответить с цитированием

  #9  
Старый 26.05.2010, 08:32
St0nX
Участник форума
Регистрация: 19.05.2007
Сообщений: 281
Провел на форуме:
2823587

Репутация: 106
Отправить сообщение для St0nX с помощью ICQ
По умолчанию

http://www.edgeofnowhere.cc/viewtopic.php?t=396398
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Выкупаю clickunder, pop up, ICQ окно Blade2403 Партнерки 1 04.02.2010 11:54
Java скрипт (окно , типа ловушка ) jenyavlg PHP, PERL, MySQL, JavaScript 11 04.09.2009 01:50
всплывающее окно или типа того rubik-nerubik PHP, PERL, MySQL, JavaScript 8 17.05.2009 17:20
Окно с кнопкой на Api je0n Авторские статьи 1 09.11.2006 02:03



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ