Registriert seit: 28. Jun 2003
Ort: Chemnitz
515 Beiträge
Delphi XE3 Professional
|
Re: NetSend mit Delphi
2. Jan 2004, 16:07
Also ich habs mit dem Code hier aus der DP gemacht:
(Bindet die netapi32.dll ein, also kein Umweg übers cmd)
Funktioniert super
Delphi-Quellcode:
// NETAPI32.DLL direkt einbinden
function NetMsgSend(const ServerName, MsgName, FromName, Msg: WideString): Integer;
function WC(const Name: WideString): PWideChar;
begin
if Name = '' then Result := nil
else Result := PWideChar(Name);
end;
var
NetLib: THandle;
NetMessageBufferSend: function(ServerName, MsgName, FromName: PWideChar;
Buffer: PWideChar; BufferLen: DWord): Integer; stdcall;
begin
Result := -1;
NetLib := LoadLibrary('NETAPI32.DLL');
if NetLib <> 0 then
try
@NetMessageBufferSend := GetProcAddress(NetLib, 'NetMessageBufferSend');
if Assigned(NetMessageBufferSend) then
Result := NetMessageBufferSend(WC(ServerName), WC(MsgName), WC(FromName),
Pointer(Msg), Length(Msg) * 2);
finally
FreeLibrary(NetLib);
end;
end;
// Senden-Knopf
procedure Thaupt.senditClick(Sender: TObject);
var status: shortint;
begin
status := NetMsgSend('', empf.Text, abs.Text, nachricht.Text);
if status = 0 then
ShowMessage('Nachricht versendet!');
end;
Manuel
|
|
Zitat
|