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

Вниз

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

 
Nikolas SHmuS   (2002-10-27 12:36) [0]

подскажите плиз... каким образом вызвать апи функцию.. NetMessageBufferSend???


 
Marcus   (2002-10-28 14:27) [1]

Вот работающая функция

var
NetLibHandle: THandle;
// Если эти переменные сделать локальными, функция не
// сработает. Подозреваю, что это из-за того, что она
// выполняется в отдельном потоке
wszSrc: array[0..MAX_COMPUTERNAME_LENGTH] of WideChar;
wszDest: array[0..255] of WideChar;
wszMsg: PWideChar;
cbMsg: DWORD;

function SendMsg(const ComputerName, MsgText: string): NET_API_STATUS;
var
NetMessageBufferSend: TNetMessageBufferSend;
szComputerName: array[0..MAX_COMPUTERNAME_LENGTH] of char;
cbComputerName: Cardinal;
begin
cbComputerName := MAX_COMPUTERNAME_LENGTH + 1;
GetComputerName(szComputerName, cbComputerName);

MultiByteToWideChar(CP_ACP, 0, szComputerName, -1, wszSrc, MAX_COMPUTERNAME_LENGTH+1);
StringToWideChar(ComputerName, wszDest, SizeOf(wszDest));

cbMsg := (Length(MsgText) + 1) * 2;
wszMsg := AllocMem(cbMsg);
StringtoWideChar(MsgText, wszMsg, cbMsg);

if (NetLibHandle = 0) then
NetLibHandle := LoadLibrary("NETAPI32.DLL");
@NetMessageBufferSend := GetProcAddress(NetLibHandle, "NetMessageBufferSend");

Result := NetMessageBufferSend("", wszDest, wszSrc, wszMsg, cbMsg);

FreeMem(wszMsg);
end;


 
Subfire ©   (2002-10-28 15:08) [2]

Marcus
Слушай, а что за NET_API_STATUS и TNetMessageBufferSend, я работаю в D5 и там ее нету :(
(поискал во всех заголовочных файлах - нету =)))
Попробовал в WinApi хелпах, но тож ниче разумного не нашел...
Можешь прислать эти структуры?


 
ZZ ©   (2002-10-28 16:18) [3]

NET_API_STATUS = Cardinal;
TNetMessageBufferSend = function (список параметров взятый из MSDN);


 
Subfire ©   (2002-10-28 16:23) [4]

по поводу TNetMessageBufferSend просто стормозил =-)
За NET_API_STATUS пасибо!!!



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

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

Наверх




Память: 0.47 MB
Время: 0.022 c
4-28327
Gayrus
2002-10-26 10:42
2002.12.09
Regedit


4-28368
Axis_of_Evil
2002-10-28 09:37
2002.12.09
Памагитя!


3-27864
Calm
2002-11-21 11:22
2002.12.09
Как запустить хранимую процедуру в MS SQL Interprise Manager?


1-27953
Nadine
2002-11-29 12:21
2002.12.09
Как содержимое поля BLOB перенести в файл *.doc или *.xls


14-28270
Bboy tn
2002-11-12 19:50
2002.12.09
Продукция компании GigaByte