lineGetDevConfigW, fonction (tapi.h)

La fonction lineGetDevConfig retourne un objet de structure de données « opaque », dont le contenu est spécifique à la ligne (fournisseur de services) et à la classe d’appareil. L’objet structure de données stocke la configuration actuelle d’un appareil de flux multimédia associé à l’appareil de ligne.

Syntaxe

LONG lineGetDevConfigW(
  DWORD       dwDeviceID,
  LPVARSTRING lpDeviceConfig,
  LPCWSTR     lpszDeviceClass
);

Paramètres

dwDeviceID

Identificateur de l’appareil de ligne à configurer.

lpDeviceConfig

Pointeur vers l’emplacement de mémoire de type VARSTRING où la structure de configuration de l’appareil est retournée. Une fois la requête terminée, cet emplacement est rempli avec la configuration de l’appareil. Le membre dwStringFormat dans la structure VARSTRING est défini sur STRINGFORMAT_BINARY. Avant d’appeler lineGetDevConfig, l’application doit définir l'dwTotalSize membre de cette structure pour indiquer la quantité de mémoire disponible pour TAPI pour retourner des informations.

Remarque Si les paramètres de taille de la structure ne sont pas corrects, il est possible que les données puissent être remplacées. Pour plus d’informations sur la définition des tailles de structure, consultez la rubrique l’allocation de mémoire.
 

lpszDeviceClass

Pointeur vers une chaîne terminée par null qui spécifie la classe d’appareil de l’appareil dont la configuration est demandée. La classe d’appareil valide lineGetID chaînes sont identiques à celles spécifiées pour la fonction.

Valeur de retour

Retourne zéro si la fonction réussit ou si un numéro d’erreur négatif se produit. Les valeurs de retour possibles sont les suivantes :

LINEERR_BADDEVICEID, LINEERR_NODRIVER, LINEERR_INVALDEVICECLASS, LINEERR_OPERATIONUNAVAIL, LINEERR_INVALPOINTER, LINEERR_RESOURCEUNAVAIL, LINEERR_STRUCTURETOOSMALL, LINEERR_OPERATIONFAILED, LINEERR_NOMEM, LINEERR_UNINITIALIZED, LINEERR_NODEVICE.

Remarques

Les états d’appel sont spécifiques à l’appareil.

La fonction lineGetDevConfig peut être utilisée pour récupérer une structure de données à partir de TAPI qui spécifie la configuration d’un appareil de flux multimédia associé à un appareil de ligne spécifique. Par exemple, le contenu de cette structure peut spécifier le débit de données, le format de caractères, les schémas de segmentation et les paramètres de protocole de contrôle d’erreur pour un périphérique multimédia « datamodem » associé à la ligne.

En règle générale, une application appelle lineGetID pour identifier l’appareil de flux multimédia associé à une ligne, puis appelle lineConfigDialog pour permettre à l’utilisateur de configurer la configuration de l’appareil. Il peut ensuite appeler lineGetDevConfig, puis enregistrer les informations de configuration dans un livre téléphonique (ou une autre base de données) associé à une destination d’appel particulière. Lorsque l’utilisateur souhaite ultérieurement appeler la même destination, lineSetDevConfig peut être utilisé pour restaurer les paramètres de configuration sélectionnés par l’utilisateur. Les fonctions lineSetDevConfig, lineConfigDialoget lineGetDevConfig peuvent être utilisées, dans cet ordre, pour permettre à l’utilisateur d’afficher et de mettre à jour les paramètres.

Le format exact des données contenues dans la structure est spécifique à l’API de flux de ligne et de média (classe d’appareil), n’est pas documenté et n’est pas défini. La structure retournée par cette fonction ne peut pas être directement accessible ou manipulée par l’application, mais ne peut être stockée qu’intacte et ultérieurement utilisée dans lineSetDevConfig pour restaurer les paramètres. La structure ne peut pas nécessairement être transmise à d’autres appareils, même de la même classe d’appareil (bien que cela puisse fonctionner dans certains cas, il n’est pas garanti).

Note

L’en-tête tapi.h définit lineGetDevConfig comme alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Exigences

Exigence Valeur
plateforme cible Windows
d’en-tête tapi.h
bibliothèque Tapi32.lib
DLL Tapi32.dll

Voir aussi

Informations de référence sur les services de téléphonie de base

vue d’ensemble des informations de référence sur TAPI 2.2

VARSTRING

lineConfigDialog

lineGetID

lineSetDevConfig