-> Hier kostenlos registrieren
Hallo
Ich will die Daignosemeldung eines DP slaves einer S7300 Station mit S7 Command Interface auslesen, wenn slave online ist aber Fehler ausgibt.
Dazu habe ich folgenden Code geschrieben. Ich verwende dazu die Funktion GetOnlineDiagBuffer. Für jeden slave bekomme ich den Rückgabewert "-1". Es wird nur eine leere Textdatei in dem angegebenen Pfad definiert. Aber obwohl einer meiner Slaves online ist und Fehler meldet, wird nichts angezeigt.
Mache ich etwas falsch?
public void Upload_Station()
{
string date = DateTime.Now.ToString("yyyy'-'MM'-'dd'T'HH'-'mm'-'ss");
string path = @"C:\temp\" + date;
try
{
ISimatic4 S = new Simatic();
IS7Project3 Pro;
IS7Slave3 S7Slave;
IS7Station3 Station;
IS7SubSystem SubSys;
S.UnattendedServerMode = true;
SubSys = S.Projects["MyProject"].Stations["SIMATIC 300(1)"].SubSystems[1];
var count = 0;
//**************************
foreach (S7Slave3 slaveEach in SubSys.Slaves)
{
count += 1;
DiagResult =slaveEach.GetOnlineDiagBuffer(@"C:\temp\diag" + count + ".txt");
}
//S.Close();
}
catch (Exception ex)
{
//Error handling
}
}
Ich will die Daignosemeldung eines DP slaves einer S7300 Station mit S7 Command Interface auslesen, wenn slave online ist aber Fehler ausgibt.
Dazu habe ich folgenden Code geschrieben. Ich verwende dazu die Funktion GetOnlineDiagBuffer. Für jeden slave bekomme ich den Rückgabewert "-1". Es wird nur eine leere Textdatei in dem angegebenen Pfad definiert. Aber obwohl einer meiner Slaves online ist und Fehler meldet, wird nichts angezeigt.
Mache ich etwas falsch?
public void Upload_Station()
{
string date = DateTime.Now.ToString("yyyy'-'MM'-'dd'T'HH'-'mm'-'ss");
string path = @"C:\temp\" + date;
try
{
ISimatic4 S = new Simatic();
IS7Project3 Pro;
IS7Slave3 S7Slave;
IS7Station3 Station;
IS7SubSystem SubSys;
S.UnattendedServerMode = true;
SubSys = S.Projects["MyProject"].Stations["SIMATIC 300(1)"].SubSystems[1];
var count = 0;
//**************************
foreach (S7Slave3 slaveEach in SubSys.Slaves)
{
count += 1;
DiagResult =slaveEach.GetOnlineDiagBuffer(@"C:\temp\diag" + count + ".txt");
}
//S.Close();
}
catch (Exception ex)
{
//Error handling
}
}