Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.07.18;
Скачать: CL | DM;

Вниз

Передача строки другой копии приложения   Найти похожие ветки 

 
P.N.P. ©   (2005-07-03 00:21) [0]

Задача такая :
запретить запуск более 1 копии приложения одновременно, при этом
вторая копия должна передать нек. параметры первой запущенной
копии (путь к файлу, например)
Делаю передачу так:

PostMessage(Handle1,fpr_message,Handle,Integer(PAnsiChar(ds1)))

Handle1 - хэндл первой копии, ds1 - собственно строка.
Это сообщение принимается первой копией в Application.OnMessage:

...
var
 s:string;
begin
 if Msg.message = fpr_message then
 begin
     s:=StrPas(PAnsiChar(Msg.lParam));
...

Но почему-то s всегда ="".
Никак не могу догнать - почему?


 
Просто Джо ©   (2005-07-03 00:24) [1]

Почему? Потому что адрес - в разных адресных пространствах. Используй посылку сообщения WM_COPYDATA.


 
isasa ©   (2005-07-03 00:46) [2]

если
 WM_COPYDATA    
то
SendMessage


 
P.N.P. ©   (2005-07-03 01:00) [3]

>Просто Джо ©   (03.07.05 00:24) [1]
Спасибо, сделал - теперь все как надо работает.



Страницы: 1 вся ветка

Текущий архив: 2005.07.18;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.031 c
1-1120194700
Mishenka
2005-07-01 09:11
2005.07.18
Как узнать запущена ли в данный момент другая программа?


14-1119458885
Антон Г.
2005-06-22 20:48
2005.07.18
DOC -->JPG


4-1116942710
Aleksandr.
2005-05-24 17:51
2005.07.18
Будет ли работать PostMessage из dll?


3-1117775420
DimonS
2005-06-03 09:10
2005.07.18
Подскажите, как можно восстановить индексы в Парадоксе?


1-1119647298
мниор
2005-06-25 01:08
2005.07.18
DLL