File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -42,6 +42,37 @@ namespace Send {
4242
4343DLLAPI Send::Error __stdcall IbSendInit (Send::SendType type, Send::InitFlags flags, void * argument);
4444DLLAPI void __stdcall IbSendDestroy ();
45+
4546DLLAPI void __stdcall IbSendSyncKeyStates ();
46- DLLAPI UINT WINAPI IbSendInput (UINT cInputs, LPINPUT pInputs, int cbSize);
47- DLLAPI void __stdcall IbSendInputHook (Send::HookCode code);
47+
48+ #pragma region API 1
49+
50+ DLLAPI UINT WINAPI IbSendInput (
51+ _In_ UINT cInputs, // number of input in the array
52+ _In_reads_ (cInputs) LPINPUT pInputs, // array of inputs
53+ _In_ int cbSize // sizeof(INPUT)
54+ );
55+
56+ DLLAPI void __stdcall IbSendInputHook (Send::HookCode code);
57+
58+ #pragma endregion
59+
60+
61+ #pragma region API 2
62+
63+ DLLAPI VOID WINAPI IbSend_mouse_event (
64+ _In_ DWORD dwFlags, // MOUSEEVENTF_
65+ _In_ DWORD dx,
66+ _In_ DWORD dy,
67+ _In_ DWORD dwData,
68+ _In_ ULONG_PTR dwExtraInfo
69+ );
70+
71+ DLLAPI VOID WINAPI IbSend_keybd_event (
72+ _In_ BYTE bVk,
73+ _In_ BYTE bScan,
74+ _In_ DWORD dwFlags, // KEYEVENTF_
75+ _In_ ULONG_PTR dwExtraInfo
76+ );
77+
78+ #pragma endregion
Original file line number Diff line number Diff line change @@ -145,6 +145,44 @@ DLLAPI void __stdcall IbSendSyncKeyStates() {
145145 send->sync_key_states ();
146146}
147147
148- DLLAPI UINT WINAPI IbSendInput (UINT cInputs, LPINPUT pInputs, int cbSize) {
148+ DLLAPI UINT WINAPI IbSendInput (
149+ _In_ UINT cInputs,
150+ _In_reads_ (cInputs) LPINPUT pInputs,
151+ _In_ int cbSize
152+ ) {
149153 return send->send_input (pInputs, cInputs);
154+ }
155+
156+ DLLAPI VOID WINAPI IbSend_mouse_event (
157+ _In_ DWORD dwFlags,
158+ _In_ DWORD dx,
159+ _In_ DWORD dy,
160+ _In_ DWORD dwData,
161+ _In_ ULONG_PTR dwExtraInfo
162+ ) {
163+ INPUT input;
164+ input.type = INPUT_MOUSE;
165+ input.mi .dx = dx;
166+ input.mi .dy = dy;
167+ input.mi .mouseData = dwData;
168+ input.mi .dwFlags = dwFlags;
169+ input.mi .time = 0 ;
170+ input.mi .dwExtraInfo = dwExtraInfo;
171+ IbSendInput (1 , &input, sizeof INPUT);
172+ }
173+
174+ DLLAPI VOID WINAPI IbSend_keybd_event (
175+ _In_ BYTE bVk,
176+ _In_ BYTE bScan,
177+ _In_ DWORD dwFlags,
178+ _In_ ULONG_PTR dwExtraInfo
179+ ) {
180+ INPUT input;
181+ input.type = INPUT_KEYBOARD;
182+ input.ki .wVk = bVk;
183+ input.ki .wScan = bScan;
184+ input.ki .dwFlags = dwFlags;
185+ input.ki .time = 0 ;
186+ input.ki .dwExtraInfo = dwExtraInfo;
187+ IbSendInput (1 , &input, sizeof INPUT);
150188}
You can’t perform that action at this time.
0 commit comments