Partager via


CMonikerFile, classe

Représente un flux de données ( IStream) nommé par un IMoniker.

Syntaxe

class CMonikerFile : public COleStreamFile

Membres

Constructeurs publics

Nom Description
CMonikerFile ::CMonikerFile Construit un objet CMonikerFile.

Méthodes publiques

Nom Description
CMonikerFile ::Close Détache et libère le flux et libère le moniker.
CMonikerFile ::D etach Détache l’objet IMoniker de cet CMonikerFile objet.
CMonikerFile ::GetMoniker Retourne le moniker actuel.
CMonikerFile ::Open Ouvre le fichier spécifié pour obtenir un flux.

Méthodes protégées

Nom Description
CMonikerFile ::CreateBindContext Obtient le contexte de liaison ou crée un contexte de liaison initialisé par défaut.

Notes

Un moniker contient des informations comme un nom de chemin d’accès à un fichier. Si vous avez un pointeur vers l’interface d’un IMoniker objet moniker, vous pouvez accéder au fichier identifié sans avoir d’autres informations spécifiques sur l’emplacement du fichier.

Dérivé de COleStreamFile, CMonikerFile prend un moniker ou une représentation sous forme de chaîne, il peut se transformer en moniker et lie au flux pour lequel le moniker est un nom. Vous pouvez ensuite lire et écrire dans ce flux. L’objectif réel est de CMonikerFile fournir un accès simple aux IStreamnoms de IMonikers afin que vous n’ayez pas à lier à un flux vous-même, mais disposez CFile de fonctionnalités au flux.

CMonikerFile ne peut pas être utilisé pour établir une liaison à quelque chose d’autre qu’un flux. Si vous souhaitez lier au stockage ou à un objet, vous devez utiliser l’interface IMoniker directement.

Pour plus d’informations sur les flux et les monikers, consultez COleStreamFile dans la référence MFC et IStream et IMoniker dans le Kit de développement logiciel (SDK) Windows.

Hiérarchie d'héritage

CObject

CFile

COleStreamFile

CMonikerFile

Spécifications

En-tête : afxole.h

CMonikerFile ::Close

Appelez cette fonction pour détacher et libérer le flux et libérer le moniker.

virtual void Close();

Notes

Peut être appelé sur des flux non ouverts ou déjà fermés.

CMonikerFile ::CMonikerFile

Construit un objet CMonikerFile.

CMonikerFile();

CMonikerFile ::CreateBindContext

Appelez cette fonction pour créer un contexte de liaison initialisé par défaut.

IBindCtx* CreateBindContext(CFileException* pError);

Paramètres

pError
Pointeur vers une exception de fichier. En cas d’erreur, elle est définie sur la cause.

Valeur de retour

Pointeur vers le contexte de liaison IBindCtx à lier si elle réussit ; sinon NULL. Si l’instance a été ouverte avec une IBindHost interface, le contexte de liaison est récupéré à partir du IBindHost. S’il n’existe aucune IBindHost interface ou si l’interface ne parvient pas à retourner un contexte de liaison, un contexte de liaison est créé. Pour obtenir une description de l’interface IBindHost , consultez le Kit de développement logiciel (SDK) Windows.

Notes

Un contexte de liaison est un objet qui stocke des informations sur une opération de liaison moniker particulière. Vous pouvez remplacer cette fonction pour fournir un contexte de liaison personnalisé.

CMonikerFile ::D etach

Appelez cette fonction pour fermer le flux.

BOOL Detach(CFileException* pError = NULL);

Paramètres

pError
Pointeur vers une exception de fichier. En cas d’erreur, elle est définie sur la cause.

Valeur de retour

Valeur différente de zéro cas de réussite ; sinon, 0.

CMonikerFile ::GetMoniker

Appelez cette fonction pour récupérer un pointeur vers le moniker actuel.

IMoniker* GetMoniker() const;

Valeur de retour

Pointeur vers l’interface moniker actuelle ( IMoniker).

Notes

Comme CMonikerFile il ne s’agit pas d’une interface, le pointeur retourné n’incrémente pas le nombre de références (via AddRef) et le moniker est libéré lorsque l’objet CMonikerFile est libéré. Si vous voulez tenir sur le moniker ou le libérer vous-même, vous devez AddRef le faire.

CMonikerFile ::Open

Appelez cette fonction membre pour ouvrir un fichier ou un objet moniker.

virtual BOOL Open(
    LPCTSTR lpszURL,
    CFileException* pError = NULL);

virtual BOOL Open(
    IMoniker* pMoniker,
    CFileException* pError = NULL);

Paramètres

lpszURL
URL ou nom de fichier du fichier à ouvrir.

pError
Pointeur vers une exception de fichier. En cas d’erreur, elle est définie sur la cause.

pMoniker
Pointeur vers l’interface IMoniker moniker à utiliser pour obtenir un flux.

Valeur de retour

Valeur différente de zéro cas de réussite ; sinon, 0.

Notes

Le paramètre lpszURL ne peut pas être utilisé sur un Macintosh. Seule la forme pMoniker peut Open être utilisée sur un Macintosh.

Vous pouvez utiliser une URL ou un nom de fichier pour le paramètre lpszURL . Par exemple :

CMyMoniker* pMyMoniker = new CMyMoniker();
pMyMoniker->Open(_T("http://www.microsoft.com"));

- ou -

CMyMoniker* pMyMoniker = new CMyMoniker();
pMyMoniker->Open(_T("file:c:\\mydata.dat"));

Voir aussi

COleStreamFile, classe
Graphique hiérarchique
CAsyncMonikerFile, classe