public Form1() { InitializeComponent(); var builder = new System.Text.StringBuilder(); builder.Append(label1.Text); foreach (var item in Dns.GetHostEntry(Dns.GetHostName()).AddressList) { if (!(item.IsIPv6LinkLocal || item.IsIPv6Multicast || item.IsIPv6SiteLocal || item.IsIPv6Teredo) && item.ToString().Length >= 7) { if (label1.Text == "") { builder.Append(item.ToString()); } else { builder.Append(", " + item.ToString()); } ip = item; //break; } } label1.Text = builder.ToString(); label2.Text = "Device SNMP information:"; Pdt = Padapter.GetData(); Pid = Pdt.Count; ELdt = ELadapter.GetData(); ELid = ELdt.Count; CEdt = CEadapter.GetData(); button1_Click(new object(), new EventArgs()); new Server(1994); }
public Form1() { InitializeComponent(); var builder = new System.Text.StringBuilder(); foreach (var item in Dns.GetHostEntry(Dns.GetHostName()).AddressList) { if (!(item.IsIPv6LinkLocal || item.IsIPv6Multicast || item.IsIPv6SiteLocal || item.IsIPv6Teredo) && item.ToString().Length >= 7) { if (label1.Text == "") { label1.Text = item.ToString(); } else { label1.Text += ", " + item.ToString(); } ip = item; //break; } } label2.Text = "Device SNMP information:"; Pdt = Padapter.GetData(); Pid = Pdt.Count; ELdt = ELadapter.GetData(); ELid = ELdt.Count; CEdt = CEadapter.GetData(); Edt = Eadapter.GetData(); printersDataGridView.DataSource = Pdt; currentErorrsDataGridView.DataSource = CEdt; button1_Click(new object(), new EventArgs()); new Server(1994); msngcentr.Parent = this; msngcentr.Show(); msngcentr.BackColor = System.Drawing.Color.Coral; msngcentr.Location = new System.Drawing.Point(871, 30); msngcentr.Size = new System.Drawing.Size(260, 353); }
private string combine(int id) { try { var ip = Pdt.FindByid(id).ip.Trim(); var p = new cprinter { ip = ip, id = id }; var mod = SNMPget(ip, new string[] { "1.3.6.1.2.1.1.1.0" })[0]; if (mod == null) { return(""); } else if (mod.Contains("Samsung")) { p.Model = model.Samsung; } else if (mod.Contains("KYOCERA")) { p.Model = model.Kyocera; } else if (mod.Contains("HP")) { p.Model = model.HP; } if (p.Model == model.Kyocera) { var result = SNMPget(ip, new string[] { "1.3.6.1.2.1.25.3.2.1.3.1", "1.3.6.1.4.1.1347.43.10.1.1.12.1.1", "1.3.6.1.2.1.25.3.5.1.2.1" }); p.name = "Kyocera " + result[0]; p.count = result[1]; p.error = ErrorMessageText[(int)result[2][0]]; } else if (p.Model == model.HP) { var result = SNMPget(ip, new string[] { "1.3.6.1.2.1.25.3.2.1.3.1", "1.3.6.1.4.1.11.2.3.9.4.2.1.4.1.2.5.0", "1.3.6.1.2.1.25.3.5.1.2.1" }); p.name = result[0]; p.count = result[1]; p.error = ErrorMessageText[Convert.ToInt32(result[2])]; } else if (p.Model == model.Samsung) { var result = SNMPget(ip, new string[] { "1.3.6.1.2.1.25.3.2.1.3.1", "1.3.6.1.2.1.25.3.5.1.2.1" }); p.name = result[0]; p.count = "\"Can't extract the number of sheets\""; p.error = ErrorMessageText[Convert.ToInt32(result[1])]; } if (p.name != null && p.count != null && p.name != "" && p.count != "") { var good = false; foreach (printersDataSet.PrintersRow item in Pdt.Rows) { if (item.ip.Trim() == p.ip) { good = true; break; } } /* УБрали автоматическое добавление принтеров в базу * * if (!good) * { * IPdt.AddPrintersRow(IPid, p.ip, p.name); * IPadapter.Insert(IPid++, p.ip, p.name); * }*/ if (p.error != "no error" && p.error != null) { good = true; foreach (printersDataSet.CurrentErorrsRow item in CEdt.Rows) { if (item.printer_id == p.id) { good = false; break; } } if (good) { ELadapter.Insert(p.id, DateTime.Now, Convert.ToInt32(p.count), p.error ?? ""); CEadapter.Insert(p.id, p.error ?? ""); CEdt.AddCurrentErorrsRow(p.id, p.error ?? ""); } } else { good = true; foreach (printersDataSet.CurrentErorrsRow item in CEdt.Rows) { if (item.printer_id == p.id) { good = false; var result = SNMPget(ip, new string[] { "1.3.6.1.2.1.25.3.5.1.2.1" })[0]; if (item.Error == "no tonner" && (p.error = SNMPget(ip, new string[] { "1.3.6.1.2.1.25.3.5.1.2.1" })[0]) == "0") { Thread.Sleep(10000); if (item.Error == "no tonner" && (p.error = SNMPget(ip, new string[] { "1.3.6.1.2.1.25.3.5.1.2.1" })[0]) == "0") { var i_am_here = true; } } break; } } if (!good) { CEadapter.Delete(p.id); CEdt = CEadapter.GetData(); ELadapter.Insert(p.id, DateTime.Now, Convert.ToInt32(p.count), ErrorMessageText[Convert.ToInt32(p.error)]); } } return(p.ip + " " + p.name + " " + p.count + " " + p.error + "\n"); } } catch (Exception) { //throw; } return(""); }