|
| |

VB.NET - Ein- und Umsteiger| Netzwerk mit wsock32.dll in vb.net will nicht | |  | | Autor: TommyB | | Datum: 03.04.05 17:18 |
| Hi,
ich hab seit längerem Probleme mit vb.net. Ich würde gerne die Funktionalität der WSock32.dll integrieren, wie es auch unzählige Quellen im Internet für VB6 dastellen.
Nun funktioniert leider fast nichts in .net, da die netten coder von ms sich so nebenbei gedacht haben, 'type' zu terminieren und durch 'structure' ersetzen zu müssen.
Hierrunter leiden fast alle api-aufrufe zur wsock. (schon bei WSAStartup)
Wie muss man den Code anpassen, um die Funktionen auch unter vb.net zu verwenden? Ich hab mir mittlerweile die Finger wund gegoogelt und nüx gefuden.
Am wichtigsten sind mir Funktionen wie:
Pingen einer IP
Hostname zu IP und andersrum
Tracerouten einer Ziel-IP
Vielen Dank schon mal im Vorraus!
CYa!
Code-Ausschnitt: Wer die vollen ~500 Zeilen haben möchte, möge mir ne EMail senden
________________________________________________________
' Deklarationen
Private Const MAX_WSADescription = 256
Private Const MAX_WSASYSStatus = 128
Public Structure WSADATA
Private Muell As Boolean
Public Shared wVersion As Integer
Public Shared wHighVersion As Integer
Public Shared szDescription() As Byte '(0 to MAX_WSADescription) As Byte
Public Shared szSystemStatus() As Byte '(0 To MAX_WSASYSStatus) As Byte
Public Shared wMaxSockets As Integer
Public Shared wMaxUDPDG As Integer
Public Shared dwVendorInfo As Long
Sub Initialize()
ReDim szDescription(MAX_WSADescription)
ReDim szSystemStatus(MAX_WSASYSStatus)
End Sub
End Structure
Public Shared WSAD As WSADATA
Private Declare Function WSAStartup Lib "wsock32.dll" (ByVal wVersionRequired As Long, ByVal wsad As WSADATA) As Long
Private Function SocketsInitialize(Optional ByVal sErr As String = "") As Boolean
Dim sLoByte As String, sHiByte As String
Dim RetVal
Call WSAD.Initialize()
RetVal = WSAStartup(WS_VERSION_REQD, WSAD) ' Rückgabe = 11007 statt 0 wie benötigt
If RetVal <> ERROR_SUCCESS Then
sErr = "The 32-bit Windows Socket is not responding."
RaiseEvent ErrorMessage("Fehler bei ""SocketsInitialize"" aufgetreten:" & vbCrLf & "(" & RetVal & ") " & GetStatusCode(RetVal), _
RetVal, "TcpIp.SocketsInitialize")
SocketsInitialize = False
Exit Function
End If
If WSAD.wMaxSockets < MIN_SOCKETS_REQD Then
sErr = "This application requires a minimum of " & CStr(MIN_SOCKETS_REQD) & " supported sockets."
RaiseEvent ErrorMessage("Fehler: Diese Anwendung benötigt minimal " & CStr(MIN_SOCKETS_REQD) & " unterstützte Sockets!", _
0, "TcpIp.SocketsInitialize")
SocketsInitialize = False
Exit Function
End If
If LoByte(WSAD.wVersion) < WS_VERSION_MAJOR Or _
(LoByte(WSAD.wVersion) = WS_VERSION_MAJOR And _
HiByte(WSAD.wVersion) < WS_VERSION_MINOR) Then
sHiByte = CStr(HiByte(WSAD.wVersion))
sLoByte = CStr(LoByte(WSAD.wVersion))
sErr = "Sockets version " & sLoByte & "." & sHiByte & " is not supported by 32-bit Windows Sockets."
RaiseEvent ErrorMessage("Fehler: Socket-Version " & sLoByte & "." & sHiByte & " wird von 32Bit Windows-Sockets nicht unterstützt!", _
0, "TcpIp.SocketsInitialize")
SocketsInitialize = False
Exit Function
End If
SocketsInitialize = True
End Function
________________________________________________________ |  |
 | Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
  |
|
sevZIP40 Pro DLL 
Zippen und Unzippen wie die Profis!
Mit nur wenigen Zeilen Code statten Sie Ihre Anwendungen ab sofort mit schnellen Zip- und Unzip-Funktionen aus. Hierbei lassen sich entweder einzelnen Dateien oder auch gesamte Ordner zippen bzw. entpacken. Weitere InfosTipp des Monats Access-Tools Vol.1 
Über 400 MByte Inhalt
Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB
Nur 24,95 EURWeitere Infos
|
| |
|
Copyright ©2000-2025 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|