Hallo allerseits!
Nach langer Pause habe ich wieder den Weg zurück nach VB gefunden - und scheitere promt schon bei einem Funktionskopf
Ich habe einen SerialPort, über welchen ich einige bytes senden will. Dabei gibt es ein genau einzuhaltendes Befehlsformat, dass aus 3 Teilen besteht: dem Befehl (2 Bytes), einem ersten Parameter (4 bytes) und einem zweiten Parameter (2 oder mehr bytes). Einige Befehle haben keine Parameter, hier sind die Variablenfelder mit Nullen zu füllen.
Daraus habe ich mir folgende Funktion zusammengebastelt:
Nun beschwert sich VB aber mit verschiedensten Meldungen, dass meine optionale byte-array-Initialisierung nicht zulässig ist. Im obigen Beispiel klagt der Compiler über "Dem Arrayinitialisierer fehlen 1 Elemente"
Würde mich sehr freuen, wenn mir hier jemand einen Tipp geben könnte..
Danke!
Nach langer Pause habe ich wieder den Weg zurück nach VB gefunden - und scheitere promt schon bei einem Funktionskopf
Ich habe einen SerialPort, über welchen ich einige bytes senden will. Dabei gibt es ein genau einzuhaltendes Befehlsformat, dass aus 3 Teilen besteht: dem Befehl (2 Bytes), einem ersten Parameter (4 bytes) und einem zweiten Parameter (2 oder mehr bytes). Einige Befehle haben keine Parameter, hier sind die Variablenfelder mit Nullen zu füllen.
Daraus habe ich mir folgende Funktion zusammengebastelt:
VB.NET-Quellcode
- Private Function serialWriteCommand(ByVal cmd As Byte(), Optional ByVal var1 As Byte() = New Byte(4) {0, 0, 0, 0}, Optional ByVal var2 As Byte() = New Byte(2) {0, 0}) As Boolean
- SerialPort1.Write(cmd, 0, 2)
- SerialPort1.Write(var1, 0, 4)
- If var2.Length > 2 Then
- SerialPort1.Write(var2, 0, var2.Length)
- Else
- SerialPort1.Write(var2, 0, 2)
- Return True
- End If
- Return False
- End Function
Nun beschwert sich VB aber mit verschiedensten Meldungen, dass meine optionale byte-array-Initialisierung nicht zulässig ist. Im obigen Beispiel klagt der Compiler über "Dem Arrayinitialisierer fehlen 1 Elemente"
Würde mich sehr freuen, wenn mir hier jemand einen Tipp geben könnte..
Danke!