|
OleCreateFromFile
Creates an embedded object from the contents of a named file.
OleCreateFromFile(
REFCLSID rclsid,
| //Reserved. Must be CLSID_NULL
| LPCOLESTR lpszFileName,
| //Points to full path name of file used ot create object
| REFIID riid,
| //Interface to be used to communicate with new object
| DWORD renderopt,
| //Value from OLERENDER
| LPFORMATETC pFormatEtc,
| //FORMATETC value depending on OLERENDER value
| LPOLECLIENTSITE pClientSite,
| //Pointer to an instance of IOleClientSite
| LPSTORAGE pStg,
| //Pointer to IStorage instance to be used as object storage
| LPVOID FAR* ppvObj
| //Receives a pointer to the interface requested in riid
| );
|
|
Parameters
rclsid
Reserved. Must be CLSID_NULL.
lpszFileName
Points to the full path name specifying the file from which the object should
be initialized.
riid
Identifies the interface the caller later uses to communicate with the new
object (usually IID_IOleObject).
renderopt
A value from the enumeration OLERENDER that indicates the locally cached drawing or data-retrieval capabilities the
newly created object is to have. The OLERENDER value chosen affects the possible values for the pFormatEtc parameter.
pFormatEtc
Depending on which of the OLERENDER flags is used as the value of renderopt, can be one of the FORMATETC enumeration values. Refer also to the OLERENDER enumeration for restrictions.
pClientSite
Points to an instance of IOleClientSite, the primary interface through which the object will request services from
its container. May be NULL.
pStg
Points to an instance of the IStorage interface to be used as the storage for the object. This parameter may not be
NULL.
ppvObj
Receives a pointer to the interface requested in riid on the newly created object on return.
Return Values
S_OK
Indicates embedded object successfully created.
STG_E_FILENOTFOUND
Indicates file not bound.
OLE_E_CANT_BINDTOSOURCE
Indicates not able to bind to source.
STG_E_MEDIUMFULL
Indicates the medium is full.
DV_E_TYMED
Indicates invalid TYMED.
DV_E_LINDEX
Indicates invalid LINDEX.
DV_E_FORMATETC
Indicates invalid FORMATETC structure.
E_OUTOFMEMORY
Indicates OLE libraries have not been properly initialized.
Comments
The OleCreateFromFile function creates a new embedded object from the contents of a named file. If
the ProgID in the registration database contains the PackageOnFileDrop key, it
creates a package. If not, the function calls the GetClassFile function to get the CLSID associated with the lpszFileName parameter, and then creates an OLE 2-embedded object associated with that
CLSID. The rclsid parameter of OleCreateFromFile will always be ignored, and should be set to CLSID_NULL.
As for other OleCreateXxx functions, the newly created object is not shown to the user for editing,
which requires a DoVerb operation. It is used in to implement insert file operations, such as the
Create from File command in Word for Windows.
See Also
GetClassFile
Related LinksSoftware for Delphi and C++ Builder developers Software for Visual Studio .NET developers Software for Visual Basic 6 developers Delphi Tips&Tricks
MegaDetailed.NET
TMS Scripter Studio Pro components for Delphi/C++Builder
More Online Helps Win32 Programmer's Reference (win32.hlp) Win32 Multimedia Programmer's Reference (mmedia.hlp) Microsoft Windows Pen API Programmer's Reference (penapi.hlp) Microsoft Windows Sockets 2 Reference (sock2.hlp) Microsoft Windows Telephony API (TAPI) Programmer's Reference (sock2.hlp) Unix Manual Pages
|