Partager via


Fonction JetGetAttachInfoInstance

S’applique à : Windows | Windows Server

Fonction JetGetAttachInfoInstance

La fonction JetGetAttachInfoInstance est utilisée lors d’une sauvegarde lancée par JetBeginExternalBackupInstance pour interroger un instance les noms des fichiers de base de données qui doivent faire partie du jeu de fichiers de sauvegarde. Seules les bases de données actuellement attachées au instance à l’aide de JetAttachDatabase seront prises en compte. Ces fichiers peuvent ensuite être ouverts à l’aide de JetOpenFileInstance et lus à l’aide de JetReadFileInstance.

Windows XP : JetGetAttachInfoInstance est introduit dans Windows XP.

    JET_ERR JET_API JetGetAttachInfoInstance(
      __in          JET_INSTANCE instance,
      __out_opt     tchar* szz,
      __in          unsigned long cbMax,
      __out_opt     unsigned long* pcbActual
    );

Paramètres

instance

Instance à utiliser pour cet appel.

Pour Windows 2000, la variante d’API qui accepte ce paramètre n’est pas disponible, car une seule instance est prise en charge. L’utilisation de cette instance globale est implicite dans le cas présent.

Pour Windows XP et les versions ultérieures, la variante d’API qui n’accepte pas ce paramètre ne peut être appelée que lorsque le moteur est en mode hérité (mode de compatibilité Windows 2000) où une seule instance est prise en charge. Dans le cas contraire, l’opération échoue avec JET_errRunningInMultiInstanceMode.

szz

Mémoire tampon de sortie qui reçoit la liste des chaînes null terminées décrivant l’ensemble de fichiers de base de données qui doivent faire partie du jeu de fichiers de sauvegarde. La liste des chaînes retournées dans cette mémoire tampon est au même format qu’une chaîne multi string utilisée par le Registre. Chaque chaîne terminée par null est retournée dans l’ordre, suivie d’une fin null finale.

cbMax

Taille maximale en octets de la mémoire tampon de sortie.

pcbActual

Pointeur vers la mémoire tampon de sortie qui reçoit la quantité réelle de données de chaîne.

Valeur renvoyée

Cette fonction retourne le type de données JET_ERR avec l’un des codes de retour suivants. Pour plus d’informations sur les erreurs ESE possibles, consultez Erreurs du moteur de stockage extensible et Paramètres de gestion des erreurs.

Code de retour

Description

JET_errSuccess

L’opération s’est terminée avec succès.

JET_errBackupAbortByServer

L’opération a échoué, car la sauvegarde externe actuelle a été abandonnée par un appel à JetStopBackupInstance. Cette erreur sera retournée uniquement par Windows XP et les versions ultérieures.

JET_errClientRequestToStopJetService

Il n’est pas possible d’effectuer l’opération, car toutes les activités sur le instance associées à la session ont cessé à la suite d’un appel à JetStopServiceInstance.

JET_errInstanceUnavailable

Il n’est pas possible d’effectuer l’opération, car le instance associé à la session a rencontré une erreur irrécupérable qui exige que l’accès à toutes les données soit révoqué pour protéger l’intégrité de ces données. Cette erreur sera retournée uniquement par Windows XP et les versions ultérieures.

JET_errInvalidBackupSequence

L’opération de sauvegarde a échoué, car elle a été appelée hors séquence. JetGetAttachInfoInstance retourne cette erreur si la sauvegarde actuelle n’est pas une sauvegarde complète.

JET_errInvalidParameter

L’un des paramètres fournis contenait une valeur inattendue ou contenait une valeur qui n’était pas logique lorsqu’elle était combinée à la valeur d’un autre paramètre. Cela peut se produire pour JetGetAttachInfoInstance lorsque le handle instance spécifié n’est pas valide (Windows XP et versions ultérieures).

JET_errNoBackup

L’opération a échoué, car aucune sauvegarde externe n’est en cours.

JET_errNotInitialized

Il n’est pas possible d’effectuer l’opération, car le instance associé à la session n’a pas encore été initialisé.

JET_errRestoreInProgress

Il n’est pas possible d’effectuer l’opération, car une opération de restauration est en cours sur le instance associé à la session.

JET_errRunningInMultiInstanceMode

L’opération a échoué car une tentative d’utilisation du moteur a été effectuée en mode hérité (mode de compatibilité Windows 2000) où une seule instance est prise en charge alors qu’en fait plusieurs instances existent déjà.

JET_errTermInProgress

Il n’est pas possible d’effectuer l’opération, car le instance associé à la session est en cours d’arrêt.

En cas de réussite, les informations demandées sur l’ensemble de fichiers de base de données qui doivent faire partie du jeu de fichiers de sauvegarde sont placées dans les mémoires tampons de sortie lorsqu’elles sont fournies.

En cas d’échec, l’état des mémoires tampons de sortie n’est pas défini. L’échec entraîne l’annulation de l’ensemble du processus de sauvegarde pour le instance.

Notes

Il est important de noter que cette API ne retourne pas d’erreur ou d’avertissement si la mémoire tampon de sortie est trop petite pour accepter la liste complète des fichiers qui doivent faire partie de l’ensemble de fichiers de sauvegarde. L’application doit toujours fournir une mémoire tampon pour recevoir la taille réelle de cette liste et utiliser ces informations pour déterminer si la liste a été tronquée.

Spécifications

Condition requise Valeur

Client

Nécessite Windows Vista ou Windows XP.

Serveur

Nécessite Windows Server 2008 ou Windows Server 2003.

En-tête

Déclaré dans Esent.h.

Bibliothèque

Utilisez ESENT.lib.

DLL

Nécessite ESENT.dll.

Unicode

Implémenté en tant que JetGetAttachInfoInstanceW (Unicode) et JetGetAttachInfoInstanceA (ANSI).

Voir aussi

JET_ERR
JET_INSTANCE
JetAttachDatabase
JetBeginExternalBackupInstance
JetOpenFileInstance
JetReadFileInstance
JetStopBackupInstance
JetStopServiceInstance