Hallo zusammen,
Es gibt in meinen my.settings mehrere Variablen unter denen eine bestimmte Einstellung als String abgelegt werden soll. Die Variablen lauten my.settings.ma54_aktiv , my.settings.ma55_aktiv usw.
Nun lasse ich bei meinem Programmstart prüfen ob die Maschinen im Netzwerk erreichbar sind. Dies geschieht mittels einer Sub, die ich nacheinander mit den ensprechenden Maschinennummern als übergebene Variable aufrufe.
Nun dachte ich, dass ich dabei auch den Namen der my.settings Variable flexibel zusammenbauen kann, was rein optisch mittels Kontrollausgabe in einer Textbox auch funktioniert. Aber es werden keine Änderungen / neuen Werte in die my.settings Variable gespeichert. Als Gegenprobe habe ich mal direkt einen Test mit: my.settings.ma54_aktiv = "an" gemacht, was wunderbar klappte.
Schaut euch mal den Code-Ausschnitt an, vielleicht können wir das lösen?!
Spoiler anzeigen
Es gibt in meinen my.settings mehrere Variablen unter denen eine bestimmte Einstellung als String abgelegt werden soll. Die Variablen lauten my.settings.ma54_aktiv , my.settings.ma55_aktiv usw.
Nun lasse ich bei meinem Programmstart prüfen ob die Maschinen im Netzwerk erreichbar sind. Dies geschieht mittels einer Sub, die ich nacheinander mit den ensprechenden Maschinennummern als übergebene Variable aufrufe.
Nun dachte ich, dass ich dabei auch den Namen der my.settings Variable flexibel zusammenbauen kann, was rein optisch mittels Kontrollausgabe in einer Textbox auch funktioniert. Aber es werden keine Änderungen / neuen Werte in die my.settings Variable gespeichert. Als Gegenprobe habe ich mal direkt einen Test mit: my.settings.ma54_aktiv = "an" gemacht, was wunderbar klappte.
Schaut euch mal den Code-Ausschnitt an, vielleicht können wir das lösen?!
VB.NET-Quellcode
- Public Sub maschinen_check(ByRef ma_nummer As Integer)
- Select Case ma_nummer
- Case 54
- HTTPAdresse = My.Settings.ma_name54
- maschineaktiv = "My.Settings.ma" & ma_nummer & "_aktiv"
- Case 55
- HTTPAdresse = My.Settings.ma_name55
- maschineaktiv = "My.Settings.ma" & ma_nummer & "_aktiv"
- Case 56
- HTTPAdresse = My.Settings.ma_name56
- maschineaktiv = "My.Settings.ma" & ma_nummer & "_aktiv"
- Case 29
- HTTPAdresse = My.Settings.ma_name29
- maschineaktiv = "My.Settings.ma" & ma_nummer & "_aktiv"
- Case 30
- HTTPAdresse = My.Settings.ma_name30
- maschineaktiv = "My.Settings.ma" & ma_nummer & "_aktiv"
- Case 31
- HTTPAdresse = My.Settings.ma_name31
- maschineaktiv = "My.Settings.ma" & ma_nummer & "_aktiv"
- Case 32
- HTTPAdresse = My.Settings.ma_name32
- maschineaktiv = "My.Settings.ma" & ma_nummer & "_aktiv"
- End Select
- 'prüfen ob jeweilige URL überhaupt erreichbar ist
- lbl_status.Text = "Maschine " & ma_nummer & " wird geprüft..."
- 'wenn erreichbar "OK" setzen
- If URLcheck(HTTPAdresse, ma_nummer) = True Then
- Controls("grp_maschinen").Controls("lbl_chk" & ma_nummer).ForeColor = Color.Green
- Controls("grp_maschinen").Controls("lbl_chk" & ma_nummer).Text = "OK"
- MsgBox("aktuelle maschineaktiv Variable lautet: " & maschineaktiv) 'hier steht auch die korrekte Variable für die jeweilige Maschine, bspw. my.settings.ma54_aktiv!!!
- maschineaktiv = "an" 'aber hier schlägt der Versuch fehlt, einen Wert als String an diese my.setting zu übergeben / zu speichern
- My.Settings.Save()
- ...
==> seid .net zueinander <==