by Anonymous » 06 Jan 2025, 06:25
Ich arbeite an der Verbindung zwischen C# und einer Siemens-SPS (S7-1200). Ich habe einen Datenblock (auch bekannt als Datenbank) erstellt, in den ich lesen und schließlich schreiben muss. Die Verbindung zur SPS funktioniert, aber ich kann nichts aus ihrem Datenblock lesen. Es wird mir immer die folgende Fehlermeldung angezeigt:
Fehler 33028 Kontext wird nicht unterstützt. Step7 sagt: Funktion nicht implementiert oder Fehler im Telegramm.
Die Nummer des Datenblocks ist 311. Ich beginne beim ersten Byte und Als Länge habe ich nur 1 aufgegeben.
Ich habe auch „Blockzugriff optimieren“ deaktiviert, die Aktivierung löst dieses Problem nicht.
Code: Select all
if (0 == lndConnection.connectPLC())
{
Byte[] bytes = new Byte[1];
res = lndConnection.readBytes(libnodave.daveDB ,311,0, 1, bytes);
if (res == 0)
MessageBox.Show(lndConnection.getS32().ToString());
else
{
mInt = 0;
MessageBox.Show("error " + res + " " + libnodave.daveStrerror(res));
}
}
Ich hoffe, jemand kann mir bei dem Problem helfen.
Ich arbeite an der Verbindung zwischen C# und einer Siemens-SPS (S7-1200). Ich habe einen Datenblock (auch bekannt als Datenbank) erstellt, in den ich lesen und schließlich schreiben muss. Die Verbindung zur SPS funktioniert, aber ich kann nichts aus ihrem Datenblock lesen. Es wird mir immer die folgende Fehlermeldung angezeigt:
Fehler 33028 Kontext wird nicht unterstützt. Step7 sagt: Funktion nicht implementiert oder Fehler im Telegramm.
Die Nummer des Datenblocks ist 311. Ich beginne beim ersten Byte und Als Länge habe ich nur 1 aufgegeben.
Ich habe auch „Blockzugriff optimieren“ deaktiviert, die Aktivierung löst dieses Problem nicht.
[code]if (0 == lndConnection.connectPLC())
{
Byte[] bytes = new Byte[1];
res = lndConnection.readBytes(libnodave.daveDB ,311,0, 1, bytes);
if (res == 0)
MessageBox.Show(lndConnection.getS32().ToString());
else
{
mInt = 0;
MessageBox.Show("error " + res + " " + libnodave.daveStrerror(res));
}
}
[/code]
Ich hoffe, jemand kann mir bei dem Problem helfen.