MOUSE_EVENT_RECORD structure (Windows)
ではMOUSE_HWHEELEDイベント(コンソールでのマウスホイールの水平動作イベント)はWindows 2000以降みたいなことを書いていますが、実際WinCon.hを見るとこうなっています。
#define MOUSE_MOVED 0x0001 #define DOUBLE_CLICK 0x0002 #define MOUSE_WHEELED 0x0004 #if(_WIN32_WINNT >= 0x0600) #define MOUSE_HWHEELED 0x0008 #endif /* _WIN32_WINNT >= 0x0600 */
なので、Vista以降でしか使えませんね。生成するとすぐ気付くと思いますが、気を付けてください。
#define _WIN32_WINNT 0x500 #include <windows.h> DWORD dwMouse = MOUSE_HWHEELED;
とかやると、見事に未定義エラーになります。でも、考えてみればコンソールでマウスの水平スクロールなんてする人ほとんどいないか…。
(参考)
Reading Input Buffer Events (Windows)