Messenger service
- From
- Leonid Troyanovsky ()
- To
- Roman Scherbina
- Date
- 2002-02-07T10:00:50Z
- Area
- SU.WINDOWS.NT.PROG
From: "Leonid Troyanovsky" <lv.t@eco-pro.ru>
Fri Jan 25 2002 13:09, Roman Scherbina wrote to All:
> Никто не пробовал посылать из своей проги мессаги на
> Messenger service ? Что-то у меня не получается.
> открываю mailslot \\computername\mailslot\messngr и
> пишу туда. Но Messenger service на той машине не
> вываливает окошко с мессагой. в чем грабли ?
С NT отправляется без особых проблем.
procedure Netsend(const compname, messagetext: String);
{NT only}
var
fnetsend: function ( servername :PWChar;
msgname :PWChar;
fromname :PWChar;
buf : PByte;
buflen :DWord
): DWord; stdcall;
netapilib : THandle;
buf : PByte;
buflen :DWord;
msgname :PWChar;
msgnamelen: DWord;
begin
buflen := Length(messagetext) * 2 + 1;
GetMem(buf, buflen);
StringToWideChar(messagetext, PWideChar(buf), buflen);
msgnamelen := Length(compname) * 2 + 1;
GetMem(msgname, msgnamelen);
netapilib := LoadLibrary('Netapi32.dll');
Win32Check(netapilib <> 0);
@fnetsend := GetProcAddress(netapilib, 'NetMessageBufferSend');
try
Win32Check(Assigned(fnetsend));
StringToWideChar(messagetext, PWChar(buf), buflen);
StringToWideChar(compname, msgname, msgnamelen);
fnetsend(nil, msgname, nil, buf, buflen);
finally
FreeMem(buf);
FreeMem(msgname);
FreeLibrary(netapilib);
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
netsend(Edit1.Text, Memo1.Text);
end;
С уважением, LVT
--- ifmail v.2.15dev5
* Origin: FidoNet Online - http://www.fido-online.com (2:5020/400)