Forum: VB.NET |
Thema:
Re: AddressOf bei VB.Net |
Von:
G. Guest (
08.12.2004 16:36) |
Hi Tobi,
habe es mal so Probiert:
Public Delegate Function MySRead(ByVal buff As Byte, ByVal Leg As Integer) As Integer
<DllImport("streamreader.dll")> _
Public Shared Function SetFilter(ByVal PID As Integer, ByVal ReadDataFunction As MySRead, ByVal CallBackTyp As Long, ByVal Size As Long, ByVal filter_num As Long) As Boolean
End Function
Shared Function ReadDataFunction(ByVal buff As Byte, ByVal Leg As Integer) As Integer
A2 = buff
A1 = Leg
End Function
Private Sub Button3_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
RichTextBox1.Text = RichTextBox1.Text & Chr(13) & "SetFilter " & Streame.SetFilter(10, AddressOf Streame.ReadDataFunction, 2, 1, &H0)
End Sub
Wenn ich so aufrufe bekomme ich diesen Fehler:
"Eine nicht behandelte Ausnahme des Typs 'System.NullReferenceException' ist in Streamreader.exe aufgetreten.
Zusätzliche Informationen: Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt."
Wenn ich Integer als Object deklariere bekomme ich diesen Fehler:
"Eine nicht behandelte Ausnahme des Typs 'System.Runtime.InteropServices.MarshalDirectiveException' ist in Streamreader.exe aufgetreten.
Zusätzliche Informationen: PInvoke-Einschränkung: Es können keine Varianten zurückgegeben werden."
Ich finde die Fehlerquelle nicht.
Gruß
Harald
Betreff |
Von |
Datum |
|
  |
Re: AddressOf bei VB.Net
Hi Harald, <br><br>die erste Fehlermeldung sagt wahrscheinlich aus das der Delegate nothing ist. Die zweite Fehlermeldung ist auch ganz klar Du darfst kein DatenTyp Object... |
 |
 |
 |
|
|
Tobi
Ulm
|
08.12.2004 16:45 |
|
  |
Re: AddressOf bei VB.Net
Hi ich nochmal,<br><br>AddressOf Streame.ReadDataFunction<br><br>Mach das mal so wie ich Dir zuvor im Source geschickt habe. <br>1. Variable vom Type des Zeigers<br>2. Variable setzen auf AddressOf... |
 |
 |
 |
|
|
Tobi
Ulm
|
08.12.2004 16:49 |
|
|
Antworten
Vorsicht bei der Eingabe: Die Zeichen ' oder -- sind nicht erlaubt!