Форум: "Основная";
Текущий архив: 2005.07.18;
Скачать: [xml.tar.bz2];
ВнизПередача строки другой копии приложения Найти похожие ветки
← →
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;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.039 c