Hallo,
ich komme da als c# greenhorn nicht weiter. Anbei mehr Code, der aber auf das wesentliche beschränkt ist (keine Fehler und Rückgabeauswertung) vielleicht ist es dann besser ersichtlich. Wie gesagt ich bin unter c# Anfänger und habe vllt. zu viel Beispiele gelesen ;-) .... namespace ist das nötig ???
@Mehl: Variablen in Klammern ... wusste ich nicht.
namespace CommPLC
{
using PLCcom;
using PLCcom.Core;
//###############################################################################
public class CommPLCProgramm
{
public static PLCcomDevice plcdevice;
//###############################################################################
public static bool openTCP_ISO_Device(string ip)
{
PLCcomDevice plcdevice = new TCP_ISO_Device(ip, 0, 2, PLCcom.ePLCType.S7_300_400_compatibel);
ConnectResult res = plcdevice.Connect();
return true;
}
//###############################################################################
public static bool read_no_symbol()
{
ReadDataRequest requestItem1 = new ReadDataRequest(eRegion.DataBlock, 10, 0, eDataType.BYTE, 10);
ReadDataResult res = (plcdevice).ReadData(requestItem1);
return true;
}
//###############################################################################
}
}
Beim Aufruf der Funktion "ReadDataResult res = (plcdevice).ReadData(requestItem1);" habe ich zur Laufzeit den "Referenzfehler"
Sonst ist alles richtig, denn wenn ich alles in einer Funktion aufrufe, funktioniert es.
Wie schon gesagt, bei einigem fehlt mir das Verständnis, das gab es bei reinem "C" nicht.
Vielen Dank