シミュレートされたユーザー入力を生成するプログラムを作成しており、これを行うクラスを作成しました。gcc を使用して code::blocks でビルドしようとすると、「エラー: 'INPUT' に型の名前がありません」というエラーがスローされます。このエラーが発生する理由を説明してください。以下は、エラーが発生するヘッダー ファイルです。
#ifndef INPUTSIMULATOR_H
#define INPUTSIMULATOR_H
#ifndef _WIN32_WINNT
#define _WIN32_WINNT 0x0501
#endif
#include <Winuser.h>
enum type{KEYBOARD,MOUSE};
enum button{LEFT,RIGHT,MIDDLE};
class inputSimulator
{
public:
inputSimulator(type _inputType);
virtual ~inputSimulator();
int generateKeyEvent (int vk);
int generateMouseButtonDown(button eventType);
int generateMouseButtonUp(button eventType);
int generateMouseMovement(int dy, int dx);
protected:
private:
INPUT input; //error occurs here
type inputType;
};
#endif
編集: 同じ問題の別のインスタンスを見つけましたが、解決策はありません。https://stackoverflow.com/questions/7222529/input-structure-in-simulating-actions-in-winapi