April 7
la piattaforma .NET di Microsoft offre una serie di classi che è possibile utilizzare per eseguire le attività di networking. Tuttavia, se è necessario il massimo controllo sopra il vostro codice di rete di Windows, utilizzando Winsock.dll direttamente è la strada da percorrere. Inoltre, utilizzando winsock.dll permetterà il codice Visual Basic .NET di interagire con più vecchio Visual Basic 6 codice che non di rete utilizzando il componente Winsock. Qualunque sia la ragione, ci si accorge che VB.NET rende facile interagire con questa libreria sistema centrale.
1 Aprire il progetto di Visual Basic vuoi aggiungere il supporto winsock.dll a.
2 Creare un file di codice sorgente Visual Basic vuoto e aggiungere una classe statica vuoto ad esso. Esso dovrebbe essere simile a questo:
Public static Class Winsock
End Class
3 Aggiungere ogni funzione winsock.dll che desideri utilizzare per la vostra classe. Ad esempio, per utilizzare la funzione di "legare", aggiungere il seguente codice:
Declare Function legare Lib "winsock.dll" (_
socketHandle As IntPtr, _
ByRef socketAddress As sockaddr_in, _
addressLength as Integer) As Integer
Per alcune funzioni, tra cui "legare", è necessario dichiarare strutture di dati basati sulle API. Nel caso di "legare", è necessario assicurarsi di aver dichiarato "sockaddr_in." Esso può essere dichiarata come segue:
<StructLayout (LayoutKind.Sequential)> _
Struttura pubblica sockaddr_in
sin_family Public Come Corto
sin_port Public Come Corto
sin_addr pubblico As Integer
sin_zero pubblico As Integer
fine Structure
4 Usa il tuo nuove funzioni Winsock ovunque è necessario. Per utilizzare la funzione di "legare", ad esempio, scrivere:
Dim socketHandle come IntPtr
Dim socketAddress Come Winsock.sockaddr_in
Dim addressLength as Integer
Winsock.bind (socketHandle, socketAddress, addressLength)