Hola a todos y gracias por responder. He encontrado esto:
Código Delphi
[-]
function NetSend(dest, source, msg: string): longint;
type
TNetMessageBufferSendFunction = function(servername, msgname, fromname: PWideChar; buf:
PWideChar; buflen: Cardinal): longint; stdcall;
var
NetMessageBufferSend: TNetMessageBufferSendFunction;
SourceWideChar : PWideChar;
DestWideChar : PWideChar;
MessagetextWideChar: PWideChar;
Handle : THandle;
begin
Handle := LoadLibrary('NETAPI32.DLL');
if Handle = 0 then
begin
Result := GetLastError;
exit;
end;
@NetMessageBufferSend := GetProcAddress(Handle, 'NetMessageBufferSend');
if @NetMessageBufferSend = nil then
begin
Result := GetLastError;
exit;
end;
MessagetextWideChar := nil;
try
GetMem(MessagetextWideChar, Length(msg) * SizeOf(WideChar) + 1);
GetMem(DestWideChar, 20 * SizeOf(WideChar) + 1);
StringToWideChar(msg, MessagetextWideChar, Length(msg) * SizeOf(WideChar) + 1);
StringToWideChar(Dest, DestWideChar, 20 * SizeOf(WideChar) + 1);
if source = '' then
begin
result := NetMessageBufferSend(nil, DestWideChar, nil, MessagetextWideChar, Length(msg) * SizeOf(WideChar) + 1)
end else
begin
GetMem(SourceWideChar, 20 * SizeOf(WideChar) + 1);
StringToWideChar(source, SourceWideChar, 20 * SizeOf(WideChar) + 1);
result := NetMessageBufferSend(nil, DestWideChar, SourceWideChar, MessagetextWideChar,
Length(msg) * SizeOf(WideChar) + 1);
freemem(SourceWideChar);
end;
finally
FreeMem(MessagetextWideChar);
FreeLibrary(Handle);
end;
end;
Voy a probar. Les comento luego...