Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

using mouse with sendInput in C

Tags:

c

winapi

I would like to programmatically move and click the mouse using the windows API in C. I have searched google high and low and can't find any sendInput tutorials for plain C. All I can find is C#/C++. I have little experience with the windows API and would love a great tutorial that would cover sendInput! Thanks!

like image 314
Andrew Carter Avatar asked Dec 27 '10 16:12

Andrew Carter


1 Answers

Hans Passant was right with C++ code being almost identical. Here's what I ended up with:

INPUT input;
input.type = INPUT_MOUSE;
input.mi.mouseData = 0;
input.mi.dx = x * (65536 / GetSystemMetrics(SM_CXSCREEN)); //x being coord in pixels
input.mi.dy =  y * (65536 / GetSystemMetrics(SM_CYSCREEN)); //y being coord in pixels
input.mi.dwFlags = MOUSEEVENTF_ABSOLUTE | MOUSEEVENTF_MOVE;
SendInput(1, &input, sizeof(input));
like image 90
Andrew Carter Avatar answered Oct 17 '22 05:10

Andrew Carter