Fonction JetGetSystemParameter
S’applique à : Windows | Windows Server
Fonction JetGetSystemParameter
La fonction JetGetSystemParameter lit les nombreux paramètres de configuration du moteur de base de données.
JET_ERR JET_API JetGetSystemParameter(
__in JET_INSTANCE instance,
__in JET_SESID sesid,
__in unsigned long paramid,
__in_out_opt JET_API_PTR* plParam,
__out_opt JET_PSTR szParam,
__in unsigned long cbMax
);
Paramètres
instance
Instance à utiliser pour cet appel.
Pour Windows 2000, ce paramètre est ignoré et doit toujours avoir la valeur NULL.
Pour Windows XP et les versions ultérieures, ce paramètre est quelque peu surchargé. Si le moteur fonctionne en mode hérité (mode de compatibilité Windows 2000) où une seule instance est prise en charge, ce paramètre peut être NULL ou contenir le instance réel retourné par JetInit. Dans les deux cas, tous les paramètres système sont lus à partir de ce instance. Si le moteur fonctionne en mode multi-instance, ce paramètre peut être NULL ou un pointeur vers un instance créé à l’aide de JetInit ou JetCreateInstance. Lorsque ce paramètre a la valeur NULL , le paramètre système global (ou par défaut) est lu. Lorsque ce paramètre est un instance le paramètre système pour cette instance est lu.
sesid
Session à utiliser pour cet appel.
Lorsqu’il est spécifié, le instance spécifié est ignoré et le instance associé à la session est utilisé.
paramid
ID du paramètre système qui sera lu.
Pour obtenir la liste complète des paramètres système et de leurs propriétés, consultez Paramètres système .
plParam
Mémoire tampon de sortie qui reçoit la valeur du paramètre système sélectionné si ce paramètre système est d’un type entier.
szParam
Mémoire tampon de sortie qui reçoit la valeur du paramètre système sélectionné si ce paramètre système est d’un type de chaîne.
cbMax
Taille maximale en octets de la mémoire tampon de sortie 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_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 à JetStopService. |
JET_errInitInProgress |
Il n’est pas possible d’effectuer l’opération, car le instance associé à la session est en cours d’initialisation. |
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_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 JetGetSystemParameter lorsque :
|
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_errTermInProgress |
Il n’est pas possible d’effectuer l’opération, car le instance associé à la session est en cours d’arrêt. |
JET_errInvalidSesid |
Le handle de session n’est pas valide ou fait référence à une session fermée. Cette erreur n’est pas retournée dans toutes les circonstances. Les handles sont validés uniquement sur la base du meilleur effort. |
JET_errInvalidInstance |
Le handle instance n’est pas valide ou fait référence à un instance qui a été arrêté. Cette erreur n’est pas retournée dans toutes les circonstances. Les handles sont validés uniquement sur la base du meilleur effort. Windows Vista : Cette erreur sera retournée uniquement par Windows Vista et les versions ultérieures. |
JET_wrnBufferTruncated |
L’opération s’est terminée correctement, mais la mémoire tampon de sortie était trop petite pour recevoir l’ensemble du paramètre système. La mémoire tampon de sortie a été remplie avec autant de paramètres système qu’il le faudrait. Si la mémoire tampon de sortie est d’au moins un caractère, la chaîne de cette mémoire tampon de sortie est terminée par null. Note Cette erreur n’est pas retournée par toutes les versions. Pour plus d’informations, consultez la section Remarques. |
JET_errBufferTooSmall |
L’opération a échoué, car la mémoire tampon de sortie était trop petite pour recevoir l’ensemble du paramètre système. Note Cette erreur n’est pas retournée dans certains cas pour préserver la compatibilité de l’application. Pour plus d’informations, consultez la section Remarques. Windows Vista : Cette erreur sera retournée uniquement par Windows Vista et les versions ultérieures. |
En cas de réussite, la mémoire tampon de sortie appropriée pour le paramètre système demandé est définie sur la valeur de ce paramètre système.
En cas d’échec, l’état des mémoires tampons de sortie n’est pas défini.
Notes
Cette API présente un problème important dans toutes les versions. Si un paramètre système avec une valeur de chaîne est demandé et que la mémoire tampon de sortie est trop petite pour recevoir l’intégralité du paramètre système, JET_wrnBufferTruncated ne sera PAS retourné. JET_errSuccess est retourné à la place. Si la longueur de la chaîne retournée est égale à la taille de la mémoire tampon de sortie moins le terminateur NULL , l’appelant doit réagir comme si JET_wrnBufferTruncated avaient été retournés. Si une mémoire tampon de sortie de chaîne de taille zéro est spécifiée, l’appelant doit réagir comme si JET_errInvalidParameter avaient été retournés.
Configuration requise
Condition requise | Valeur |
---|---|
Client |
Nécessite Windows Vista, Windows XP ou Windows 2000 Professionnel. |
Serveur |
Nécessite Windows Server 2008, Windows Server 2003 ou Windows 2000 Server. |
En-tête |
Déclaré dans Esent.h. |
Bibliothèque |
Utilisez ESENT.lib. |
DLL |
Nécessite ESENT.dll. |
Unicode |
Implémenté en tant que JetGetSystemParameterW (Unicode) et JetGetSystemParameterA (ANSI). |
Voir aussi
JET_API_PTR
JET_ERR
JET_INSTANCE
JET_SESID
JetCreateInstance
JetInit
JetSetSystemParameter
JetStopService
Paramètres système