Array von Bytes per OPC in SPS schreiben

ingmar

Level-1
Beiträge
2
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

ich nutze Simatic.NET und Visual C++. Die Kommunikation über den OPC-Server (S7 per Ethernet) habe ich soweit, wenn ich aber ein Array von Bytes (z.B. DB10CHAR0,10) schreiben will, erhalte ich einen Fehler beim Schreiben. Der Fehlercode ist nirgends zu finden (8007006f), wo könnte man da Informationen finden?
Das Lesen solcher Arrays funktioniert aber! Für das Schreiben übergebe ich der Methode Write() einen Variant mit den gleichen Parametern (VT_ARRAY | VT_UI1), die mir beim Lesen des Arrays gegeben werden.

Nutze ich die Simulation von Simatic funktioniert alles perfekt, nur wenn ich wirklich (per Ethernet) an der SPS hänge kann ich nichts schreiben?! Der OPC-Scout kann diese Daten korrekt schreiben!

Kann mir da jemand einen Tip geben? Prinzipiell kann man ja wohl Arrays schreiben? Gibt es da einen Haken? Wie muss der Variant aussehen?

Bin dankbar für jeden Tip,
Ingmar
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

Hallo,

Es handelt sich offensichtlich um eine COM-Exception, siehe den Link :
http://www.martennel.com/microsoft-...n0x8007006f-file-name-too-long-0000006932.htm


danke für den Tip, dadurch bin ich der Sache auf die Schliche gekommen. Es handelete sich um einen Fehler der unter Windows XP mit SP2 auftritt. Die COM-Schnittstelle wurde irgendwie geändert, bei Array-Typen klappts dann nicht mehr. Lösung habe ich aber keine gefunden... wenn man C# schreibt, tritt der Fehler nicht auf (.NET-Bibliotheken).

Vielleicht hilfts ja mal noch jemandem...
Grüße
Ingmar
 
Zurück
Oben