Dundersalt Skrevet 1. mai 2009 Del Skrevet 1. mai 2009 (endret) Hei, Nybegynner i C# så litt startproblemer.. public void start() { try { ipaddr.Text = ip; string[] MyInts = ip.Split('.'); ArrayList RealInts = new ArrayList(); for (int i = 0; i < MyInts.Length; i++) { RealInts.Add(Convert.ToInt32(((string)MyInts[i]).Trim())); } IPAddress address = new IPAddress(new byte[] { byte.Parse(MyInts[0]), byte.Parse(MyInts[1]), byte.Parse(MyInts[2]), byte.Parse(MyInts[3]) }); TcpListener slaveTcpListener = new TcpListener(address, port); ModbusSlave slave = ModbusTcpSlave.CreateTcp(slaveID, slaveTcpListener); slaveTcpListener.Start(); slave.DataStore = DataStoreFactory.CreateDefaultDataStore(); slave.DataStore.HoldingRegisters[5] = rpm; slave.DataStore.HoldingRegisters[6] = 2; slave.Listen(); } catch (Exception t) { richTextBox1.Text = "Error: " + t.Message; } button1.Text = "Simulating"; } Dette er et utdrag fra en modbus slave. Register verdiene skal være dynamiske (feks variablen rpm). Problemet er at jeg ikke kan skrive til slave.DataStore... andre steder enn nne i denne metoden. Ønsker noe som dette public void RPMinput_Scroll(object sender, EventArgs e) { slave.DataStore.HoldingRegisters[5] = rpm; } Dette gir feilen "the name "slave" does not excist in the current context. Noen som har noen tips til hvordan jeg kan få dette dynamisk? Endret 1. mai 2009 av Dundersalt Lenke til kommentar
Dundersalt Skrevet 1. mai 2009 Forfatter Del Skrevet 1. mai 2009 Uff da på tide å legge seg.... Deklarere utenfor metoden er en fin ting.. Moderator kan slette denne.. Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå