Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
La fonction midl_user_allocate est une fonction que les applications clientes et serveur fournissent pour allouer de la mémoire.
void __RPC_FAR * __RPC_API midl_user_allocate (size_t cBytes);
Paramètres
-
octets
-
Spécifie le nombre d’octets à allouer.
Remarques
Les applications clientes et les applications serveur doivent implémenter la fonction midl_user_allocate , sauf si vous compilez en mode de compatibilité OSF (/osf). Les applications et les stubs générés appellent midl_user_allocate lors du traitement des objets référencés par des pointeurs :
- L’application serveur doit appeler midl_user_allocate pour allouer de la mémoire à l’application ; par exemple, lors de la création d’un nœud.
- Le stub du serveur appelle midl_user_allocate lors de la démarshalation des données pointées dans l’espace d’adressage du serveur.
- Le stub client appelle midl_user_allocate lors de la démarshalation des données du serveur référencé par un pointeur sortant . Notez que pour [in], [out] et [unique] pointeurs, le stub client appelle midl_user_allocate uniquement si la valeur de pointeur [unique] a été NULL lors de l’entrée et que les modifications apportées à une valeur non NULL pendant l’appel. Si le pointeur [unique] n’était pas NULL lors de l’entrée, le stub client écrit les données associées dans la mémoire existante.
Si midl_user_allocate ne parvient pas à allouer de la mémoire, il doit retourner un pointeur NULL .
Il est recommandé de midl_user_allocate retourner un pointeur aligné sur 8 octets.
Exemples
#include <windows.h>
void __RPC_FAR * __RPC_API midl_user_allocate(size_t cBytes)
{
return(malloc(cBytes));
}
Voir aussi