Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

перевод строки в ip.


VitV ©   (2007-08-15 12:01:00) 

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
   Result := NetMessageBufferSend(nil, DestWideChar, nil,MessagetextWideChar, Length(Msg) * SizeOf(WideChar) + 1)
 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;

NetSend('komp1','komp2','string');

NetSend(1.0.0.1,1.0.0.2,'string');-не работает...как перевести строку в ип?


vitv   (2007-08-15 14:02:00) [1]

Спасибо за помощь!

п.с.Но тогда надо функцию переписывать.


umbra   (2007-08-15 12:36:00) [2]


> как перевести строку в ип?
>

uses WinSock

var
 ipaddr: LongInt;

IPaddr := inet_addr('127.0.0.1');


Наверх

Титульная страница Поиск, карта сайта Написать письмо