Partager via


IBidiRequest ::GetOutputData, méthode (bidispl.h)

La méthode GetOutputData obtient les données de sortie spécifiées à partir 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 Remarques.

[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 être l’une des valeurs suivantes.

Valeur Description
BIDI_NULL Aucune donnée.
BIDI_INT Données entières.
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 de retour

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

Retourner le code 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 de pointeur n’a pas référencé un emplacement de mémoire valide.
Aucun des ci-dessus Le HRESULT contient un code d’erreur correspondant à la dernière erreur.

Remarques

Une seule demande bidi peut avoir plusieurs résultats. L’application appelle GetEnumCount pour obtenir le nombre de résultats de la demande bidi.

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

Exigences

Exigence Valeur
client minimum pris en charge Windows XP
serveur minimum pris en charge Windows Server 2003
plateforme cible Bureau
d’en-tête bidispl.h
DLL Bidispl.dll

Voir aussi

interfaces de communication bidirectionnelles

schéma de communication bidirectionnel

GetEnumCount

IBidiRequest