Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.10.2009, 09:48   #1
Alex Cones
Trust no one.
Старожил
 
Аватар для Alex Cones
 
Регистрация: 07.04.2009
Сообщений: 6,526
По умолчанию Передача строки exe (с формой (API)) ↔ exe (форма скрыта)

Что мы имеем:
1) exe с формый, созданной при помощи API
2) exe со скрытой формой.

Из 1-го нужно передать строку во второй, а затем обработанную строку передать назад.
Сначала мне вспомнился способ менять Caption у чужой формы и таким образом передать информацию, но затем пришлось отказаться от видимой формы у второго.
В данный момент у меня на ум идет только записывать 1 строку в файл, а в 2 с помощью таймера смотреть наличие этого файла. Но возникает вопрос, как 1-й программе узнать, что файл уже изменен и "его можно забирать"? Думаю это не самый разумный способ. Может есть что-то еще?

P.S. Необязательно, что-бы номер 2 работал постоянно, но желательно.
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ
GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ
Alex Cones вне форума Ответить с цитированием
Старый 04.10.2009, 09:53   #2
Lime
Форумчанин
 
Аватар для Lime
 
Регистрация: 10.02.2009
Сообщений: 815
По умолчанию

Сообщениями общатся
sendmessage
Lime вне форума Ответить с цитированием
Старый 04.10.2009, 09:58   #3
Alex Cones
Trust no one.
Старожил
 
Аватар для Alex Cones
 
Регистрация: 07.04.2009
Сообщений: 6,526
По умолчанию

Я вот и думаю, какими именно будет удобней, ведь номер 2 в принципе невидим.
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ
GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ
Alex Cones вне форума Ответить с цитированием
Старый 04.10.2009, 10:02   #4
Lime
Форумчанин
 
Аватар для Lime
 
Регистрация: 10.02.2009
Сообщений: 815
По умолчанию

Цитата:
Сообщение от Alex Cones Посмотреть сообщение
Я вот и думаю, какими именно будет удобней, ведь номер 2 в принципе невидим.
форма есть значит есть её хэндл значит есть куда отправлять.
Lime вне форума Ответить с цитированием
Старый 04.10.2009, 10:04   #5
Alex Cones
Trust no one.
Старожил
 
Аватар для Alex Cones
 
Регистрация: 07.04.2009
Сообщений: 6,526
По умолчанию

Ну хорошо, отправил я string в caption номера 2, и? А если String больше 500 знаков будет?

Передаю так: (старый как мир пример)
Код:
SetWindowText(FindWindow(nil, 'Безымянный - Блокнот'),
'Дарова, ламерюга, типа ты попал... ');
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ
GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ

Последний раз редактировалось Alex Cones; 04.10.2009 в 10:07.
Alex Cones вне форума Ответить с цитированием
Старый 04.10.2009, 10:16   #6
russian-stalker
Участник клубаДжуниор
 
Аватар для russian-stalker
 
Регистрация: 23.08.2008
Сообщений: 1,616
По умолчанию

Я видел что в некоторых программах, для их связи используется сокеты на 127.0.0.1(localhost). Удобно, быстро, функционально.
pushl $0x18E3DF6B
call ICQ
russian-stalker вне форума Ответить с цитированием
Старый 04.10.2009, 10:24   #7
Alex Cones
Trust no one.
Старожил
 
Аватар для Alex Cones
 
Регистрация: 07.04.2009
Сообщений: 6,526
По умолчанию

А поподробней можно? Сетью в Дельфе никогда не занимался.

P.S. А если объеденить способы из поста 1? Типа №1 записала в файл и послала в кепшн №2 сообщение "читай", та прочла, изменила то, что нужно и послала номеру 1 сообщение "готово".
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ
GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ
Alex Cones вне форума Ответить с цитированием
Старый 04.10.2009, 12:48   #8
Lime
Форумчанин
 
Аватар для Lime
 
Регистрация: 10.02.2009
Сообщений: 815
По умолчанию

Цитата:
Сообщение от Alex Cones Посмотреть сообщение
Ну хорошо, отправил я string в caption номера 2, и? А если String больше 500 знаков будет?

Передаю так: (старый как мир пример)
Код:
SetWindowText(FindWindow(nil, 'Безымянный - Блокнот'),
'Дарова, ламерюга, типа ты попал... ');

Я про Caption формы ничего не говорл , общение происходит путём отправики сообщений другому окну а не изменением его заголовка. Менять можно не только заголовок раз уж на то пошло но и любые другие значения компонентов.(многие)

sendmessage - туда.там свои "камни и трудности" , но имхо лучший вариант - правда я не реализовывал но уверен в сети должны быть примеры)
Lime вне форума Ответить с цитированием
Старый 04.10.2009, 13:01   #9
Alex Cones
Trust no one.
Старожил
 
Аватар для Alex Cones
 
Регистрация: 07.04.2009
Сообщений: 6,526
По умолчанию

Хм... Что-то вроде разместить на 2 мемо и туда отправлять? (Кстати, №2 тоже, наверное будет создан на API)
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ
GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ
Alex Cones вне форума Ответить с цитированием
Старый 04.10.2009, 13:34   #10
russian-stalker
Участник клубаДжуниор
 
Аватар для russian-stalker
 
Регистрация: 23.08.2008
Сообщений: 1,616
По умолчанию

Вот пример:
http://dump.ru/file/3522505
Сначала запускай test2 и жми создать, потом test1 и подключится. И жми отправить. В Test2 передастся текст из Memo1, преобразуется и передастся обратно в Memo2.
pushl $0x18E3DF6B
call ICQ
russian-stalker вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Передача переменной в EXE Evgen1503 Общие вопросы Delphi 6 03.05.2010 15:56
Узнать скрыта ли форма unit-85 Общие вопросы Delphi 15 25.08.2009 09:38
из .exe TBitMap передать в DLL(форма) lexaltd Мультимедиа в Delphi 13 14.07.2009 17:47
чтение из одного exe файла, и запись в другой exe inndim Общие вопросы Delphi 2 04.02.2009 15:23
Передача файлов(exe) при помощи TCPServer и TCPClient Air Работа с сетью в Delphi 6 26.12.2008 23:26