Hallo,
ich habe mir auch überlegt, es mit DDE zu versuchen. Wenn ich eine HIM Advanced habe müsste der ncdde-Server ja laufen, oder?
Folgenden Beispielcode hab ich in einer Doku gefunden (für C++):
DWORD idInst; // erzeugt mit DdeInitialize
HSZ hszService, hszTopic, hszItem; // String Handles
HCONV hConv; // Conversation Handle
hszService = DdeCreateStringHandle ( idInst , ”ncdde” , NULL );
hszTopic = DdeCreateStringHandle ( idInst , ”NCU840D” , NULL );
hszItem = DdeCreateStringHandle ( idInst ,
Ä”/Channel/GeometricAxis/toolBaseDistToGo[1]” , NULL );
hConv = DdeConnect(idInst,hszService,hszTopic,NULL);
// Verbindungsaufbau zum Server
// Hotlink folgt
if ( DdeClientTransaction ( (LPBYTE)NULL , 0 , hConv , hszItem,
ÄCF_TEXT ,XTYP_ADVSTART|XTYP_ACKREQ , 1000 , NULL )
Ä==TRUE) { } // Hotlink Aufbau erfolgreich
Ist das der richtige Weg? Oder verbergen sich dahinter noch ungeahnte Schwierigkeiten, um an die PLC Variablen zu kommen? Oder würdet ihr einen ganz anderen Weg nehmen?
Ich hab zwar schon viel in C++ Programmiert, aber das ist für mich doch etwas Neuland.