IPB
ЛогинПароль:

> Внимание!

1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

> Сообщение от одного приложения - другому, С++ Builder 6
сообщение
Сообщение #1


Бывалый
***

Группа: Пользователи
Сообщений: 233
Пол: Женский
Реальное имя: Dasha

Репутация: -  0  +


Здравствуйте!
Моя задача такова:
Нужно создать 2 приложения, одно из которых посылает оконное
соообщение, содержащее информацию о типе, параметрах, положении
фигуры; второе - принимает сообщение и отображает фигуру на экране
(эллипс, прямоугольник, многоугольник).

В принципе, программа практически готова. Единственно что она виснет
после передачи сообщения, причем сначала основное приложение %)
Прикрепленный файл  mes.rar ( 30.8 килобайт ) Кол-во скачиваний: 348

Посмотрите пожалуйста, может подскажете что-нибудь...)
Плюс там сделан 3-ей фигурой треугольник...как лучше сделать многоугольник?

спасибо)


--------------------
irreparabilium felix olivio rerum
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Гость






Ты передаешь данные неправильно. Вот так нужно:
void __fastcall TForm1::Button3Click(TObject *Sender)
{
COPYDATASTRUCT C;

int* t = new int[type*2+1];
t[0]=type;

int k = 1;
for (int i=0; i<type; i++) {
t[k++]=pl[i].x;
t[k++]=pl[i].y;
}

C.cbData=sizeof(int)*(2*type+1); // Здесь тоже внимательнее !!!
C.lpData=(void*)t;

// Зачем здесь надо передавать хендл окна, я не понимаю... Все равно он не используется.
SendMessage(FindWindow(0,"App2"), WM_COPYDATA, (WPARAM) Form1->WindowHandle, (LPARAM) &C);
}

Ну, и принимать тоже соответственно:
...
Canvas->Pen->Mode=pmCopy;

int k=1;
for (int i=0; i<a[0]; i++) {
pl[i].x = a[k++];
pl[i].y = a[k++];
}
Canvas->Polygon(pl,a[0]);
...
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 3.05.2024 17:02
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name