Función OleCreateFromFile (ole2.h)
Crea un objeto incrustado a partir del contenido de un archivo con nombre.
Sintaxis
HRESULT OleCreateFromFile(
[in] REFCLSID rclsid,
[in] LPCOLESTR lpszFileName,
[in] REFIID riid,
[in] DWORD renderopt,
[in] LPFORMATETC lpFormatEtc,
[in] LPOLECLIENTSITE pClientSite,
[in] LPSTORAGE pStg,
[out] LPVOID *ppvObj
);
Parámetros
[in] rclsid
Este parámetro está reservado y debe ser CLSID_NULL.
[in] lpszFileName
Puntero a una cadena que especifica la ruta de acceso completa del archivo desde el que se debe inicializar el objeto.
[in] riid
Referencia al identificador de la interfaz que el autor de la llamada usa posteriormente para comunicarse con el nuevo objeto (normalmente IID_IOleObject, definido en los encabezados OLE como identificador de interfaz de IOleObject).
[in] renderopt
Valor de la enumeración OLERENDER que indica las funcionalidades de dibujo o recuperación de datos almacenadas localmente en caché que debe tener el objeto recién creado. El valor OLERENDER elegido afecta a los valores posibles para el parámetro lpFormatEtc .
[in] lpFormatEtc
Según cuál de las marcas OLERENDER se use como valor de renderopt, puntero a uno de los valores de enumeración FORMATETC . Consulte también la enumeración OLERENDER para conocer las restricciones.
[in] pClientSite
Puntero a una instancia de IOleClientSite, la interfaz principal a través de la cual el objeto solicitará servicios de su contenedor. Este parámetro puede ser NULL.
[in] pStg
Puntero a la interfaz IStorage en el objeto de almacenamiento. Este parámetro no puede ser NULL.
[out] ppvObj
Dirección de la variable de puntero que recibe el puntero de interfaz solicitado en riid. Tras la devolución correcta, *ppvObj contiene el puntero de interfaz solicitado en el objeto recién creado.
Valor devuelto
Esta función devuelve S_OK si se ejecuta correctamente. Otros valores posibles son los siguientes.
Código devuelto | Descripción |
---|---|
|
Archivo no enlazado. |
|
No se puede enlazar al origen. |
|
El medio está lleno. |
|
TYMED no válido. |
|
LINDEX no válido. |
|
Estructura FORMATETC no válida. |
Comentarios
La función OleCreateFromFile crea un nuevo objeto incrustado a partir del contenido de un archivo con nombre. Si el ProgID de la base de datos de registro contiene la clave PackageOnFileDrop, crea un paquete. Si no es así, la función llama a la función GetClassFile para obtener el CLSID asociado al parámetro lpszFileName y, a continuación, crea un objeto incrustado OLE 2 asociado a ese CLSID. El parámetro rclsid de OleCreateFromFile siempre se omitirá y debe establecerse en CLSID_NULL.
En cuanto a otras funciones OleCreateXxx, el objeto recién creado no se muestra al usuario para su edición, lo que requiere una operación DoVerb . Se usa para implementar operaciones de inserción de archivos.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 2000 Professional [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows 2000 Server [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | ole2.h (include Ole2.h) |
Library | Ole32.lib |
Archivo DLL | Ole32.dll |