2009-04-18 7 views
0

Je suis fatigué de la BeginRead .NET, EndRead stuff.I'd aiment utiliser WSAAsyncSelect la façon dont je l'habitude de Delphi/C++Comment utiliser WSAAsyncSelect de WinAPI en C#?

//Async CallBack handler Declaration 
procedure MessageHandler(var Msg:Tmessage);Message WM_WINSOCK_ASYNC_MSG; 

//Where i setup the Async 
dwError := WSAAsyncSelect(Sock, form1.handle, WM_WINSOCK_ASYNC_MSG, FD_CLOSE or FD_READ); 

//Async Callback Handler 
procedure Tform1.MessageHandler(var Msg:Tmessage); 
begin 
    case WSAGetSelectEvent(MSG.LParam) of //LParam is FD_READ/FR_CLOSE/FD_WRITE 
    FD_READ: OnSocketRead(MSG.WParam); //WPARAM is the Socket itself. 
    FD_CLOSE: OnSocketClose(MSG.WParam); 
    end; 
end; 

Est-il possible de mettre cet événement en C#?

Répondre

Questions connexes