Partager via


Structure PHONEBUTTONINFO (tapi.h)

La structure PHONEBUTTONINFO contient des informations sur un bouton sur un appareil téléphonique. Cette structure est utilisée par plusieurs fonctions TAPI et TSPI.

Syntaxe

typedef struct phonebuttoninfo_tag {
  DWORD dwTotalSize;
  DWORD dwNeededSize;
  DWORD dwUsedSize;
  DWORD dwButtonMode;
  DWORD dwButtonFunction;
  DWORD dwButtonTextSize;
  DWORD dwButtonTextOffset;
  DWORD dwDevSpecificSize;
  DWORD dwDevSpecificOffset;
  DWORD dwButtonState;
} PHONEBUTTONINFO, *LPPHONEBUTTONINFO;

Membres

dwTotalSize

Taille totale allouée à cette structure de données, en octets.

dwNeededSize

Taille de cette structure de données nécessaire pour contenir toutes les informations retournées, en octets.

dwUsedSize

Taille de la partie de cette structure de données qui contient des informations utiles, en octets.

dwButtonMode

Mode ou classe d’utilisation générale du bouton. Ce membre utilise l’une des constantes PHONEBUTTONMODE_.

dwButtonFunction

Fonction affectée au bouton. Ce membre utilise l’une des constantes PHONEBUTTONFUNCTION_.

dwButtonTextSize

Taille du texte descriptif du bouton, en octets.

dwButtonTextOffset

Décalage entre le début de cette structure et le champ de taille variable contenant le texte descriptif de ce bouton. Le format de ces informations est celui spécifié dans le membre dwStringFormat des fonctionnalités de l’appareil du téléphone. La taille du champ est spécifiée par dwButtonTextSize.

dwDevSpecificSize

Taille du champ spécifique à l’appareil, en octets. Si le champ spécifique à l’appareil est un pointeur vers une chaîne, la taille doit inclure la terminaison null .

dwDevSpecificOffset

Décalage entre le début de la structure et le champ spécifique à l’appareil de taille variable. La taille du champ est spécifiée par dwDevSpecificSize.

dwButtonState

Pour la fonction phoneGetButtonInfo , ce champ indique l’état actuel du bouton, à l’aide des constantes PHONEBUTTONSTATE_. Ce champ est ignoré par la fonction phoneSetButtonInfo .

Remarques

Les extensions spécifiques à l’appareil doivent utiliser la zone DevSpecific (dwDevSpecificSize et dwDevSpecificOffset) de taille variable de cette structure de données.

Les applications plus anciennes sont compilées sans ce champ dans la structure PHONEBUTTONINFO et à l’aide d’un FORMAT SIZEOF PHONEBUTTONINFO plus petit que la nouvelle taille. L’application transmet un paramètre dwAPIVersion avec la fonction phoneOpen , qui peut être utilisée à des fins d’aide par TAPI dans la gestion de cette situation. Si l’application transmet un dwTotalSize inférieur à la taille de la partie fixe de la structure telle que définie dans la dwAPIVersion spécifiée, PHONEERR_STRUCTURETOOSMALL est retourné. Si suffisamment de mémoire a été allouée par l’application, avant d’appeler la fonction TSPI_phoneGetButtonInfo , TAPI définit les membres dwNeededSize et dwUsedSize sur la taille fixe de la structure telle qu’elle existait dans la version d’API spécifiée.

Les nouveaux fournisseurs de services (qui prennent en charge la nouvelle version de l’API) doivent examiner la version de l’API transmise. Si la version de l’API est inférieure à la version la plus élevée prise en charge par le fournisseur, le fournisseur de services ne doit pas remplir les champs qui ne sont pas pris en charge dans les versions antérieures de l’API, car ils se situent dans la partie variable de l’ancienne structure.

Les nouvelles applications doivent être conscientes de la version de l’API négociée et ne pas examiner le contenu des champs dans la partie fixe au-delà de la fin d’origine de la partie fixe de la structure pour la version de l’API négociée.

Configuration requise

Condition requise Valeur
En-tête tapi.h

Voir aussi

TSPI_phoneGetButtonInfo

TSPI_phoneSetButtonInfo

phoneGetButtonInfo

phoneOpen

phoneSetButtonInfo