elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Como proteger una cartera - billetera de Bitcoin


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  el uso del teclado en c++
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: el uso del teclado en c++  (Leído 3,142 veces)
peterfly

Desconectado Desconectado

Mensajes: 94


Ver Perfil
el uso del teclado en c++
« en: 10 Diciembre 2011, 21:45 pm »

Hola a todos...
 
Me preguntaba si se puede acer lo siguiente en c++:

Al presionar una letra del abecedario en el teclado... que haga un enter sin tener que presionarlo

Si se puede... me podriais explicar como???

GRACIAS


En línea

Uknow

Desconectado Desconectado

Mensajes: 24


Ver Perfil
Re: el uso del teclado en c++
« Respuesta #1 en: 11 Diciembre 2011, 00:57 am »

Hola a todos...
 
Me preguntaba si se puede acer lo siguiente en c++:

Al presionar una letra del abecedario en el teclado... que haga un enter sin tener que presionarlo

Si se puede... me podriais explicar como???

GRACIAS
Puedes usar hooks o puedes hacer esto:

Código
  1. #include <iostream>
  2. #include <windows.h>
  3.  
  4. using namespace std;
  5.  
  6. char *tomar(char *);
  7. void input();
  8.  
  9. int main()
  10. {
  11.    char cad[10];
  12.  
  13.    tomar(cad);
  14.  
  15.    if(cad[0] != 0)
  16.    {
  17.     input();
  18.    }
  19.  
  20.    setbuf(stdin, NULL);
  21.    cin.get();
  22.    return 0;
  23. }
  24.  
  25. char *tomar(char *cad)
  26. {
  27.    DWORD num, modo = 0;
  28.    HANDLE input    = GetStdHandle(STD_INPUT_HANDLE);    
  29.    GetConsoleMode(input,&modo);
  30.    SetConsoleMode(input,modo&~(ENABLE_ECHO_INPUT|ENABLE_LINE_INPUT));
  31.  
  32.    ReadConsole(input,&cad[0],1, &num, NULL);
  33.    SetConsoleMode(input,modo);
  34.  
  35.    return cad;
  36. }
  37.  
  38. void input()
  39. {
  40.    keybd_event(VK_SPACE, 0, KEYEVENTF_EXTENDEDKEY | 0, 0 );
  41.  
  42. }
  43.  
Espero haberte ayudado. :)


En línea

peterfly

Desconectado Desconectado

Mensajes: 94


Ver Perfil
Re: el uso del teclado en c++
« Respuesta #2 en: 11 Diciembre 2011, 01:19 am »

no se mucho de programacion en c++, ace poco que empece a aprender... me puedes poner un ejemplo de un codigo con "hooks"???
En línea

Uknow

Desconectado Desconectado

Mensajes: 24


Ver Perfil
Re: el uso del teclado en c++
« Respuesta #3 en: 11 Diciembre 2011, 19:00 pm »

no se mucho de programacion en c++, ace poco que empece a aprender... me puedes poner un ejemplo de un codigo con "hooks"???
Alguien de este mismo foro publico esto hace un tiempo. Es un gran ejemplo:
Código
  1. #include <windows.h>
  2. #include <stdio.h>
  3.  
  4. HHOOK hHook;
  5. MSG messages;
  6.  
  7. LRESULT CALLBACK hook_teclado(int nCode, WPARAM wParam, LPARAM lParam);
  8.  
  9. int WINAPI WinMain (HINSTANCE hThisInstance,
  10.                     HINSTANCE hPrevInstance,
  11.                     LPSTR lpszArgument,
  12.                     int nCmdShow)
  13. {
  14.    hHook = SetWindowsHookEx(WH_KEYBOARD_LL, (HOOKPROC)hook_teclado, hThisInstance, NULL);
  15.  
  16.    while(GetMessage(&messages, NULL, NULL, NULL)){
  17.        TranslateMessage(&messages);
  18.        DispatchMessage(&messages);
  19.    }
  20.  
  21.    return messages.wParam;
  22.  
  23. }
  24.  
  25. LRESULT CALLBACK hook_teclado(int nCode, WPARAM wParam, LPARAM lParam){
  26.    if(nCode < 0)
  27.        return CallNextHookEx(hHook, nCode, wParam, lParam);
  28.  
  29.    if(wParam == WM_KEYDOWN){
  30.        PKBDLLHOOKSTRUCT teclado = (PKBDLLHOOKSTRUCT)lParam;
  31.  
  32.        teclado->vkCode = VK_SPACE;
  33.        printf("%c", teclado->vkCode);
  34.  
  35.        free(teclado);
  36.    }
  37.  
  38.    return CallNextHookEx(hHook, nCode, wParam, lParam);
  39. }
  40.  

Saludos.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Convertir de teclado portatil a teclado xa pc
Electrónica
qtpirex 1 3,295 Último mensaje 13 Marzo 2007, 18:09 pm
por loredo
Teclado
Windows
Sk9ITk5Z 4 2,245 Último mensaje 8 Agosto 2023, 19:11 pm
por B€T€B€
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines