Partager via


Méthode IOpcFactory ::CreateStreamOnFile (msopc.h)

Crée un flux sur un fichier. Cette méthode est un wrapper simplifié pour un appel à la fonction CreateFile . Les paramètres CreateFile qui ne sont pas exposés via cette méthode utilisent leurs valeurs par défaut. Pour plus d’informations, consultez CreateFile.

Syntaxe

HRESULT CreateStreamOnFile(
  [in]          LPCWSTR               filename,
  [in]          OPC_STREAM_IO_MODE    ioMode,
  [in]          LPSECURITY_ATTRIBUTES securityAttributes,
  [in]          DWORD                 dwFlagsAndAttributes,
  [out, retval] IStream               **stream
);

Paramètres

[in] filename

Nom du fichier sur lequel le flux est créé.

[in] ioMode

Valeur qui décrit la status en lecture/écriture du flux à créer.

[in] securityAttributes

Pour plus d’informations sur la structure SECURITY_ATTRIBUTES dans ce paramètre, consultez la fonction CreateFile .

[in] dwFlagsAndAttributes

Paramètres et attributs du fichier. Pour la plupart des fichiers, FILE_ATTRIBUTE_NORMAL peuvent être utilisés.

Pour plus d’informations sur ce paramètre, consultez CreateFile.

[out, retval] stream

Pointeur vers l’interface IStream du flux.

Valeur retournée

Cette méthode retourne un code HRESULT. Les valeurs possibles sont notamment celles figurant dans le tableau suivant.

Code de retour Description
S_OK
S_OK
E_INVALIDARG
La valeur passée dans le paramètre ioMode n’est pas une valeur d’énumération OPC_STREAM_IO_MODE valide.
E_POINTER
Au moins un des paramètres de nom de fichier et de flux est NULL.
Erreur de fonction CreateFile
Code d’erreur HRESULT de la fonction CreateFile .

Remarques

N’utilisez pas de flux pour sérialiser des données de package lorsque le même flux est utilisé pour désérialiser un package, car la tentative peut entraîner un comportement non défini.

Pour plus d’informations sur l’utilisation de cette méthode lors du chargement ou de l’enregistrement d’un package, consultez la tâche de programmation Chargement d’un package ou Enregistrement d’un package .

Prise en charge sur les versions précédentes de Windows

Le comportement et les performances de cette méthode sont les mêmes sur toutes les versions de Windows prises en charge. Pour plus d’informations, consultez Prise en main avec l’API d’empaquetage et Mise à jour de plateforme pour Windows Vista.

Cohérence de thread

Les objets d’empaquetage ne sont pas thread-safe.

Pour plus d’informations, consultez la Prise en main avec l’API d’empaquetage.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 7, Windows Vista avec SP2 et Mise à jour de plateforme pour Windows Vista [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2008 R2, Windows Server 2008 avec SP2 et Mise à jour de plateforme pour Windows Server 2008 [applications de bureau uniquement]
Plateforme cible Windows
En-tête msopc.h

Voir aussi

CreateFile

ECMA-376 OpenXML

Ressources externes

Prise en main avec l’API d’empaquetage

IOpcFactory

Chargement d’un package

OPC_STREAM_IO_MODE

Vues d'ensemble

Guide de programmation de l’API d’empaquetage

Informations de référence sur l’API d’empaque

Exemples d’API d’empaquetage

Erreurs d’empaquetage

Vue d’ensemble des composants

Mise à jour de plateforme pour Windows Vista

RFC 3986 : Syntaxe générique de l’URI

Référence

Enregistrement d’un package