реклама на сайте
подробности

 
 
> Передача данных из одной программы в другую, Программирование в Borland Bilder6
kolisnichenko_r
сообщение Nov 6 2008, 12:02
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 435
Регистрация: 12-09-07
Пользователь №: 30 482



Здравствуйте!
Как можно передать данные из одной программы в другую?
Есть одна программа, на ней поле EDIT, вводим данные. Есть другая программа, тоже поле EDIT, выводит данные, которые были введены в поле EDIT первой программы. одскажите с чего начать? Может есть где пример?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
SysRq
сообщение Nov 7 2008, 11:28
Сообщение #2


Чайник, 1 литр
****

Группа: Свой
Сообщений: 655
Регистрация: 17-05-06
Из: Moscow
Пользователь №: 17 168



Задача-то какая? Написать _две_ программы? Или одну, ту что будет управлять любой уже имеющейся?

В первом случае надо организовать обмен WM_* сообщениями, а во втором только через окна.

CODE
HWND hWnd = FindWindow("#32770", "Advanced Status"); // Ищем главное окно
if(hWnd != NULL)
{
HWND hChild = GetWindow(hWnd, GW_CHILD); // Компонент
if(hChild)
{
hChild = GetWindow(hChild, GW_HWNDNEXT); // Еще..
if(hChild)
{
hChild = GetWindow(hChild, GW_HWNDNEXT); // И еще...
if(hChild)
{
char str[255];
GetWindowText(hChild, str, 255); // Считали из него текст (уровень сигнала WiFi)
//...
Go to the top of the page
 
+Quote Post
kolisnichenko_r
сообщение Nov 7 2008, 12:56
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 435
Регистрация: 12-09-07
Пользователь №: 30 482



Цитата(SysRq @ Nov 7 2008, 15:28) *
Задача-то какая? Написать _две_ программы? Или одну, ту что будет управлять любой уже имеющейся?

Нужно писать две программы. Делаю так:
Код
  char buff[100];
  HWND hWnd=FindWindow(NULL,"Для чтения");//
if (hWnd)
{GetClassName(hWnd,buff,100);
  ShowMessage(buff);
}
  else{;}
if(HWND hWnd_edit=FindWindowEx(hWnd,NULL,"TEdit",NULL))
{ShowMessage("All OK");//
  GetClassName(hWnd_edit,buff,100);
  ShowMessage(buff);
// SetWindowText(hWnd,"ONO");// Работает
   char str[255];
   GetWindowText(hWnd_edit, str, 255);
    ShowMessage(str);
    Edit1->Text = str;
}
   else
    {ShowMessage("Error !");//
    }

Получается все работает за исключением двух строчек:
Код
ShowMessage(str);
    Edit1->Text = str;

Тоесть, извещение приходит но пустое и в Edit1 того текста который написан в другой программе тоже нету.
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 29th July 2025 - 07:59
Рейтинг@Mail.ru


Страница сгенерированна за 0.01395 секунд с 7
ELECTRONIX ©2004-2016