Partager via


IGlobalRSCAQueryProvider::GetOutputBuffer, méthode

Crée un tableau BYTE .

Syntaxe

virtual HRESULT GetOutputBuffer(  
   DWORD cbBuffer,  
   OUT BYTE** ppbBuffer  
) = 0;  

Paramètres

cbBuffer
[IN] DWORD qui contient le nombre d’octets à allouer.

ppbBuffer
[OUT] Pointeur vers un BYTE tableau qui contient la nouvelle mémoire tampon.

Valeur renvoyée

Élément HRESULT. Les valeurs possibles sont notamment celles figurant dans le tableau suivant.

Valeur Définition
S_OK Indique que l’opération a réussi.
E_OUTOFMEMORY Indique que la mémoire du tas est épuisée.

Remarques

Les classes dérivées de CGlobalModule qui s’inscrivent à des événements GL_RSCA_QUERY reçoivent un pointeur IGlobalRscaQueryProvider en tant que paramètre sur la méthode CGlobalModule::OnGlobalRSCAQueryvirtual. Vous pouvez ensuite récupérer un nouveau BYTE tableau en appelant la GetOutputBuffer méthode sur le IGlobalRSCAQueryProvider pointeur.

La GetOutputBuffer valeur de retour dépend de l’implémentation. Vous devez utiliser les informations suivantes comme ligne directrice, mais elles peuvent ne pas être correctes dans tous les scénarios :

L’implémenteur IGlobalRSCAQueryProvider déclare un pointeur privé BYTE en tant que variable membre appelée buffer; l’implémenteur s’initialise buffer sur NULL au moment de la construction. Si buffer n’a pas la valeur NULL quand GetOutputBuffer est appelé, la fonction LocalFree est appelée sur buffer. La fonction LocalAlloc est appelée à affecter buffer à un nouveau BYTE tableau de taille cbBuffer sur le tas. buffer est ensuite retourné dans le paramètre déréférencement si ppbBufferGetOutputBuffer retourne S_OK.

Important Cette méthode fait partie de l’infrastructure IIS 7 et n’est pas destinée à être utilisée directement à partir de votre code.

Remarques pour les implémenteurs

IGlobalRSCAQueryProvider les implémenteurs sont responsables de la gestion de la mémoire avec ces données ; par conséquent, IGlobalRSCAQueryProvider les implémenteurs qui utilisent l’allocation de mémoire dynamique doivent libérer ou appeler delete le BYTE pointeur lorsqu’il n’est plus nécessaire.

Remarques pour les appelants

IGlobalRSCAQueryProvider les implémenteurs sont responsables de la gestion de la mémoire avec ces données ; par conséquent, IGlobalRSCAQueryProvider les clients ne doivent pas libérer ou appeler la suppression sur le pointeur retourné BYTE lorsque ces données ne sont plus nécessaires.

Spécifications

Type Description
Client - IIS 7.0 sur Windows Vista
- IIS 7.5 sur Windows 7
- IIS 8.0 sur Windows 8
- IIS 10.0 sur Windows 10
Serveur - IIS 7.0 sur Windows Server 2008
- IIS 7.5 sur Windows Server 2008 R2
- IIS 8.0 sur Windows Server 2012
- IIS 8.5 sur Windows Server 2012 R2
- IIS 10.0 sur Windows Server 2016
Produit - IIS 7.0, IIS 7.5, IIS 8.0, IIS 8.5, IIS 10.0
- IIS Express 7.5, IIS Express 8.0, IIS Express 10.0
En-tête Httpserv.h

Voir aussi

IGlobalRSCAQueryProvider, interface
IGlobalRSCAQueryProvider::ResizeOutputBuffer, méthode