Condividi tramite


Funzione JetGetAttachInfoInstance

Si applica a: Windows | Windows Server

Funzione JetGetAttachInfoInstance

La funzione JetGetAttachInfoInstance viene usata durante un backup avviato da JetBeginExternalBackupInstance per eseguire query su un'istanza per i nomi dei file di database che devono diventare parte del set di file di backup. Verranno considerati solo i database attualmente collegati all'istanza usando JetAttachDatabase . Questi file possono essere aperti successivamente usando JetOpenFileInstance e letti usando JetReadFileInstance.

Windows XP: JetGetAttachInfoInstance viene introdotto in Windows XP.

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

Parametri

Istanza

Istanza da usare per questa chiamata.

Per Windows 2000, la variante api che accetta questo parametro non è disponibile perché è supportata solo un'istanza. L'uso di questa istanza globale è implicito in questo caso.

Per le versioni successive e Windows XP, la variante API che non accetta questo parametro può essere chiamata solo quando il motore è in modalità legacy (modalità di compatibilità windows 2000) in cui è supportata solo un'istanza. In caso contrario, l'operazione avrà esito negativo con JET_errRunningInMultiInstanceMode.

Szz

Buffer di output che riceve l'elenco di stringhe con terminazione Null che descrivono il set di file di database che devono essere parte del set di file di backup. L'elenco di stringhe restituite in questo buffer è nello stesso formato di una stringa multi-stringa usata dal Registro di sistema. Ogni stringa con terminazione null viene restituita nella sequenza seguita da un terminatore Null finale.

cbMax

Dimensione massima in byte del buffer di output.

pcbActual

Puntatore al buffer di output che riceve la quantità effettiva di dati stringa.

Valore restituito

Questa funzione restituisce il tipo di dati JET_ERR con uno dei codici restituiti seguenti. Per altre informazioni sugli errori ESE possibili, vedere Errori del motore di archiviazione estendibili e parametri di gestione degli errori.

Codice restituito

Descrizione

JET_errSuccess

Operazione riuscita.

JET_errBackupAbortByServer

L'operazione non è riuscita perché il backup esterno corrente è stato interrotto da una chiamata a JetStopBackupInstance. Questo errore verrà restituito solo da Windows XP e versioni successive.

JET_errClientRequestToStopJetService

Non è possibile completare l'operazione perché tutte le attività nell'istanza associata alla sessione hanno interrotto come risultato di una chiamata a JetStopServiceInstance.

JET_errInstanceUnavailable

Non è possibile completare l'operazione perché l'istanza associata alla sessione ha rilevato un errore irreversibile che richiede che l'accesso a tutti i dati venga revocato per proteggere l'integrità dei dati. Questo errore verrà restituito solo da Windows XP e versioni successive.

JET_errInvalidBackupSequence

L'operazione di backup non è riuscita perché è stata chiamata fuori sequenza. JetGetAttachInfoInstance restituirà questo errore se il backup corrente non è un backup completo.

JET_errInvalidParameter

Uno dei parametri forniti contiene un valore imprevisto o contiene un valore che non ha senso quando si combina con il valore di un altro parametro. Ciò può verificarsi per JetGetAttachInfoInstance quando l'handle di istanza specificato non è valido (Windows XP e versioni successive).

JET_errNoBackup

L'operazione non è riuscita perché non è in corso alcun backup esterno.

JET_errNotInitialized

Non è possibile completare l'operazione perché l'istanza associata alla sessione non è ancora stata inizializzata.

JET_errRestoreInProgress

Non è possibile completare l'operazione perché un'operazione di ripristino è in corso nell'istanza associata alla sessione.

JET_errRunningInMultiInstanceMode

L'operazione non è riuscita perché è stato effettuato un tentativo di usare il motore in modalità legacy (modalità di compatibilità di Windows 2000) in cui è supportata solo un'istanza quando esistono già più istanze.

JET_errTermInProgress

Non è possibile completare l'operazione perché l'istanza associata alla sessione viene arrestata.

In caso di esito positivo, le informazioni richieste sul set di file di database che devono far parte del set di file di backup verranno posizionate nei buffer di output in cui è stato specificato.

In caso di errore, lo stato dei buffer di output non è definito. L'errore comporterà l'annullamento dell'intero processo di backup per l'istanza.

Commenti

È importante notare che questa API non restituisce un errore o un avviso se il buffer di output è troppo piccolo per accettare l'elenco completo di file che devono essere parte del set di file di backup. L'applicazione deve sempre fornire un buffer per ricevere le dimensioni effettive di questo elenco e usare tali informazioni per determinare se l'elenco è stato troncato.

Requisiti

Requisito Valore

Client

Richiede Windows Vista o Windows XP.

Server

Richiede Windows Server 2008 o Windows Server 2003.

Intestazione

Dichiarato in Esent.h.

Libreria

Usare ESENT.lib.

DLL

Richiede ESENT.dll.

Unicode

Implementato come JetGetAttachInfoInstanceW (Unicode) e JetGetAttachInfoInstanceA (ANSI).

Vedere anche

JET_ERR
JET_INSTANCE
JetAttachDatabase
JetBeginExternalBackupInstance
JetOpenFileInstance
JetReadFileInstance
JetStopBackupInstance
JetStopServiceInstance