SZL lesen mit LibNoDave

GvOdin

Level-1
Beiträge
32
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi

Ich hoffe ich bin in diesem Forum richtig.
Wie der Titel schon vermuten lässt will ich verschiedene SZL´s mit der Biliothek vom Zottel auslesen und anschließend in einem Textfeld (VB.NET) ausgeben. Das ganze Problem dabei ist, das der readSZL Funktion ja eigentlich 5Werte übergeben werden müssen ich im VB.net aber nur 3 übergeben kann. :confused:
Ich denke mal der Fehler liegt bei mir:(. Mir wäre es schon eine große Hilfe wenn ich wüsste wie ich vorgehen muss.
 
Was genau fehlt denn ?

Ich hoffe ich bin in diesem Forum richtig.
Hochsprachen & OPC wäre treffender gewesen.

Das ganze Problem dabei ist, das der readSZL Funktion ja eigentlich 5Werte übergeben werden müssen ich im VB.net aber nur 3 übergeben kann. :confused:
Laut der Deklaration der methode daveConnection.readSZL in libnodave.net.cs mußt Du 4 Parameter übergeben, der 5. Parameter wird von der Klasse daveConnection intern verwaltet und automatisch hinzugefügt. Demnach fehlt Dir einer der 4 Parameter (SZL-ID, SZL-Index, Byte-Array für die SZL, Länge des Arrays), aber welcher davon isses denn ???


Gruß Axel
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich habe es eben auch da nochmal gepostet.

Demnach fehlt Dir einer der 4 Parameter (SZL-ID, SZL-Index, Byte-Array für die SZL, Länge des Arrays), aber welcher davon isses denn ???
Wie meinst du das???
Ich gebe folgende Zeile ein: res = readSZL(ID as Integer, Index as Integer, ddd()) mit ID=19h, Index = 5h, ddd() = buf. buf ist als 1000Byte großes Array deklariert. Kommt das Programm dahin bekomme ich eine Fehler Meldung und zwar folgende.
Ein Aufruf an die PInvoke-Funktion "libnodave.net!libnodave+daveConnection::daveReadSZL" hat das Gleichgewicht des Stapels gestört. Wahrscheinlich stimmt die verwaltete PInvoke-Signatur nicht mit der nicht verwalteten Zielsignatur überein. Überprüfen Sie, ob die Aufrufkonvention und die Parameter der PInvoke-Signatur mit der nicht verwalteten Zielsignatur übereinstimmen.

Danke für den Support:)
 
Ich häng mich hier einfach mal mit dran, auch wenn der Thread schon ein wenig älter ist...

Ich habe eine Siemens Logo! mit Ethernetanschluss.

Verbindung steht, und ich kann Ein- und Ausgänge lesen und setzen.

Jetzt gibt es bei LibNoDave noch die Funktion "daveReadSZL", mit der man angeblich den Zustand der CPU auslesen kann (ich möchte wissen, ob die Logo! im Start oder Stop Zustand ist).

Jedoch bekomme ich beim Aufruf dieser Funktion als Ergebnis immer die Timeout Fehlermeldung (-1025):

res2 = daveReadSZL(dc, 25, 5, buffer(0), 4096)

Jemand eine Idee? Ist diese Funktion bei der Logo! überhaupt anwendbar?
 
Zurück
Oben