Méthode IBidiRequest ::GetOutputData (bidispl.h)

La méthode GetOutputData obtient les données de sortie spécifiées provenant de l’imprimante.

Syntaxe

HRESULT GetOutputData(
  [in]  const DWORD dwIndex,
  [out] LPWSTR      *ppszSchema,
  [out] DWORD       *pdwType,
  [out] BYTE        **ppData,
  [out] ULONG       *uSize
);

Paramètres

[in] dwIndex

Index de base zéro des données de sortie demandées. Pour plus d'informations, consultez la section Notes.

[out] ppszSchema

Pointeur vers une chaîne terminée par NULL qui reçoit la chaîne de schéma. L’appelant doit appeler la fonction CoTaskMemFree pour libérer ce pointeur.

[out] pdwType

Pointeur vers une variable qui reçoit le type des données de sortie. Ce paramètre peut prendre les valeurs suivantes.

Valeur Description
BIDI_NULL Aucune donnée.
BIDI_INT Données de type integer.
BIDI_FLOAT Nombre à virgule flottante.
BIDI_BOOL TRUE ou FALSE
BIDI_STRING Chaîne de caractères Unicode.
BIDI_TEXT Chaîne Unicode non localisable.
BIDI_ENUM Données d’énumération sous la forme d’une chaîne Unicode.
BIDI_BLOB Données binaires.

[out] ppData

Pointeur vers la variable qui reçoit un pointeur vers le tableau d’octets contenant les données de sortie. La mémoire tampon est allouée par l’interface COM pour stocker les données de sortie. L’appelant est chargé d’appeler CoTaskMemFree pour libérer la mémoire tampon.

[out] uSize

Pointeur vers une variable qui reçoit la taille du tableau d’octets spécifié par **ppData.

Valeur retournée

La méthode retourne l’une des valeurs suivantes. Pour plus d’informations sur les codes d’erreur COM, consultez Codes d’erreur COM.

Code de retour Description
S_OK L’opération a été effectuée avec succès.
E_HANDLE Le handle d’interface n’était pas valide.
E_POINTER Au moins un des paramètres de variable pointeur ne référence pas un emplacement de mémoire valide.
Aucune de ces réponses Le HRESULT contient un code d’erreur correspondant à la dernière erreur.

Remarques

Une requête bidi unique peut avoir plusieurs résultats. L’application appelle GetEnumCount pour obtenir le nombre de résultats de la requête bidi.

Si une application appelle GetOutputData avec le même index deux fois, l’interface alloue deux mémoires tampons différentes et, par conséquent, l’application doit libérer les deux mémoires tampons.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows XP
Serveur minimal pris en charge Windows Server 2003
Plateforme cible Desktop (Expérience utilisateur)
En-tête bidispl.h
DLL Bidispl.dll

Voir aussi

Interfaces de communication bidirectionnelles

Schéma de communication bidirectionnelle

GetEnumCount

IBidiRequest