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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 24.03.2008, 11:37   #1
xGroupers
Заблокирован
 
Регистрация: 09.03.2008
Сообщений: 69
По умолчанию Как пользоватся второй программой

Вот я сделал первую программу project1.exe в ней есть кнопка и при нажатие на неё надо както передать комманду во вторую мою программу project2.exe надо передать сообщение ShowMessage('Всё работает!');
как это сделать ? из первой программы передать комманду во вторую ??
xGroupers вне форума Ответить с цитированием
Старый 24.03.2008, 11:40   #2
Квэнди
Старожил
 
Аватар для Квэнди
 
Регистрация: 13.12.2006
Сообщений: 3,859
По умолчанию

1. Поиск по форуму.
2. http://pblog.ru/?p=8 возмите из этой статьи нужную вам часть
ICQ не для вопросов, а для предложений. Для вопросов используйте форум
IRC канал клуба программистов|Мои статьи
Квэнди вне форума Ответить с цитированием
Старый 24.03.2008, 16:21   #3
Yurk@
Участник клуба
 
Аватар для Yurk@
 
Регистрация: 19.12.2007
Сообщений: 1,100
По умолчанию

В первой проге по кнопке делаешь:
Код:
ShellExecute(0,'Open', Project2.exe','<какой-то ключ>',nil, SW_Normal);
А во второй:
Код:
if ParamStr(1)=<укзанный ключ> then
ShowMessage('Все работает!');
На форуме: Помогаю за спасибо
ICQ\Skype: Это моё личное время ...
Yurk@ вне форума Ответить с цитированием
Старый 24.03.2008, 16:26   #4
Квэнди
Старожил
 
Аватар для Квэнди
 
Регистрация: 13.12.2006
Сообщений: 3,859
По умолчанию

Цитата:
Сообщение от Yurk@ Посмотреть сообщение
В первой проге по кнопке делаешь:
Код:
ShellExecute(0,'Open', Project2.exe','<какой-то ключ>',nil, SW_Normal);
А во второй:
Код:
if ParamStr(1)=<укзанный ключ> then
ShowMessage('Все работает!');
а если вторая давно запущена ?
ICQ не для вопросов, а для предложений. Для вопросов используйте форум
IRC канал клуба программистов|Мои статьи
Квэнди вне форума Ответить с цитированием
Старый 24.03.2008, 17:58   #5
st01en
Пользователь
 
Регистрация: 06.02.2008
Сообщений: 33
По умолчанию

Во попробовал сам по памяти, без примеров, для меня эт достижение, попровьте если что не так

Программа отправитель:

Код:
procedure Send;
var
  wnd: HWND;
  CopyData: TCopyDataStruct;
begin
  wnd := FindWindow('TReceiverForm', nil);
  CopyData.cbData := Length(Edit1.Text) + 1;
  CopyData.lpData := PChar(Edit1.Text);
  if wnd <> 0 then
    SendMessage(wnd, WM_COPYDATA, 0, LParam(@CopyData));
end;
Программа получатель:
Код:
type
  TReceiverForm = class(TForm) 
  .........
  public
    procedure ReceiveMessage(var Msg: TMessage); message WM_COPYDATA;
  .........
  end;
  .........
procedure TReceiverForm.ReceiveMessage;
var
  pCopyData: PCopyDataStruct;
begin
  pCopyData := PCopyDataStruct(msg.LParam);
  ShowMessage(pCopyData.lpData);
end;
А вообще я вроде с сообщениями разобрался, вот только никак не могу вникнуть в типы которые постоянно используется, интересно есть что-то что мне поможет?
st01en вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема со второй ОС Daeloce Операционные системы общие вопросы 1 29.06.2008 15:15
Обращение ко второй форме RIO Общие вопросы .NET 3 07.05.2008 00:48
Голосование Второй тур! zetrix Свободное общение 7 24.11.2007 08:40
уже второй день парюсь! Алёна БД в Delphi 9 16.03.2007 08:22