Cita de: #!drvy en 25 Octubre 2015, 15:37 PMTienen cierto delay al cerrarse ^^
Y si cierras los 2 a la vez ?
Saludos
Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.
Mostrar Mensajes MenúCita de: #!drvy en 25 Octubre 2015, 15:37 PMTienen cierto delay al cerrarse ^^
Y si cierras los 2 a la vez ?
Saludos
Cita de: ivancea96 en 24 Octubre 2015, 20:05 PMEthis.zombieGrid.Rows.Add(new object[] { img, ip, country, status, os });
El valor de la primera columna es "img", que es un DataGridViewImageColumn.
En primer lugar, tienes que agregar la columna al DataGridView. Luego, tendrás que pasarle una Image para añadir una fila, no un DataGridViewImageColumn.
DataGridViewImageColumn img;
img = new DataGridViewImageColumn();
Image image = Image.FromFile(Directory.GetCurrentDirectory().ToString() + @"\flag\" + country + ".png");
img.Image = image;
Task.Factory.StartNew(() => { this.zombieGrid.Rows.Add(new object[] { img, ip, country, status, os }); });
Cita de: Thryks en 4 Septiembre 2015, 22:54 PMNo no,sí que me ha quedado claro,de hecho ya he acabado todo,sólo me queda programar un par de packets y algún problema al cerrar los clientes.
En mi humilde opinion creo que no te ha quedado muy claro el comentario de engel, ya que el servidor es la maquina infectada solo necesita un hilo de ejecucion para conectarte a esa maquina desde tu maquina(cliente) asi que no deberias tener ningun problema porque con una sola conexion tendrías suficiente a menos que quieras conectarte con 3 maquinas distintas para dar instrucciones a una sola
Cita de: Eleкtro en 7 Septiembre 2015, 23:10 PMLas dos cosas,si añado varios a la vez se congela un rato,pero si añado muchos( unos 30) crashea.
En el título mencionas que se congela (se freezea) pero luego mencionas que se crashea (se finaliza anormálmente el proceso). ¿Puedes aclarar qué es lo que ocurre realmente de esas dos cosas?.
Que se congele el Form sería lo más normal, ya que si tienes el control en el thread de la UI y realizas una operación "intensiva", hasta que no termine lo que hagas en el control no puede seguir de forma regular el flujo de la UI.
Prueba a añadir los elementos de forma asíncrona en el mismo hilo, o añadir los elementos desde un hilo distinto, ambas metodologías deberían solucionar el problema del freezing.
Un ejemplo:Imports System.Threading.Tasks
Task.Factory.StartNew(Sub()
Me.zombieGrid.Rows.Add(New String() {name, ip, country, status, os})
End Sub)
En C#using System.Threading.Tasks;
Task.Factory.StartNew(() => { this.zombieGrid.Rows.Add(new string[] {name,ip,country,status,os}); })
Saludos
Cita de: kondrag_X1 en 7 Septiembre 2015, 21:02 PMNunca lo he usado,me darías un ejemplo?
ami me pasó lo mismo y lo solucioné añadiendo un delegado cuando añado una fila.
private void Form1_Load(object sender, EventArgs e)
{
Tools.doubleForm = this;
}
Tools.updateUsersForm("Client", ip, Tools.GetCountry(ip), "ok", "windows");
public static void updateUsersForm(string name, string ip, string country, string status, string os)
{
doubleForm.editGrid(name, ip, country, status, os);
}
public void editGrid(string name, string ip, string country, string status, string os)
{
this.zombieGrid.Rows.Add(new string[]{name,ip,country,status,os});
}