Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 2002.03.18;
Скачать: [xml.tar.bz2];

Вниз

IPX через winsock2   Найти похожие ветки 

 
samuray   (2001-12-30 13:48) [0]

Возникла проблема при написании сервера

type
PSockAddrIPX = ^TSockAddrIPX;
TSockAddrIPX = packed record
sa_family : short;
sa_netnum : array [0..3] of Byte;
sa_nodenum : array [0..5] of Byte;
sa_socket : u_short;
end;

var
SrvSocket : TSocket;
SrvAddr, BindAddr : TSockAddrIPX;
LocalSocketNumber : u_short = $5679;
SrvEvent : WSAEVENT;

function InitServer : Boolean;
var
WSData : TWSAData;
I : Integer;
begin
Result := False;
if WSAStartup(WINSOCK_VERSION, WSData) <> 0 then
Exit;
SrvSocket := socket(PF_IPX, SOCK_DGRAM, NSPROTO_IPX);
if SrvSocket = INVALID_SOCKET then Exit;

SrvAddr.sa_family := PF_IPX;
FillChar(SrvAddr.sa_netnum,4,0);
FillChar(SrvAddr.sa_nodenum,6,0);
SrvAddr.sa_socket := Swap(SrvSocket{LocalSocketNumber});

if bind( SrvSocket,
PSockAddr(@SrvAddr),
SizeOf(TSockAddrIPX) )= SOCKET_ERROR then Exit;

I := sizeof(TSockAddrIPX);
if getsockname(SrvSocket, PSockAddr(@BindAddr), I) =
SOCKET_ERROR then Exit;

SrvEvent := WSACreateEvent;
if SrvEvent = WSA_INVALID_EVENT then Exit;

if WSAEventSelect( SrvSocket,
SrvEvent,
FD_READ) <> 0 then Exit; //вот сдесь функция возвращяет FALSE ПОЧЕМУ? если использую протокол ip всё нормально!

Result := True;
end;



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

Форум: "Сети";
Текущий архив: 2002.03.18;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.44 MB
Время: 0.005 c
1-57354
AlexP
2002-03-01 14:55
2002.03.18
Как просто обрезать число например 6.43734 до 6.43


4-57548
Мирон
2002-01-17 18:56
2002.03.18
Раскладка клавиатуры!!!


1-57404
SER
2002-03-01 02:43
2002.03.18
Функции и процедуры с использыванием методов объектов


4-57568
Alexeyk
2002-01-21 12:18
2002.03.18
Немогу разобраться-как можно управлять уровнем громкости


1-57461
DmSN
2002-02-28 21:13
2002.03.18
Частота вращения вентилятора процессора





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский