Here is one arx command GETKEY with a very basic (Mickey Mouse) code - that grabs some of the windows messages - did not found the value for the shift key, so it is not there.
See, if works with the other messages - The problem it is going to be the same as the express tools, what happen if no one end up updating the project to work with any future AutoCAD release?...
Usage:
Call the command GETKEY and for example leave the mouse in one place - if it is moved it will exit and print the message "Mouse move..." if a key is press down... it will exit and print the message... etc.
#include<windows.h>
using namespace std;
void getKeyMessages()
{
MSG msg;
int status;
while ((status = ::GetMessage (&msg, 0, 0, 0)) != 0)
{
if (status == -1)
return;
switch(msg.message)
{
case WM_KEYDOWN:
acutPrintf(_T("\nKeydown... now stop..."));
return;
break;
case WM_MOUSEMOVE:
acutPrintf(_T("\nMouse move.."));
return;
break;
case WM_LBUTTONDOWN:
acutPrintf(_T("\nLeft Button Down..."));
return;
break;
case WM_RBUTTONDOWN:
acutPrintf(_T("\nRight Button Down..."));
return;
break;
case WM_MBUTTONDBLCLK:
acutPrintf(_T("\nDouble click..."));
return;
break;
case WM_GETHOTKEY:
acutPrintf(_T("\nGet hot key..."));
return;
break;
}
}
}
static void LESQKeyLog17_GETKEY(void)
{
getKeyMessages();
}
ARX file debug file included