[一部の情報は、商用リリース前に大幅に変更される可能性があるプレリリース製品に関連しています。 Microsoftは、ここに記載されている情報に関して明示または黙示を問わず、一切の保証を行いません。
関連付けられているパラメーターを使用して合成ポインター デバイスを作成します。 このデバイスを使用して、 InjectSyntheticPointerInput を使用して入力を挿入できます。 インジェクション デバイスが不要になったら、 DestroySyntheticPointerDevice を使用してクリーンアップする必要があります。
構文
WINUSERAPI
HSYNTHETICPOINTERDEVICE
WINAPI
CreateSyntheticPointerDevice2(
_In_ SYNTHETIC_DEVICE_CREATION_PARAMS* pParams);
パラメーター
- pParams
-
デバイスのパラメーターを含む SYNTHETIC_DEVICE_CREATION_PARAMS 構造体へのポインター。
値を返す
関数が成功した場合、戻り値は合成ポインター デバイスへのハンドルです。
関数が失敗した場合、戻り値は NULL です。 拡張エラー情報を取得するには、 GetLastError を呼び出します。
注釈
タッチパッドは物理サイズで作成する必要があるため、既存の CreateSyntheticPointerDevice を使用してタッチパッド デバイスを作成することはできません。
SYNTHETIC_DEVICE_CREATION_OPTIONS
合成ポインター デバイスを作成するためのオプション。
typedef enum tagSYNTHETIC_DEVICE_CREATION_OPTIONS
{
SDCO_NONE = 0x0,
SDCO_PHYSICAL_SIZE = 0x1,
SDCO_TOUCHPAD_GESTURE_ONLY = 0x2,
} SYNTHETIC_DEVICE_CREATION_OPTIONS;
DEFINE_ENUM_FLAG_OPERATORS(SYNTHETIC_DEVICE_CREATION_OPTIONS)
| 価値 | 説明 |
|---|---|
| SDCO_NONE (0x0) | 特別なオプションはありません。 |
| SDCO_PHYSICAL_SIZE (0x1) | 挿入された入力は、マップされたディスプレイではなく、デバイスに対して相対的です。 指定する場合は、デバイスのディメンションを指定する必要があります。 InjectSyntheticPointerInput を使用して入力を挿入する場合は、ptPixelLocation ではなくポインター情報の ptHimetricLocation フィールドに入力座標を指定する必要があります。 |
| SDCO_TOUCHPAD_GESTURE_ONLY (0x2) | 挿入されたタッチパッド入力は常にジェスチャとして扱われ、マウスの動きやクリックとして認識できません。 指定しない場合、システムは、挿入されたタッチパッド入力を物理タッチパッド入力と同じように処理します。 |
SYNTHETIC_DEVICE_CREATION_PARAMS
合成インジェクション デバイスを作成するためのパラメーターを表す構造体。
typedef struct tagSYNTHETIC_DEVICE_CREATION_PARAMS
{
POINTER_INPUT_TYPE pointerType;
ULONG maxCount;
POINTER_FEEDBACK_MODE feedbackMode;
HMONITOR hMonitor;
ULONG deviceWidth;
ULONG deviceHeight;
SYNTHETIC_DEVICE_CREATION_OPTIONS options;
} SYNTHETIC_DEVICE_CREATION_PARAMS;
Members
- pointerType
-
作成されるデバイスの種類 (PT_TOUCH、 PT_PEN、または PT_TOUCHPAD)。
- maxCount
-
同時に挿入できる連絡先の最大数。
- feedbackMode
-
挿入された入力に視覚的フィードバックがレンダリングされるモード。
- hMonitor
-
挿入された入力がマップされるモニター (該当する場合)。
- deviceWidth
-
Himetric (1/100 mm) 単位のデバイスの物理的な幅。
- deviceHeight
-
デバイスの物理的な高さ (ミリメートルの 1/100)。
- オプション
-
SYNTHETIC_DEVICE_CREATION_OPTIONSからの 0 個以上のオプション。
注釈
pointerType フィールドと options フィールドは、他のフィールドの有効な値を制御します。
PT_TOUCH:
- maxCount は 0 より大きく、256 以下である必要があります。
- feedbackMode は 、POINTER_FEEDBACK_DEFAULT、 POINTER_FEEDBACK_INDIRECT、または POINTER_FEEDBACK_NONEである必要があります。
- hMonitor には 、nullptr (入力が仮想デスクトップにマップされます) または有効なモニターを指定できます。
- SDCO_PHYSICAL_SIZEを指定する場合は deviceWidth と deviceHeight を 0 以外にし、指定しない場合はゼロにする必要があります。
- SDCO_PHYSICAL_SIZEのみがオプション (またはSDCO_NONE) に対して有効です。
PT_PEN:
- maxCount は 1 である必要があります。
- feedbackMode は 、POINTER_FEEDBACK_DEFAULT、 POINTER_FEEDBACK_INDIRECT、または POINTER_FEEDBACK_NONEである必要があります。
- hMonitor には 、nullptr または有効なモニターを指定できます。
- SDCO_PHYSICAL_SIZEを指定する場合は deviceWidth と deviceHeight を 0 以外にし、指定しない場合はゼロにする必要があります。
- SDCO_PHYSICAL_SIZEのみがオプション (またはSDCO_NONE) に対して有効です。
PT_TOUCHPAD:
- maxCount は 0 より大きく、5 以下である必要があります。
- feedbackMode は POINTER_FEEDBACK_NONEする必要があります。
- hMonitor は nullptr である必要があります (タッチパッド入力は常にマウスの場所を介して仮想デスクトップにマップされます)。
- deviceWidth と deviceHeight は 0 以外である必要があります。
- オプションSDCO_PHYSICAL_SIZE 指定する必要があります。 SDCO_TOUCHPAD_GESTURE_ONLY は省略可能です。
必要条件
| Requirement | 価値 |
|---|---|
| サポートされる最小クライアント | Windows 11 [デスクトップ アプリのみ] |
| サポートされている最小のサーバー | サポートなし |
| ヘッダー | Winuser.h (Windows.h を含む) |
| 図書館 | User32.lib |
| DLL | User32.dll (序数 2690) |