CreateSyntheticPointerDevice2, fonction

[Certaines informations concernent le produit préversion qui peut être sensiblement modifié avant sa publication commerciale. Microsoft n’offre aucune garantie, expresse ou implicite, en ce qui concerne les informations fournies ici.]

Crée un appareil de pointeur synthétique à l’aide des paramètres associés. L’entrée peut être injectée à l’aide de cet appareil via InjectSyntheticPointerInput. Lorsque l’appareil d’injection n’est plus nécessaire, il doit être nettoyé via DestroySyntheticPointerDevice.

Syntaxe

WINUSERAPI
HSYNTHETICPOINTERDEVICE
WINAPI
CreateSyntheticPointerDevice2(
    _In_ SYNTHETIC_DEVICE_CREATION_PARAMS* pParams);

Paramètres

pParams

Pointeur vers une structure SYNTHETIC_DEVICE_CREATION_PARAMS contenant les paramètres de l’appareil.

Valeur renvoyée

Si la fonction réussit, la valeur de retour est un handle vers l’appareil de pointeur synthétique.

Si la fonction échoue, la valeur de retour est NULL. Pour obtenir des informations d’erreur étendues, appelez GetLastError.

Remarques

Le CreateSyntheticPointerDevice existant ne peut pas être utilisé pour créer des appareils tactiles, car les pavés tactiles doivent être créés avec une taille physique.

SYNTHETIC_DEVICE_CREATION_OPTIONS

Options de création d’un appareil de pointeur synthétique.

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)
Valeur Meaning
SDCO_NONE (0x0 ) Aucune option spéciale.
SDCO_PHYSICAL_SIZE (0x1 ) L’entrée injectée est relative à l’appareil au lieu de son ou ses affichages mappés. Si elle est spécifiée, les dimensions de l’appareil doivent être fournies. Lors de l’injection d’entrée à l’aide d’InjectSyntheticPointerInput, les coordonnées d’entrée doivent être spécifiées dans le champ ptHimetricLocation des informations du pointeur au lieu de ptPixelLocation.
SDCO_TOUCHPAD_GESTURE_ONLY (0x2 ) L’entrée du pavé tactile injecté est toujours traitée comme un mouvement et ne peut pas être reconnue comme un mouvement ou des clics de souris. S’il n’est pas spécifié, le système traite l’entrée du pavé tactile injecté de façon identique à l’entrée du pavé tactile physique.

SYNTHETIC_DEVICE_CREATION_PARAMS

Structure représentant les paramètres de création d’un dispositif d’injection synthétique.

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

Type d’appareil créé (PT_TOUCH, PT_PEN ou PT_TOUCHPAD).

maxCount

Nombre maximal de contacts pouvant être injectés simultanément.

feedbackMode

Mode dans lequel l’entrée injectée a rendu des commentaires visuels.

Hmonitor

Moniteur auquel l’entrée injectée est mappée, le cas échéant.

deviceWidth

Largeur physique de l’appareil en himetric (1/100e d’un millimètre).

deviceHeight

Hauteur physique de l’appareil en himetric (1/100e d’un millimètre).

Options

Zéro ou plusieurs options de SYNTHETIC_DEVICE_CREATION_OPTIONS.

Remarques

Les champs pointerType et options contrôlent les valeurs valides pour les autres champs :

PT_TOUCH :

  • maxCount doit être supérieur à 0 et inférieur ou égal à 256.
  • feedbackMode doit être POINTER_FEEDBACK_DEFAULT, POINTER_FEEDBACK_INDIRECT ou POINTER_FEEDBACK_NONE.
  • hMonitor peut être nullptr (l’entrée est mappée au bureau virtuel) ou un moniteur valide.
  • deviceWidth et deviceHeight doivent être non nuls si SDCO_PHYSICAL_SIZE est spécifié et zéro si ce n’est pas le cas.
  • Seule SDCO_PHYSICAL_SIZE est valide pour les options (ou SDCO_NONE).

PT_PEN :

  • maxCount doit être 1.
  • feedbackMode doit être POINTER_FEEDBACK_DEFAULT, POINTER_FEEDBACK_INDIRECT ou POINTER_FEEDBACK_NONE.
  • hMonitor peut être nullptr ou un moniteur valide.
  • deviceWidth et deviceHeight doivent être non nuls si SDCO_PHYSICAL_SIZE est spécifié et zéro si ce n’est pas le cas.
  • Seule SDCO_PHYSICAL_SIZE est valide pour les options (ou SDCO_NONE).

PT_TOUCHPAD :

  • maxCount doit être supérieur à 0 et inférieur ou égal à 5.
  • feedbackMode doit être POINTER_FEEDBACK_NONE.
  • hMonitor doit être nullptr (l’entrée du pavé tactile est toujours mappée au bureau virtuel via l’emplacement de la souris).
  • deviceWidth et deviceHeight doivent être non nuls.
  • SDCO_PHYSICAL_SIZE doit être spécifié dans les options , SDCO_TOUCHPAD_GESTURE_ONLY est facultatif.

Exigences

Prérequis Valeur
Client minimum requis Windows 11 [applications de bureau uniquement]
Serveur minimum pris en charge Aucun pris en charge
Header Winuser.h (include Windows.h)
Bibliothèque User32.lib
DLL User32.dll (ordinal 2690)

Voir également