Compartir a través de


Out-Only parámetros de puntero únicos o completos no aceptados

El compilador MIDL no acepta punteros únicos o completos que son [ out]-only. Estas especificaciones hacen que el compilador MIDL genere un mensaje de error.

El código auxiliar del servidor generado automáticamente tiene que asignar memoria para el puntero referente para que la aplicación de servidor pueda almacenar datos en ese área de memoria. Según la definición de un parámetro [out]-only, no se transmite información sobre el parámetro del cliente al servidor. En el caso de un puntero único, que puede tomar el valor NULL, el código auxiliar del servidor no tiene suficiente información para duplicar correctamente el puntero único en el espacio de direcciones del servidor, ni si el código auxiliar tiene información sobre si el puntero debe apuntar a una dirección válida o si se debe establecer en null. Por lo tanto, no se permite esta combinación.

En lugar de punteros [out, unique] o [out, ptr], use punteros [in, out, unique] o [in, out, ptr] o use otro nivel de direccionamiento indirecto, como un puntero de referencia que apunte al puntero único o completo válido.