Foro de elhacker.net

Programación => .NET (C#, VB.NET, ASP) => Mensaje iniciado por: kargarof en 4 Julio 2008, 12:44 pm



Título: MOUSEEVENTF
Publicado por: kargarof en 4 Julio 2008, 12:44 pm
Tengo una duda existencial.

Cuando defino lo sigueinte:
Código:
private const int MOUSEEVENTF_LEFTDOWN = 0x02;
private const int MOUSEEVENTF_LEFTUP = 0x04;
private const int MOUSEEVENTF_RIGHTDOWN = 0x08;
private const int MOUSEEVENTF_RIGHTUP = 0x10;
private const int MOUSEEVENTF_MOVE = 0x0001;

Veis que pongo 0x0... y lo siguiente. Esto me han dicho que es así y funciona pero quiero saber porque algunos ponen 0x000000002 y otros 0x02. Me gustaría saber exactamente la función que tienen esos números y porque distan tantos uno de otros.

Gracias.


Título: MOUSEEVENTF
Publicado por: kargarof en 7 Julio 2008, 18:05 pm
Relacionado con el tema expongo otro problema con los eventos del mouse aqui mismo para no tener que abrir un nuevo hilo.

Ya he conseguido que seleccione una zona del picturebox automaticamente sin tocar nada. El problema me viene cuando hace más de una selección en la imagen.

Código:
if (var == 0)
{
          Cursor.Position = new Point(x, y);
          mouse_event(MOUSEEVENTF_LEFTDOWN, x, y, 0, 0);
          mouse_event(MOUSEEVENTF_MOVE, 170, 7, 0, 0);
          mouse_event(MOUSEEVENTF_LEFTUP, x, y, 0, 0);
}
else if (var == 1)
{
          Cursor.Position = new Point(x, y);
          mouse_event(MOUSEEVENTF_LEFTDOWN, x, y, 0, 0);
          mouse_event(MOUSEEVENTF_MOVE, 40, 7, 0, 0);
          mouse_event(MOUSEEVENTF_LEFTUP, x, y, 0, 0);
}

Esto son dos de los varios que realizo, la cuestión está en que en el segundo, tercero, etc... Las zonas que le mando que seleccione son más grandes y cojen información que no necesito. Si alguien tiene alguna idea de por qué puede ser o necesita que le explique algo más o más info, que me lo pida. Gracias.


Título: Re: MOUSEEVENTF
Publicado por: zheo en 22 Julio 2008, 12:40 pm
Tengo una duda existencial.

Cuando defino lo sigueinte:
Código:
private const int MOUSEEVENTF_LEFTDOWN = 0x02;
private const int MOUSEEVENTF_LEFTUP = 0x04;
private const int MOUSEEVENTF_RIGHTDOWN = 0x08;
private const int MOUSEEVENTF_RIGHTUP = 0x10;
private const int MOUSEEVENTF_MOVE = 0x0001;

Veis que pongo 0x0... y lo siguiente. Esto me han dicho que es así y funciona pero quiero saber porque algunos ponen 0x000000002 y otros 0x02. Me gustaría saber exactamente la función que tienen esos números y porque distan tantos uno de otros.

Gracias.

¿ Es lo mismo 5 que 0000000005 que 000005 ?
Esa es la diferencia entre poner 0x02 y 0x00000002 pero en hexadecimal (el 0x es el que indica que los dígitos que hay detras corresponden a un número en hexadecimal)