Condividi tramite


Metodo IPersistFile::Load (objidl.h)

Apre il file specificato e inizializza un oggetto dal contenuto del file.

Sintassi

HRESULT Load(
  [in] LPCOLESTR pszFileName,
  [in] DWORD     dwMode
);

Parametri

[in] pszFileName

Percorso assoluto del file da aprire.

[in] dwMode

Modalità di accesso da utilizzare durante l'apertura del file. I valori possibili vengono ricavati dall'enumerazione STGM . Il metodo può trattare questo valore come suggerimento, aggiungendo autorizzazioni più restrittive, se necessario. Se dwMode è 0, l'implementazione deve aprire il file usando le autorizzazioni predefinite usate quando un utente apre il file.

Valore restituito

Questo metodo può restituire i valori seguenti.

Codice restituito Descrizione
S_OK
Metodo completato correttamente.
E_OUTOFMEMORY
Impossibile caricare l'oggetto a causa di una mancanza di memoria.
E_FAIL
Non è stato possibile caricare l'oggetto per qualche motivo diverso da una mancanza di memoria.

Commenti

IPersistFile::Load carica l'oggetto dal file specificato. Questo metodo è solo per l'inizializzazione e non visualizza l'oggetto all'utente finale. Non equivale a ciò che si verifica quando un utente seleziona il comando Apri file .

Note ai chiamanti

Il metodo BindToObject nei moniker di file chiama questo metodo per caricare un oggetto durante un'operazione di associazione moniker (quando viene eseguito un oggetto collegato). In genere, le applicazioni non chiamano direttamente questo metodo.

Note per gli implementatori

Poiché le informazioni necessarie per aprire un file variano notevolmente da un'applicazione a un'altra, l'oggetto in cui viene implementato questo metodo deve anche aprire il file specificato dal parametro pszFileName . Ciò è diverso da IPersistStorage::Load e IPersistStream::Load, in cui il chiamante apre l'archiviazione o il flusso e quindi passa un puntatore di archiviazione o flusso aperto all'oggetto caricato.

Per un'applicazione che in genere usa file composti OLE, l'implementazione IPersistFile::Load può semplicemente chiamare la funzione StgOpenStorage per aprire l'oggetto di archiviazione nel file specificato. È quindi possibile procedere con l'inizializzazione normale. Le applicazioni che non usano oggetti di archiviazione possono eseguire normali procedure di apertura file.

Quando l'oggetto è stato caricato, l'implementazione deve registrare l'oggetto nella tabella degli oggetti in esecuzione (vedere IRunningObjectTable::Register).

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione objidl.h

Vedi anche

Ipersistfile