Partager via


IInitializeWithStream ::Initialize, méthode (propsys.h)

Initialise un gestionnaire avec un flux.

Syntaxe

HRESULT Initialize(
  [in] IStream *pstream,
  [in] DWORD   grfMode
);

Paramètres

[in] pstream

Type : IStream*

Pointeur vers une interface IStream qui représente la source de flux.

[in] grfMode

Type : DWORD

Une des valeurs STGM suivantes qui indique le mode d’accès pour pstream.

STGM_READ

Le flux indiqué par pstream est en lecture seule.

STGM_READWRITE

Le flux indiqué par pstream est accessible en lecture/écriture.

Valeur retournée

Type : HRESULT

Si cette méthode réussit, elle retourne S_OK. Sinon, elle retourne un code d’erreur HRESULT.

Remarques

Cette méthode est préférable à Initialiser en raison de sa capacité à utiliser des flux qui ne sont pas accessibles via un chemin Win32, tels que le contenu d’un fichier compressé avec une extension de nom de fichier .zip.

Le flux pointé vers pstream doit rester ouvert pendant la durée de vie du gestionnaire ou jusqu’à ce que IPropertyStore ::Commit soit appelé.

Lors de la première ouverture, la référence du flux source pointe vers le début du flux. Le gestionnaire peut rechercher et lire à partir du flux à tout moment. Un gestionnaire peut être implémenté pour lire toutes les propriétés du flux lors de l’initialisation ou attendre que le processus appelant tente d’énumérer ou de lire les propriétés avant de les extraire du flux.

Un gestionnaire instance ne doit être initialisé qu’une seule fois au cours de sa durée de vie. Les tentatives de réinitialisation du gestionnaire par l’appelant doivent entraîner l’erreur HRESULT_FROM_WIN32(ERROR_ALREADY_INITIALIZED).

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows Vista [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2008 [applications de bureau uniquement]
Plateforme cible Windows
En-tête propsys.h