Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
L’interface IMDEmbedded est une interface publique utilisée pour gérer une base de données PowerPivot incorporée ou une base de données de modèle tabulaire. L’interface hérite de l’interface IPersistStream . L’interface permet les opérations suivantes :
Obtenez un identificateur au flux incorporé dans le document conteneur.
Définissez l’URL du document conteneur.
Définissez un indicateur pour indiquer si l’application d’incorporation se trouve dans un environnement hébergé.
Définissez le chemin d’accès aux fichiers temporaires utilisés par l’application d’incorporation.
Annulez l’opération incorporée actuelle.
Obtenez la taille estimée (en octets) du flux pour enregistrer l’objet incorporé. Hérité de
IPersistStream.Vérifiez si la base de données incorporée a changé depuis son dernier enregistrement. Hérité de
IPersistStream.Chargez la base de données incorporée sur le moteur local ou in-process. Hérité de
IPersistStream.Enregistrez la base de données locale ou in-process dans le flux incorporé dans le document conteneur. Hérité de
IPersistStream.
Référence
La référence suivante documente l’interface comme indiqué dans le IMDEmbedded fichier d’en-tête msmd.h .
Fichier source : PXOEmbeddedData.idl
[
local,
object,
uuid(6B6691CF-5453-41c2-ADD9-4F320B7FD421),
pointer_default(unique)
]
interface IMDEmbeddedData : IPersistStream
{
[id(1), helpstring("Set flag indicating if the application is in a hosted environment")]
HRESULT SetHosted(
[in] BOOL in_fIsHosted);
[id(2), helpstring("Set the URL for the document containing the embedded stream")]
HRESULT SetContainerURL(
[in] BSTR in_bstrURL);
[id(3), helpstring("Get identifier used to look up embedded stream in container document")]
HRESULT GetStreamIdentifier(
[out, retval] BSTR* out_pbstrStreamId);
[id(4), helpstring("Set the path used by the embedding application for temporary files")]
HRESULT SetTempDirPath(
[in] BSTR in_bstrPath);
[id(5), helpstring("Cancel the current operation")]
HRESULT Cancel();
};
IMDEmbeddedData ::GetStreamIdentifier
HRESULT GetStreamIdentifier (
[out, retval] BSTR * out_pbstrStreamId
)
Descriptif
Obtient l’identificateur utilisé par l’application hôte dans le flux incorporé dans le document conteneur.
Paramètres
out_pbstrStreamId
Spécifie l’emplacement de l’identificateur de flux.
Valeur de retour
S_OK
L’identificateur de flux a été retourné avec succès.
S_FALSE
Il n’existe aucun identificateur de flux.
E_FAIL
Une erreur s’est produite lors de l’accès à l’identificateur de flux.
Remarques
Pour vérifier si la connexion actuelle contient une base de données incorporée, l’utilisateur doit vérifier la valeur de la propriété DBPROP_MSMD_EMBEDDED_DATA à partir des propriétés de connexion OLE DB.
Les valeurs possibles pour DBPROP_MSMD_EMBEDDED_DATA sont les suivantes :
| Nom | Valeur | Définition |
|---|---|---|
| DBPROPVAL_EMBED_NONE | 0x00 | Aucune base de données incorporée disponible |
| DBPROPVAL_EMBED_EMBEDDED | 0x01 | L’application actuelle contient la base de données incorporée |
| DBPROPVAL_EMBED_LINKED | 0x02 | La base de données incorporée est hébergée dans une application distante (c’est-à-dire SharePoint Server) |
Origine
[id(1), helpstring("Get identifier used to look up embedded stream in container document")]
HRESULT GetStreamIdentifier(
[out, retval] BSTR* out_pbstrStreamId);
IMDEmbeddedData ::SetContainerURL
HRESULT SetContainerURL (
[in] BSTR in_bstrURL
)
Descriptif
Définit l’URL du fichier contenant le flux incorporé.
Paramètres
in_bstrURL
Spécifie l’URL du document conteneur.
Valeur de retour
S_OK
L’URL du conteneur a été correctement définie.
E_FAIL
Une erreur s’est produite lors de la définition de l’URL du conteneur.
Origine
[id(2), helpstring("Set the URL for the document containing the embedded stream")]
HRESULT SetContainerURL(
[in] BSTR in_bstrURL);
IMDEmbeddedData ::SetHosted
HRESULT SetHosted (
[in] BOOL in_fIsHosted
)
Descriptif
Définissez un indicateur pour indiquer si l’application d’incorporation se trouve dans un environnement hébergé.
Paramètres
in_ftHosted
TRUE si l’appelant se trouve dans une application de service hébergée (comme IIS).
Valeur de retour
S_OK
L’indicateur a été correctement défini.
E_FAIL
Une erreur s’est produite lors de la définition de l’indicateur.
Origine
[id(5), helpstring("Set flag indicating if the application is in a hosted environment")]
HRESULT SetHosted(
[in] BOOL in_fIsHosted);
IMDEmbeddedData ::SetTempDirPath
HRESULT SetTempDirPath (
[in] BSTR in_bstrPath
)
Descriptif
Définissez le chemin d’accès aux fichiers temporaires utilisés par l’application d’incorporation.
Paramètres
in_bstrPath
Chemin d’accès utilisé par l’application hôte pour les fichiers temporaires.
Valeur de retour
S_OK
Le répertoire de fichiers temporaire a été correctement défini.
E_FAIL
Une erreur s’est produite lors de la définition du chemin d’accès.
Origine
[id(4), helpstring("Set the path used by the host application for temporary files")]
HRESULT SetTempDirPath(
[in] BSTR in_bstrPath);
IMDEmbeddedData ::Cancel
HRESULT Cancel ( void )
Descriptif
Annule l’opération actuelle de base de données incorporée
Paramètres
Aucun.
Valeur de retour
S_OK
L’opération a été annulée.
DB_E_CANTCANCEL
Aucune opération annulable n’est actuellement en cours.
E_FAIL
Une erreur s’est produite lors de l’annulation de l’opération incorporée.
Origine
[id(5), helpstring("Cancel the current operation")]
HRESULT Cancel();
IMDEmbeddedData ::GetSizeMax (IPersistStream ::GetSizeMax)
HRESULT GetSizeMax (
[out] ULARGE_INTEGER * out_pcbSize
)
Descriptif
Obtient la taille estimée (en octets) du flux pour enregistrer l’objet incorporé. Hérité de IPersistStream.
Paramètres
in_bstrPath
Taille estimée (en octets) de l’image de base de données incorporée.
Valeur de retour
S_OK
La taille a été obtenue avec succès.
E_FAIL
Une erreur s’est produite lors de l’obtention de la taille.
IMDEmbeddedData ::IsDirty (IPersistStream ::IsDirty)
HRESULT IsDirty ( void )
Descriptif
Vérifie si la base de données incorporée a changé depuis son dernier enregistrement. Hérité de IPersistStream.
Paramètres
Aucune
Valeur(s) renvoyée(s)
S_OK
La base de données a changé depuis son dernier enregistrement.
S_FALSE
La base de données n’a pas changé depuis son dernier enregistrement.
E_FAIL
Une erreur s’est produite lors de l’obtention de l’état de la base de données.
IMDEmbeddedData ::Load (IPersistStream ::Load)
HRESULT Load (
[in] IStream * in_pStm
)
Descriptif
Charge la base de données incorporée dans le moteur local ou in-process. Hérité de IPersistStream.
Paramètres
in_pStm
Pointeur vers une interface de flux à partir de laquelle charger la base de données incorporée.
Valeur(s) renvoyée(s)
S_OK
La base de données a été correctement chargée.
E_OUTOFMEMORY
Mémoire insuffisante pour charger la base de données.
E_FAIL
Une erreur s’est produite lors du chargement de la base de données, différente de E_OUTOFMEMORY.
IMDEmbeddedData ::Save (IPersistStream ::Save)
HRESULT Save (
[in] IStream * in_pStm,
[in] BOOL in_fClearDirty
)
Descriptif
Enregistre la base de données locale ou in-process dans le flux incorporé dans le document conteneur. Hérité de IPersistStream.
Paramètres
in_pStm
Pointeur vers une interface de flux vers l’emplacement où enregistrer la base de données incorporée.
in_fClearDirty
Indicateur qui indique si l’indicateur sale doit être effacé après cette opération.
Valeur(s) renvoyée(s)
S_OK
La base de données a été correctement enregistrée.
STG_E_CANTSAVE
Une erreur s’est produite lors de l’enregistrement de la base de données, différente de STG_E_MEDIUMFULL.
STG_E_MEDIUMFULL
Impossible d’enregistrer la base de données, car il n’y a pas d’espace laissé sur l’appareil de stockage.