Ciao a tutti. Avendo bisogno di settare la posizione del mouse in un programma scritto in c, ho trovato una piccola libreria che permette varie funzioni sul mouse appunto.
La libreria è composta da un semplice file, senza molte pretese, con le varie funzioni in c con inclusioni inline in assembly.
Per i possibili interessati, da questo link potete scaricare la "libreria" http://www.programmersheaven.com/dow.../download.aspx .
Ed eccoci al problema:
Un esempio di queste funzioni (sono tutte molto simili) è
codice:
void GetMouseStatus ( void )
{
int button;
mouse_b1 = 0;
mouse_b2 = 0;
_asm
{
mov ax, 03
int 33h
mov [mouse_x], ecx
mov [mouse_y], edx
mov [button], ebx
}
if ( button == 1 ) mouse_b1 = 1;
if ( button == 2 ) mouse_b2 = 1;
if ( button == 3 ) {mouse_b1 = 1; mouse_b2 = 1;}
}
Io compilo con gcc su linux 64, ma il compilatore non mi riconosce la forma con cui è introdotto, e cioè
_asm { /*assembly code*/ }
ERRORI: error: expected ‘(’ before ‘{’ token ,
mouselibORIG.c:32: error: ‘mov’ undeclared (first use in this function)
eccetera....
Secondo voi da cosa può dipendere? Ho buone conoscenze sia di c che di assembly, ma a metterli insieme non sono ancora riuscito.
Grazie e buona serata,
Gio