atributo midl_user_allocate
La función midl_user_allocate es una función que proporcionan las aplicaciones cliente y servidor para asignar memoria.
void __RPC_FAR * __RPC_API midl_user_allocate (size_t cBytes);
Parámetros
-
cBytes
-
Especifica el recuento de bytes que se van a asignar.
Observaciones
Tanto las aplicaciones cliente como las aplicaciones de servidor deben implementar la función midl_user_allocate , a menos que esté compilando en modo de compatibilidad con OSF (/osf). Las aplicaciones y los códigos auxiliares generados llaman a midl_user_allocate cuando se trabaja con objetos a los que hacen referencia los punteros:
- La aplicación de servidor debe llamar a midl_user_allocate para asignar memoria para la aplicación, por ejemplo, al crear un nuevo nodo.
- El código auxiliar del servidor llama a midl_user_allocate al desacoplar datos apuntados en el espacio de direcciones del servidor.
- El código auxiliar del cliente llama a midl_user_allocate al desacoplar datos del servidor al que hace referencia un puntero de salida . Tenga en cuenta que para los punteros [in], [out] y [unique], el código auxiliar del cliente llama a midl_user_allocate solo si el valor de puntero [único] era NULL en la entrada y cambia a un valor no NULL durante la llamada. Si el puntero [único] no era NULL en la entrada, el código auxiliar del cliente escribe los datos asociados en la memoria existente.
Si midl_user_allocate no puede asignar memoria, debe devolver un puntero NULL .
Se recomienda que midl_user_allocate devuelva un puntero alineado a 8 bytes.
Ejemplos
#include <windows.h>
void __RPC_FAR * __RPC_API midl_user_allocate(size_t cBytes)
{
return(malloc(cBytes));
}
Vea también