JetGetSystemParameter fonction)
S’applique à : Windows | Windows Serveurs
JetGetSystemParameter fonction)
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
instancié
Instance à utiliser pour cet appel.
pour Windows 2000, ce paramètre est ignoré et doit toujours avoir la valeur NULL.
pour Windows XP et versions ultérieures, ce paramètre est quelque peu surchargé. si le moteur fonctionne en mode hérité (Windows mode de compatibilité 2000) alors qu’une seule instance est prise en charge, ce paramètre peut avoir la valeur NULL ou peut contenir l’instance réelle retournée par JetInit. Dans les deux cas, tous les paramètres système sont lus à partir de cette instance. Si le moteur fonctionne en mode multi-instance, ce paramètre peut avoir la valeur null ou être un pointeur vers une instance créée à l’aide de JetInit ou JetCreateInstance. Lorsque ce paramètre a la valeur null , le paramètre global du système (ou par défaut) est lu. Lorsque ce paramètre est une instance, le paramètre système défini pour cette instance est Read.
sesid
Session à utiliser pour cet appel.
Lorsqu’il est spécifié, l’instance spécifiée est ignorée et l’instance associée à la session est utilisée.
paramid
ID du paramètre système qui sera lu.
Pour obtenir la liste complète des paramètres système et 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 un type 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 de terminer l’opération, car toute activité sur l’instance associée à la session a été interrompue suite à un appel à JetStopService. |
JET_errInitInProgress |
Il n’est pas possible de terminer l’opération, car l’instance associée à la session est en cours d’initialisation. |
JET_errInstanceUnavailable |
Il n’est pas possible de terminer l’opération, car l’instance associée à la session a rencontré une erreur irrécupérable qui requiert que l’accès à toutes les données soit révoqué pour protéger l’intégrité de ces données. cette erreur est renvoyé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’a pas de sens lorsqu’elle était associée à la valeur d’un autre paramètre. Cela peut se produire pour JetGetSystemParameter dans les cas suivants :
|
JET_errNotInitialized |
Impossible de terminer l’opération, car l’instance associée à la session n’a pas encore été initialisée. |
JET_errRestoreInProgress |
Il n’est pas possible de terminer l’opération, car une opération de restauration est en cours sur l’instance associée à la session. |
JET_errTermInProgress |
Il n’est pas possible de terminer l’opération, car l’instance associée à la session est en cours d’arrêt. |
JET_errInvalidSesid |
Le descripteur 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 ne sont validés qu’à titre d’effort optimal. |
JET_errInvalidInstance |
Le handle d’instance n’est pas valide ou fait référence à une instance qui a été arrêtée. Cette erreur n’est pas retournée dans toutes les circonstances. Les handles ne sont validés qu’à titre d’effort optimal. Windows Vista : cette erreur est renvoyé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 la plus grande partie du paramètre système. Si la mémoire tampon de sortie a au moins un caractère de longueur, la chaîne de cette mémoire tampon de sortie se termine par une valeur null. Remarque Cette erreur n’est pas renvoyée par toutes les mises en production. Pour plus d’informations, consultez la section Notes. |
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. Remarque Cette erreur n’est pas retournée dans certains cas pour préserver la compatibilité des applications. Pour plus d’informations, consultez la section Notes. Windows Vista : cette erreur est renvoyé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é sera 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.
Remarques
Il existe un problème important dans cette API qui est présent 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 la totalité du paramètre système, JET_wrnBufferTruncated n’est 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 inférieure au terminateur null , l’appelant doit réagir comme si JET_wrnBufferTruncated étaient 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 étaient retournés.
Configuration requise
| | |
Client
|requiert Windows Vista, Windows XP ou Windows 2000 Professional.
| |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
|Requiert 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