IPersistFile::Load
Opens the
specified file and initializes an object from the file contents.
HRESULT Load(
LPCOLESTR pszFileName, |
//Pointer
to absolute path of the file to open |
DWORD dwMode |
//Specifies
the access mode from the STGM enumeration |
); |
|
Parameters
pszFileName
[in]Points to
a zero-terminated string containing the absolute path of the file to open.
dwMode
[in]Specifies
some combination of the values from the STGMJWLKYA enumeration to indicate the access mode to
use when opening the file. IPersistFile::Load can treat this value as a
suggestion, adding more restrictive permissions if necessary. If dwMode
is zero, the implementation should open the file using whatever default
permissions are used when a user opens the file.
Return Values
S_OK
The object
was successfully loaded.
E_OUTOFMEMORY
The object
could not be loaded due to a lack of memory.
E_FAIL
The object
could not be loaded for some reason other than a lack of memory.
IPersistFile::Load STG_E_* error codes.
Remarks
IPersistFile::Load loads the object from the specified file. This method
is for initialization only and does not show the object to the end user. It is
not equivalent to what occurs when an end user selects the File Open command.
Notes to Callers
The BindToObject
method in file monikers calls this method to load an object during a moniker
binding operation (when a linked object is run). Typically, applications do not
call this method directly.
Notes to Implementers
Because the
information needed to open a file varies greatly from one application to
another, the object on which this method is implemented must also open the file
specified by the pszFileName parameter. This differs from the IPersistStorage::Load
For an
application that normally uses OLE compound files, your IPersistFile::Load
implementation can simply call the StgOpenStorage
When the
object has been loaded, your implementation should register the object in the
Running Object Table (see IRunningObjectTable::Register
See Also