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

Вниз

net send   Найти похожие ветки 

 
banderas ©   (2004-07-18 19:17) [0]

Как послать сообщение net send"ом ?


 
SashOK   (2004-07-18 19:33) [1]

uses ActiveX;

function Sending(const sTo, sMessage: string): Boolean;
type
 PNetMessageBufferSend = ^TNetMessageBufferSend;
 TNetMessageBufferSend = function(
   servername: PWideChar;
   msgname: PWideChar;
   fromname: PWideChar;
   buf: PBYTE;
   buflen: DWORD
   ): Integer; stdcall;
var
 wMessage, wTo: PWideChar;
 i, hLib: Integer;
 NetMessageBufferSend: TNetMessageBufferSend;
begin
 Result := False;
 hLib := LoadLibrary("NetApi32.dll");
 if hlib > 0 then
 try
   @NetMessageBufferSend := GetProcAddress(hLib, "NetMessageBufferSend");
   if @NetMessageBufferSend <> nil then
   begin
     wMessage := CoTaskMemAlloc((Length(sMessage) + 1) * sizeof(WideChar));
     try
       wTo := CoTaskMemAlloc((Length(sTo) + 1) * sizeof(WideChar));
       try
         StringToWideChar(sMessage, wMessage, Length(sMessage) + 1);
         StringToWideChar(sTo, wTo, Length(sTo) + 1);
         i := NetMessageBufferSend(nil, wTo, nil, PBYTE(wMessage),
           (Length(sMessage) + 1) * sizeof(WideChar));
         Result := i = ERROR_SUCCESS;
         if not Result then
           MessageBox(GetForegroundWindow, "Ошибка отправки", nil,
             $1010);
       finally
         CoTaskMemFree(wTo);
       end;
     finally
       CoTaskMemFree(wMessage);
     end;
   end
   else
     MessageBox(GetForegroundWindow,
       "ErroR", nil, $1010);
 finally
   FreeLibrary(hLib);
 end
 else
   MessageBox(GetForegroundWindow, "Error", nil, $1010);
end;

**********
Sending("Привет", "COMP_9")


 
DeadMeat ©   (2004-07-18 21:08) [2]


> Sending("Привет", "COMP_9")

ИМХО, лучше либо заголовок переделать или в вызове местами поменять параметры...

---
...Death Is Only The Begining...


 
Депрессирующий Человек   (2004-07-19 11:34) [3]

Вот примерный код:

function NetMessageBufferSend (servername, msgname, fromname, buf: LPWSTR; buflen: Longint): Longint; stdcall; external "NetApi32.dll";

var sTo, sFrom, sMsg: WideString;

if NetMessageBufferSend(nil, PWideChar(sTo), PWideChar(sFrom), PWideChar(sMsg), (Length(sMsg)+1)*SizeOf(WideChar)) = 0
  then MessageBox(0, "Сообщение успешно доставлено.", "Netsend", MB_ICONINFORMATION)
  else MessageBox(0, "Ошибка", "Netsend", MB_ICONERROR);



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

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

Наверх




Память: 0.47 MB
Время: 0.028 c
3-1093509357
Nat
2004-08-26 12:35
2004.09.26
Пустая запись в DBGrid


1-1094795737
Геннадий
2004-09-10 09:55
2004.09.26
Service: проблема с OnExecute


14-1094332002
olookin
2004-09-05 01:06
2004.09.26
Вы придете в дом...


14-1094185947
Oyster
2004-09-03 08:32
2004.09.26
Помогите с Васиком


1-1094728904
Aleksandr
2004-09-09 15:21
2004.09.26
Убрать окно с экрана