Método IStream::SetSize (objidl.h)
El método SetSize cambia el tamaño del objeto de secuencia.
Sintaxis
HRESULT SetSize(
[in] ULARGE_INTEGER libNewSize
);
Parámetros
[in] libNewSize
Especifica el nuevo tamaño, en bytes, de la secuencia.
Valor devuelto
Este método puede devolver uno de estos valores.
Código devuelto | Descripción |
---|---|
S_OK | El tamaño del objeto de secuencia se cambió correctamente. |
E_PENDING | Solo almacenamiento asincrónico: la parte o todos los datos de la secuencia no están disponibles actualmente. |
STG_E_MEDIUMFULL | El tamaño de la secuencia no cambia porque no queda espacio en el dispositivo de almacenamiento. |
STG_E_INVALIDFUNCTION | La implementación no admite el valor del parámetro libNewSize . No todas las secuencias admiten más de 232 bytes. Si una secuencia no admite más de 232 bytes, el tipo de datos DWORD alto de libNewSize debe ser cero. Si no es cero, la implementación puede devolver STG_E_INVALIDFUNCTION. En general, las implementaciones basadas en COM de la interfaz IStream no admiten secuencias de más de 232 bytes. |
STG_E_REVERTED | El objeto ha sido invalidado por una operación de reversión encima de él en el árbol de transacciones. |
Comentarios
IStream::SetSize cambia el tamaño del objeto de secuencia. Llame a este método para asignar previamente espacio para la secuencia. Si el parámetro libNewSize es mayor que el tamaño de flujo actual, la secuencia se extiende al tamaño indicado rellenando el espacio intermedio con bytes de valor indefinido. Esta operación es similar al método ISequentialStream::Write si el puntero de búsqueda está más allá del final actual de la secuencia.
Si el parámetro libNewSize es menor que el flujo actual, la secuencia se trunca al tamaño indicado.
El puntero de búsqueda no se ve afectado por el cambio en el tamaño de la secuencia.
Llamar a IStream::SetSize puede ser una manera eficaz de obtener un gran fragmento de espacio contiguo.
Requisitos
Cliente mínimo compatible | Windows 2000 Professional [aplicaciones de escritorio | Aplicaciones para UWP] |
Servidor mínimo compatible | Windows 2000 Server [aplicaciones de escritorio | Aplicaciones para UWP] |
Plataforma de destino | Windows |
Encabezado | objidl.h |
Library | Uuid.lib |
Archivo DLL | Ole32.dll |