| |
Fragen und Antworten zur vbarchiv.dllVB2003.NET und netPingIP, kennt das Object ICMP_ECHO_REPLY nicht | | | Autor: Frank1971 | Datum: 28.11.06 12:57 |
| Hallo,
wollte die Funktion
Public Declare Function netPingIP Lib "vbarchiv.dll" (ByVal sAddress As String, ByRef Reply As ICMP_ECHO_REPLY) As Long
in meinem VB 2003.NET Projekt einbinden, doch leider kennt mein VisualStudio Pro. das Objekt ICMP_ECHO_REPLY nicht.
Was muss ich tun, damit ich eine IP anpingen kann?
Public Class Form1
Inherits System.Windows.Forms.Form
Public Declare Function netPingIP Lib "vbarchiv.dll" (ByVal sAddress As _
String, ByRef Reply As ICMP_ECHO_REPLY) As Long
Private Sub Button7_Click(ByVal sender As System.Object, ByVal e As _
System.EventArgs) Handles Button7.Click
Dim icmp As ICMP_ECHO_REPLY
Dim uStatus As Long
uStatus = netPingIP(netHostToIP("www.vbarchiv.net"), icmp)
If uStatus <> -1 Then
MsgBox("Ping-Ergebnis: " & netEvalPingResponse(icmp.Status))
End If
End Sub
End Class Gibts es das noch nicht im FrameWork 1.1 oder muß ich noch einen zusätzlichen Namespace importieren?
Gruß Frank | |
Re: VB2003.NET und netPingIP, kennt das Object ICMP_ECHO_REPLY nicht | | | Autor: Stefan Linder | Datum: 29.11.06 16:50 |
| Hallo Frank,
du must ICMP_ECHO_REPLY als UDT definieren:
Public Type ICMP_ECHO_REPLY
address As Long 'IP-Adresse in Form einer
' IPADDR-Struktur
Status As Long 'Status für -> netEvalPingResponse
RoundTripTime As Long 'TripTime in Millisekunden
DataSize As Long 'Antwortgröße in Byte
Reserved As Integer 'Reserviert
ptrData As Long 'Zeiger zu den Antwortdaten
Options As IP_OPTION_INFORMATION 'Antwortoptionen
Data As String * 250 'Daten
End Type Gru?, Stefan | |
Re: VB2003.NET und netPingIP, kennt das Object ICMP_ECHO_REPLY nicht | | | Autor: Frank1971 | Datum: 30.11.06 10:01 |
| Hab eine Klasse mit den fehlenden Strukturen hinzugefügt und jetzt funktioniert es:
Option Strict On
Imports System.Net
Imports System.Net.Sockets
Imports System.Runtime.InteropServices
Public Class csNet
Public Declare Function netPingIP Lib "vbarchiv.dll" (ByVal sAddress As _
String, ByRef Reply As ICMP_ECHO_REPLY) As Long
Public Declare Function netEvalPingResponse Lib "vbarchiv.dll" (ByVal _
nPingStatus As Long) As String
<StructLayout(LayoutKind.Sequential, CharSet:=CharSet.Ansi)> _
Public Structure ICMP_ECHO_REPLY
Public Address As Integer
Public Status As ICMPStatusEnum
Public RoundTripTime As Integer
Public DataSize As Short
Public Reserved As Short
Public DataPtr As IntPtr
Public Options As ICMP_OPTIONS
<MarshalAs(UnmanagedType.ByValTStr, SizeConst:=250)> _
Public Data As String
End Structure
Public Enum ICMPStatusEnum
Success = 0
BufferTooSmall = 11001 'Buffer Too Small
DestinationNetUnreachable = 11002 'Destination Net Unreachable
DestinationHostUnreachable = 11003 'Destination Host Unreachable
DestinationProtocolUnreachable = 11004 'Destination Protocol Unreachable
DestinationPortUnreachable = 11005 'Destination Port Unreachable
NoResource = 11006 'No Resources
BadOption = 11007 'Bad Option
HardwareError = 11008 'Hardware Error
LargePacket = 11009 'Packet Too Big
RequestTimedOUT = 11010 'Request Timed Out
BadRequest = 11011 'Bad Request
BadROUTE = 11012 'Bad Route
TtlExpiredInTransit = 11013 'TimeToLive Expired Transit
TtlExpiredInReassembly = 11014 'TimeToLive Expired Reassembly
Parameter = 11015 'Parameter Problem
SourceQuench = 11016 'Source Quench
OptionTooBig = 11017 'Option Too Big
BadDestination = 11018 'Bad Destination
NegotiatingIPSEC = 11032 'Negotiating IPSEC
GeneralFailure = 11050 'General Failure
End Enum
<StructLayout(LayoutKind.Sequential, CharSet:=CharSet.Ansi)> _
Public Structure ICMP_OPTIONS
Public Ttl As Byte
Public Tos As Byte
Public Flags As Byte
Public OptionsSize As Byte
Public OptionsData As IntPtr
End Structure
End Class Dim icmp As csNet.ICMP_ECHO_REPLY
Dim uStatus As Long
uStatus = csNet.netPingIP("192.168.xxx.xxx", icmp)
If uStatus <> -1 Then
MsgBox("Ping-Ergebnis: " & csNet.netEvalPingResponse(icmp.Status))
End If Gruß Frank | |
| 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 |
|
|
Neu! sevEingabe 3.0
Einfach stark!
Ein einziges Eingabe-Control für alle benötigten Eingabetypen und -formate, inkl. Kalender-, Taschenrechner und Floskelfunktion, mehrspaltige ComboBox mit DB-Anbindung, ImageComboBox u.v.m. 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-2024 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
|
|