none
Pasar de los eventos de Windows RRS feed

  • Pregunta


  • Uff, esta va a ser mi primera pregunta y no se si la sabré plantearla correctamente ;-).

    La idea sería:


    Es posible hacer un formulario windows que pueda detectar el click del ratón pero no haga que se pierda el foco de ninguna otra aplicación que se este ejecutando en ese momento?

    Yo había pensado en directX o no se si sería posible con WPF.

    Haber que soluciones me podéis aconsejar y si es posible.

    PD:

    Prometo marcar la pregunta como correcta si me sirve la propuesta.


    Saludos.

    viernes, 4 de enero de 2008 10:33

Todas las respuestas

  • Marc buenas

    pues a ver si te entiendo, tu lo que quieres hacer es algo "similar" a un servicio de windows que capture los eventos de los dipositivos HDI (Human Device Interface) y ... pues tu sabras que haces con esta información
    te recomiendo 2 opciones para esto:

    1. utilizar WMI, en Background y solo filtrar por los eventos que a ti te interesan, el click del mouse por ejemplo
    2. APIs de Windows a capon, un poco más complicado que el anterior pero mas robusto.

    ¿quieres un ejemplo?


    Saludos
    El Bruno
    www.elbruno.com

    viernes, 4 de enero de 2008 10:47
  • Hola Marc,

     

    Yo utilizo este método para ello:

    Bloque de código

    protected override bool ProcessDialogKey(Keys keyData)

    {

    if (keyData == Keys.NumPad0) {hago algo;}

    }

     

    Ya lo pones en tu aplicación como quieras , este método solo detecta las teclas, es decir que no te cambia la pantalla ni nada por el estilo.

     

    Un Saludo !!!

     

     

     

    viernes, 4 de enero de 2008 10:48
    Moderador

  • Gracias Fran y Bruno, NO pretendo capturar los eventos del Teclado .

    La idea sería que en la misma máqina mientras una persona trabaja en otro monitor otra pueda consultar información visual XD.

    Tu idea Bruno parece muy interesante, si me puedes pasar un ejemplo te lo agradecería.

    Saludos.
    viernes, 4 de enero de 2008 10:56
  • Ya sabía que este tema era bastante peliagudo, pero por probar no perdía nada.

     

    Después de jugar un poco con WndProc y los Mensajes de windows me he dado cuenta que lo que pido es imposible

     

    Pero gracias a todos por intentar ayudar.

     

    Saludos

     

     

    domingo, 6 de enero de 2008 0:53
  • Podrías generar una aplicación .exe con un control que se llama backgroundworker que lea la actividad de los dispositivos y que este background worker envie un dato al .exe(el cual genera una base de datos en un archivo de texto) y n tiempo despues lo envie a travez de Internet a tu equipo..., en verdad dudo que encuentres mucha información al respecto dado que lo que intentas hacer es un fundamento de los troyanos u otros software mal intencionado.

     

    Saludos,

     

    miércoles, 23 de enero de 2008 3:21
  • Lo que intentaba hacer no es lo que estáis pensando ninguno , no pretendía capturar los procesos de otra aplicación o del sistema.

     

    Mi intención es que se pudieran utilizar dos programas simultáneamente en el mismo Windows, pero eso parece que va en contra de la filosofía del propio Windows.

     

    Intentaba con un mismo PC y dos monitores poder  utilizar dos aplicaciones al mismo tiempo y eso quiere decir al mismo tiempo!, uno con el teclado o ratón y el otro con pantalla táctil. Pero con el sistema de mensajes de Windows no creo que sea posible.

     

    Saludos. 

     

    miércoles, 23 de enero de 2008 8:14