Partager via


MesEncodeFixedBufferHandleCreate, fonction (midles.h)

La fonction MesEncodeFixedBufferHandleCreate crée un handle d’encodage, puis l’initialise pour un style de mémoire tampon fixe de sérialisation.

Syntaxe

RPC_STATUS MesEncodeFixedBufferHandleCreate(
  char          *pBuffer,
  unsigned long BufferSize,
  unsigned long *pEncodedSize,
  handle_t      *pHandle
);

Paramètres

pBuffer

Pointeur vers la mémoire tampon fournie par l’utilisateur.

BufferSize

Taille de la mémoire tampon fournie par l’utilisateur, en octets.

pEncodedSize

Pointeur vers la taille de l’encodage terminé. La taille sera écrite sur la pointe par les opérations d’encodage suivantes.

pHandle

Pointeur vers le handle nouvellement créé.

Valeur retournée

Valeur Signification
RPC_S_OK
L’appel a réussi.
RPC_S_INVALID_ARG
L'argument n'était pas valide.
RPC_S_OUT_OF_MEMORY
Mémoire insuffisante.
 
Note Pour obtenir la liste des codes d’erreur valides, consultez Valeurs de retour RPC.
 

Remarques

La routine MesEncodeFixedBufferHandleCreate est utilisée par les applications pour créer et initialiser le handle pour le style de mémoire tampon fixe d’encodage. Lors de l’utilisation du style de mémoire tampon fixe d’encodage, l’utilisateur fournit une seule mémoire tampon dans laquelle toutes les données encodées sont placées. Cette mémoire tampon doit avoir une adresse alignée sur 8 et doit être un multiple de 8 octets. En outre, il doit être suffisamment grand pour contenir un encodage de toutes les données, ainsi qu’un en-tête d’encodage pour chaque routine encodée.

Lorsque le handle est utilisé pour plusieurs opérations d’encodage, la taille encodée est cumulative.

Lorsqu’un stub est compilé à l’aide de -protocol all ou -protocol ndr64 et que la mémoire tampon doit être encodée à l’aide de la syntaxe de transfert NDR64, la fonction MesBufferHandleReset doit être appelée avec son paramètre OpCode défini sur MES_ENCODE_NDR64.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête midles.h (inclure Rpc.h)
Bibliothèque Rpcrt4.lib
DLL Rpcrt4.dll

Voir aussi

MesBufferhandleReset

MesDecodeBufferHandleCreate

MesHandleFree