Keb
Level-1
- Beiträge
- 15
- Reaktionspunkte
- 0
-> Hier kostenlos registrieren
Und wieder ein "Hallöchen" an alle!
Mein "Problem" ich bin am erstellen eines "Diagnosetools" in C# zum lesen und schreiben verschiedener Bereiche einer SPS.
Ich erstelle das mit Hilfe der LibNoDave Bibliothek.
Nun möchte ich aber, um meinen Code so gering und übersichtlich wie möglich zu halten, den Aufruf der Read/Write Befehle variabel gestalten, weiß aber nicht, wie ich das in C# implementieren kann.
(Ich arbeite erst seit ein paar Tagen mit C#:sad
Das ganze sieht im Moment so aus:
Und ich möchte so was in die Richtung haben(der nächste Code funktioniert(natürlich)nicht):
Geht sowas in die Art überhaupt? Wenn ja wie lässt sich das implementieren?
Wenn nein, was für Möglichkeiten hätte ich denn noch?
Ich danke euch schon jetzt für Eure Mühe
Mein "Problem" ich bin am erstellen eines "Diagnosetools" in C# zum lesen und schreiben verschiedener Bereiche einer SPS.
Ich erstelle das mit Hilfe der LibNoDave Bibliothek.
Nun möchte ich aber, um meinen Code so gering und übersichtlich wie möglich zu halten, den Aufruf der Read/Write Befehle variabel gestalten, weiß aber nicht, wie ich das in C# implementieren kann.
(Ich arbeite erst seit ein paar Tagen mit C#:sad

Das ganze sieht im Moment so aus:
Code:
private void button1_Click(object sender, EventArgs e)
{
try
{
tbReadBit.Text = string.Empty;
byte[] buffer = new byte[1];
int res = dc.readBits(libnodave.daveDB, (int)nDBBit.Value, ByteBitToBit((int)nByteBit.Value, (int)nBitBit.Value), 1, buffer);
if (res != 0)
throw new Exception("unable to read");
tbReadBit.Text = buffer[0].ToString();
}
catch (Exception ex)
{
cbBit.Checked = false;
MsgBox(ex);
}
}
Und ich möchte so was in die Richtung haben(der nächste Code funktioniert(natürlich)nicht):
Code:
private void button1_Click(object sender, EventArgs e)
{
string TempStr = "dave.DB";
// string TempStr = "dave.Flags";
// string TempStr = "dave.Input";
// string TempStr = "dave.Output";
try
{
tbReadBit.Text = string.Empty;
byte[] buffer = new byte[1];
int res = dc.readBits(libnodave.TempStr, (int)nDBBit.Value, ByteBitToBit((int)nByteBit.Value, (int)nBitBit.Value), 1, buffer);
if (res != 0)
throw new Exception("unable to read");
tbReadBit.Text = buffer[0].ToString();
}
catch (Exception ex)
{
cbBit.Checked = false;
MsgBox(ex);
}
}
Geht sowas in die Art überhaupt? Wenn ja wie lässt sich das implementieren?
Wenn nein, was für Möglichkeiten hätte ich denn noch?
Ich danke euch schon jetzt für Eure Mühe
