Ecco un programma che simula il comportamento del mouse con la tastiera.
Il motivo della creazione? Semplice, quando le batterie del mouse mi piantano in asso rosico troppo...
link al download: (source + exe): girex.altervista.org/varie/download/key2mouse.rar
[/code]
Codice:
/*
Key to Mouse v0.1
Simulazione del comportamento del mouse tramite tastiera.
Autore: __GiReX__
Linguaggio: C
Data: 8/01/12
Os: Windows
Homepage:
Per muovere il cursore del mouse tenere premuto [space]
più le freccette direzionali del numpad (Bloc Num: on)
Mouse sx click: [space] + [ctrl]
Mouse dx click: [space] + [alt]
[space] + [F12] per terminare l'esecuzione del programma
*/
#include <windows>
#include <stdio>
POINT coord; /* struct contenente le coordinate xy del mouse */
void left_click();
void right_click();
void move_up();
void move_down();
void move_left();
void move_right();
void start_prog()
{
MessageBox(NULL, "Key to Mouse v0.1 avviato come demone.\n" /* start message */
"Il programma rimarrà in background.\n"
"Si consiglia di leggere il file istruzioni.txt",
"Key To Mouse v0.1 by __GiReX__",
MB_OK);
HWND invisibile = FindWindow("ConsoleWindowClass", NULL); /* nascondo la finestra */
ShowWindow(invisibile, SW_HIDE);
}
int main()
{
start_prog();
while(!(GetKeyState(VK_SPACE) < 0 && GetAsyncKeyState(VK_F12) < 0))
{
if(GetKeyState(VK_SPACE) < 0)
{
if(GetKeyState(VK_CONTROL) < 0) left_click();
if(GetKeyState(VK_MENU) < 0) right_click();
if(GetKeyState(VK_NUMPAD8) < 0) move_up();
if(GetKeyState(VK_NUMPAD2) < 0) move_down();
if(GetKeyState(VK_NUMPAD6) < 0) move_right();
if(GetKeyState(VK_NUMPAD4) < 0) move_left();
}
Sleep(20);
}
return 0;
}
void left_click()
{
mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0);
while(GetKeyState(VK_CONTROL) <0> sposto */
SetCursorPos(coord.x, coord.y - 5);
}
void move_down()
{
GetCursorPos(&coord);
SetCursorPos(coord.x, coord.y + 5);
}
void move_right()
{
GetCursorPos(&coord);
SetCursorPos(coord.x + 5, coord.y);
}
void move_left()
{
GetCursorPos(&coord);
SetCursorPos(coord.x - 5, coord.y);
}
Il motivo della creazione? Semplice, quando le batterie del mouse mi piantano in asso rosico troppo...
link al download: (source + exe): girex.altervista.org/varie/download/key2mouse.rar
[/code]
Codice:
/*
Key to Mouse v0.1
Simulazione del comportamento del mouse tramite tastiera.
Autore: __GiReX__
Linguaggio: C
Data: 8/01/12
Os: Windows
Homepage:
Perfavore,
Entra
oppure
Registrati
per vedere i Link!
Per muovere il cursore del mouse tenere premuto [space]
più le freccette direzionali del numpad (Bloc Num: on)
Mouse sx click: [space] + [ctrl]
Mouse dx click: [space] + [alt]
[space] + [F12] per terminare l'esecuzione del programma
*/
#include <windows>
#include <stdio>
POINT coord; /* struct contenente le coordinate xy del mouse */
void left_click();
void right_click();
void move_up();
void move_down();
void move_left();
void move_right();
void start_prog()
{
MessageBox(NULL, "Key to Mouse v0.1 avviato come demone.\n" /* start message */
"Il programma rimarrà in background.\n"
"Si consiglia di leggere il file istruzioni.txt",
"Key To Mouse v0.1 by __GiReX__",
MB_OK);
HWND invisibile = FindWindow("ConsoleWindowClass", NULL); /* nascondo la finestra */
ShowWindow(invisibile, SW_HIDE);
}
int main()
{
start_prog();
while(!(GetKeyState(VK_SPACE) < 0 && GetAsyncKeyState(VK_F12) < 0))
{
if(GetKeyState(VK_SPACE) < 0)
{
if(GetKeyState(VK_CONTROL) < 0) left_click();
if(GetKeyState(VK_MENU) < 0) right_click();
if(GetKeyState(VK_NUMPAD8) < 0) move_up();
if(GetKeyState(VK_NUMPAD2) < 0) move_down();
if(GetKeyState(VK_NUMPAD6) < 0) move_right();
if(GetKeyState(VK_NUMPAD4) < 0) move_left();
}
Sleep(20);
}
return 0;
}
void left_click()
{
mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0);
while(GetKeyState(VK_CONTROL) <0> sposto */
SetCursorPos(coord.x, coord.y - 5);
}
void move_down()
{
GetCursorPos(&coord);
SetCursorPos(coord.x, coord.y + 5);
}
void move_right()
{
GetCursorPos(&coord);
SetCursorPos(coord.x + 5, coord.y);
}
void move_left()
{
GetCursorPos(&coord);
SetCursorPos(coord.x - 5, coord.y);
}
Ultima modifica da un moderatore: