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

Вниз

не получается послать сообщение другому приложению.   Найти похожие ветки 

 
Duncann   (2003-11-04 11:37) [0]

У меня есть одна программа сервис под 2000, и другая которая в случае если запущена, то должна принимать сообщения от этой самой программы-сервиса.
Код программы сервиса:

const WM_MSG = WM_USER+2;
...
procedure TsvcServiceBase.ttTimer(Sender:TObject);
var Ini:TiniFile;
Thr:integer;
begin
ini:=TiniFile.Create(ExtractFilePath(ParamStr(0))+"SvComEx22.Dat");
Thr:=ini.ReadInteger("Threads","SendId",0);
if Thr>0 then PostThreadMessage(Thr,WM_MSG,0,0);
ini.Free;
end;

Причем сообщение точно уходят т.к. на if PostThreadMessage() выдает true. А вот код программы принимающей.

Const WM_MSG=WM_USER+2;
...
public procedure GetMessage(var message :TMessage); message WM_MSG;
...
procedure TForm1.GetMessage(var message:TMessage);
begin
ShowMessage("ok");
M.Lines.Add(TimeToStr(Time)+" "+IntToStr(message.WParam)+" "+InTToStr(message.LParam));
end;

Ну и в итоге ничего не выдается... В чем проблема?


 
Duncann   (2003-11-04 11:38) [1]

Да и забыл написать процедурку которая пишет в ини файл номер нити.

procedure TForm1.FormActivate(Sender: TObject);
var ini:TIniFile;
begin
Ini:=TIniFile.Create(ExtractFilePath(ParamStr(0))+"SvComEx22.dat");
ini.WriteInteger("Threads","SendId",GetCurrentThreadId);
Ini.Free;
end;


 
Игорь Шевченко ©   (2003-11-04 11:42) [2]

У сервиса в настройках разрешено взаимодействие с рабочим столом ?


 
Duncann   (2003-11-04 11:53) [3]

Да, галочка стоит.


 
Игорь Шевченко ©   (2003-11-04 13:07) [4]

Только что обратил внимание на использование PostThreadMessage.
Это сообщение не будет обработано оконной процедурой формы.
Может, имеет смысл передавать Handle окна формы, а не идентификатор потока ? И в сервисе вызывать PostMessage, а не PostThreadMessage ?


 
Duncann   (2003-11-04 13:39) [5]

СПАСИБО!!!!
Это помогло :-)



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

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

Наверх




Память: 0.47 MB
Время: 0.031 c
14-12056
lak
2003-12-13 16:40
2004.01.05
оператор сотовой связи


6-12027
TUser
2003-11-05 15:03
2004.01.05
IEGrabber


14-12043
Dmitriy O.
2003-12-10 14:47
2004.01.05
А кто пользуется подсказками компилятора ?


14-12164
vopros
2003-12-11 14:45
2004.01.05
Обсуждение закрылось но высказаться охото.


1-11965
CrazyHacKeRs
2003-12-19 15:37
2004.01.05
Функция удаления символов