private void Tim_Tick(object sender, EventArgs e) { TimeSpan ts; try { Hora.Text = HoraNY(); Global++; if (Global >= 150) { Global = 0; Send(Sc, "$" + (char)25 + "\r", true); BD.BD("SELECT * FROM Noticias ORDER BY fecha ASC"); DTN = BD.Tabla("Noticias"); //DTN = BD.Tabla("Noticias","SELECT * FROM Noticias ORDER BY "); if (DTN.Rows.Count > 0) { if (TNotP.Text != DTN.Rows[0].ItemArray[1].ToString()) { notn = true; Tm = false; Um = false; NT = false; compvent = false; } TNotP.Text = DTN.Rows[0].ItemArray[1].ToString(); HN = Convert.ToDateTime(DTN.Rows[0].ItemArray[2].ToString()); ts = HN - FechNY2(); if (ts.TotalSeconds < 0) { BD.BD("DELETE FROM Noticias WHERE Fecha<'" + string.Format("{0:yyyy/MM/dd HH:mm}", FechNY2()) + "'"); System.Threading.Thread.Sleep(200); BD.Open(xml.VConex, true, xml.VTablas); DGNot.DataSource = BD.Tabla("Noticias"); } } else { TNotP.Text = "No Hay noticia"; } } if (notn) { ts = HN - FechNY2(); if (ts.Hours == 0 && ts.Minutes == 3 && ts.Seconds == 0 && !Tm) { B3Min_Click(null, null); Tm = true; } if (ts.Hours == 0 && ts.Minutes == 1 && ts.Seconds == 0 && !Um) { B1Min_Click(null, null); Um = true; } if (ts.Hours == 0 && ts.Minutes == 0 && ts.Seconds == -15 && !NT) { notn = false; NT = true; if (!compvent) { BNoTrade_Click(null, null); } } } } catch (Exception ex) { Funciones.Log(System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase), ex.Message + ex.StackTrace.Substring(ex.StackTrace.Length - 11)); } }
public void ReadCallback(IAsyncResult ar) { String content = String.Empty; string Name = string.Empty; string pasw = string.Empty; // Retrieve the state object and the handler socket // from the asynchronous state object. Usuario Usu = (Usuario)ar.AsyncState; StateObject state = Usu.VSc; Socket handler = state.workSocket; state.sb.Clear(); // Read data from the client socket. try { int bytesRead = handler.EndReceive(ar); if (bytesRead > 0) { // There might be more data, so store the data received so far. state.sb.Append(Encoding.GetEncoding(437).GetString( state.buffer, 0, bytesRead)); // Check for end-of-file tag. If it is not there, read // more data. content = state.sb.ToString(); if (content.IndexOf(/*(char)22 + "$\r"*/ "#\r") > -1) { // All the data has been read from the // client. Display it on the console. switch (Funciones.Login(Clientes, BD, content, ref Name, ref pasw)) { case 0: { Send(handler, ("/*0*/#\r"), false); } break; case 1: { Send(handler, ("/*1*/#\r"), false); } break; case 2: { Clientes.Agregar(Name, state); AList(Clientes.VNombres); Send(handler, ("/*2" + version + "*/#\r"), true); InTR(Name + " se ha unido a la charla"); InLC((LUsuarios.Items.Count - 1).ToString()); if (BDesactiva.Text == "Activa Chat") { Send(handler, ("$" + (char)18 + "\r"), false); Thread.Sleep(50); } if (PlanTrabajo.Length > 5 || DGNot.Rows.Count > 0) { Send(handler, (PlanTrabajo + (char)7 + Noticias() + (char)11 + "&\r"), false); } state.sb.Clear(); handler.BeginReceive(state.buffer, 0, StateObject.BufferSize, 0, new AsyncCallback(ReadCallback), Clientes.ItemArray(Clientes.Length - 1)); } break; case 4: { Send(handler, ("/*4*/#\r"), false); } break; } return; } else { if (content.IndexOf(/*(char)22 + "$\r"*/ "&\r") > -1) { if (BDesactiva.Text == "Desactiva Chat") { InTR(Usu.VNombre + " dice:" + (char)31 + "\n" + content.Substring(0, content.Length - 2)); Send(handler, (Usu.VNombre + " dice:" + (char)31 + "\n" + content.Substring(0, content.Length - 2) + "&\r"), true); } else { Send(handler, ("$" + (char)18 + "\r"), false); } handler.BeginReceive(state.buffer, 0, StateObject.BufferSize, 0, new AsyncCallback(ReadCallback), Usu); } else { handler.BeginReceive(state.buffer, 0, StateObject.BufferSize, 0, new AsyncCallback(ReadCallback), Usu); } } } else { Usu.VSc.workSocket.Shutdown(SocketShutdown.Both); Usu.VSc.workSocket.Disconnect(true); if (Usu.VNombre != "") { InTR(""); Clientes.Eliminar(Usu); AList(Clientes.VNombres); Send(handler, (" &\r"), true); Send(handler, ("/*2" + Clientes.VPNombres + "*/#\r"), true); LCantidad.Text = (LUsuarios.Items.Count - 1).ToString(); } } } catch (Exception es) { try { Send(handler, ("/*3*/\r"), false); } catch (Exception ex) { Funciones.Log(System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase), ex.Message + ex.StackTrace.Substring(ex.StackTrace.Length - 11)); } } }
public void Open(bool Ac, ref bool VIP) { int Cont; Access = Ac; try { XmlDocument Archivo = new XmlDocument(); //Crea un Objeto XmlDocument. Archivo.Load("Config.XML"); //Lee el archivo. XmlNodeList Ruta = Archivo.GetElementsByTagName("RutaDB"); //Hace una lista de elementos contenidos por la etiqueta RutaDB XmlNodeList Listar = ((XmlElement)Ruta[0]).GetElementsByTagName("DB"); //Hace una lista de elementos contenidos por la etiqueta DB en la primera etiqueta RutaDB encontrada. foreach (XmlElement Nodo in Listar) //Recorre los elementos en la lista "Listar" { if (Access) { Conex = "Provider=Microsoft.ACE.OLEDB.12.0; Data Source=";//Crea la ConexionString Conex += Nodo.GetElementsByTagName("Ruta").Item(0).InnerText + ";Jet OLEDB:Database Password="******"Clave").Item(0).InnerText) + ";"; } else { Conex = "data source =" + Nodo.GetElementsByTagName("Ruta").Item(0).InnerText;//Crea la ConexionString Conex += "; initial catalog =" + Nodo.GetElementsByTagName("Nombre").Item(0).InnerText + "; user id ="; Conex += Nodo.GetElementsByTagName("Usuario").Item(0).InnerText + "; password ="******"Clave").Item(0).InnerText); } } XmlNodeList UR = Archivo.GetElementsByTagName("URL"); //Hace una lista de elementos contenidos por la etiqueta URL URL = ((XmlElement)UR[0]).GetElementsByTagName("web").Item(0).InnerText; //Hace una lista de elementos contenidos por la etiqueta Tabla en la primera etiqueta RutaDB encontrada. Ports = ((XmlElement)UR[0]).GetElementsByTagName("PORTSER").Item(0).InnerText; //Hace una lista de elementos contenidos por la etiqueta Tabla en la primera etiqueta RutaDB encontrada. XmlNodeList Tablas = Archivo.GetElementsByTagName("Tablas"); //Hace una lista de elementos contenidos por la etiqueta Tablas XmlNodeList LisTablas = ((XmlElement)Tablas[0]).GetElementsByTagName("Tabla"); //Hace una lista de elementos contenidos por la etiqueta Tabla en la primera etiqueta RutaDB encontrada. TablasDB = new string[LisTablas.Count]; Cont = 0; foreach (XmlElement Nodo in LisTablas)//Recorre los elementos en la lista "Listar" { TablasDB[Cont] = Nodo.GetElementsByTagName("Nombre").Item(0).InnerText; Cont++; } XmlNodeList VI = Archivo.GetElementsByTagName("Servicios"); //Hace una lista de elementos contenidos por la etiqueta URL VIP = Convert.ToBoolean(((XmlElement)VI[0]).GetElementsByTagName("VIP").Item(0).InnerText); //Hace una lista de elementos contenidos por la etiqueta Tabla en la primera etiqueta RutaDB encontrada. XmlNodeList Ho = Archivo.GetElementsByTagName("Mail"); //Hace una lista de elementos contenidos por la etiqueta URL Host = ((XmlElement)Ho[0]).GetElementsByTagName("Host").Item(0).InnerText; //Hace una lista de elementos contenidos por la etiqueta Tabla en la primera etiqueta RutaDB encontrada. Port = ((XmlElement)Ho[0]).GetElementsByTagName("Port").Item(0).InnerText; //Hace una lista de elementos contenidos por la etiqueta Tabla en la primera etiqueta RutaDB encontrada. email = ((XmlElement)Ho[0]).GetElementsByTagName("Email").Item(0).InnerText; //Hace una lista de elementos contenidos por la etiqueta Tabla en la primera etiqueta RutaDB encontrada. clave = ((XmlElement)Ho[0]).GetElementsByTagName("Clave").Item(0).InnerText; //Hace una lista de elementos contenidos por la etiqueta Tabla en la primera etiqueta RutaDB encontrada. } catch (Exception ex) { System.Windows.Forms.MessageBox.Show("No se pudo cargar el archivo de configuración"); Funciones.Log(Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase), ex.Message + ex.StackTrace.Substring(ex.StackTrace.Length - 11)); } }