Función JetGetSystemParameter
Se aplica a: Windows | Windows Server
Función JetGetSystemParameter
La función JetGetSystemParameter lee las numerosas opciones de configuración del motor de base de datos.
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
);
Parámetros
instance
Instancia que se va a usar para esta llamada.
Para Windows 2000, este parámetro se omite y siempre debe ser NULL.
En el caso de Windows XP y versiones posteriores, este parámetro está sobrecargado en cierto modo. Si el motor funciona en modo heredado (modo de compatibilidad de Windows 2000) donde solo se admite una instancia, este parámetro puede ser NULL o puede contener la instancia real devuelta por JetInit. En cualquier caso, se leen todas las configuraciones de parámetros del sistema de esa instancia. Si el motor funciona en modo de varias instancias, este parámetro puede ser NULL o un puntero a una instancia creada mediante JetInit o JetCreateInstance. Cuando este parámetro es NULL , se lee la configuración de parámetros del sistema global (o valor predeterminado). Cuando este parámetro es una instancia, se lee la configuración del parámetro del sistema para esa instancia.
sesid
Sesión que se va a usar para esta llamada.
Cuando se especifica, se omite la instancia especificada y se usará la instancia asociada a la sesión.
paramid
Identificador del parámetro del sistema que se leerá.
Consulte Parámetros del sistema para obtener una lista completa de los parámetros del sistema y sus propiedades.
plParam
Búfer de salida que recibe el valor del parámetro del sistema seleccionado si ese parámetro del sistema es de un tipo entero.
szParam
Búfer de salida que recibe el valor del parámetro del sistema seleccionado si ese parámetro del sistema es de un tipo de cadena.
cbMax
Tamaño máximo en bytes del búfer de salida de cadena.
Valor devuelto
Esta función devuelve el tipo de datos JET_ERR con uno de los siguientes códigos de retorno. Para obtener más información sobre los posibles errores de ESE, vea Extensible Storage Engine Errors and Error Handling Parameters.
Código devuelto |
Descripción |
---|---|
JET_errSuccess |
La operación se ha completado correctamente. |
JET_errClientRequestToStopJetService |
No es posible completar la operación porque toda la actividad de la instancia asociada a la sesión ha dejado de funcionar como resultado de una llamada a JetStopService. |
JET_errInitInProgress |
No es posible completar la operación porque se inicializa la instancia asociada a la sesión. |
JET_errInstanceUnavailable |
No es posible completar la operación porque la instancia asociada a la sesión ha encontrado un error irrecuperable que requiere que se revoque el acceso a todos los datos para proteger la integridad de esos datos. Windows XP solo devolverá este error y versiones posteriores. |
JET_errInvalidParameter |
Uno de los parámetros proporcionados contenía un valor inesperado o contenía un valor que no tenía sentido cuando se combinaba con el valor de otro parámetro. Esto puede ocurrir para JetGetSystemParameter cuando:
|
JET_errNotInitialized |
No es posible completar la operación porque la instancia asociada a la sesión aún no se ha inicializado. |
JET_errRestoreInProgress |
No es posible completar la operación porque hay una operación de restauración en curso en la instancia asociada a la sesión. |
JET_errTermInProgress |
No es posible completar la operación porque se está cerrando la instancia asociada a la sesión. |
JET_errInvalidSesid |
El identificador de sesión no es válido o hace referencia a una sesión cerrada. Este error no se devuelve en todas las circunstancias. Los identificadores solo se validan con el mejor esfuerzo. |
JET_errInvalidInstance |
El identificador de instancia no es válido o hace referencia a una instancia que se ha apagado. Este error no se devuelve en todas las circunstancias. Los identificadores solo se validan con el mejor esfuerzo. Windows Vista: Windows Vista solo devolverá este error y versiones posteriores. |
JET_wrnBufferTruncated |
La operación se completó correctamente, pero el búfer de salida era demasiado pequeño para recibir toda la configuración del parámetro del sistema. El búfer de salida se ha rellenado con la mayor parte de la configuración del parámetro del sistema que cabría. Si el búfer de salida tiene al menos un carácter de longitud, la cadena de ese búfer de salida finalizará en null. Nota Todas las versiones no devuelven este error. Consulte la sección Comentarios para obtener más información. |
JET_errBufferTooSmall |
Error en la operación porque el búfer de salida era demasiado pequeño para recibir toda la configuración del parámetro del sistema. Nota Este error no se devuelve en algunos casos para conservar la compatibilidad de la aplicación. Consulte la sección Comentarios para obtener más información. Windows Vista: Windows Vista solo devolverá este error y versiones posteriores. |
Si se ejecuta correctamente, el búfer de salida adecuado para el parámetro del sistema solicitado se establecerá en el valor de ese parámetro del sistema.
En caso de error, el estado de los búferes de salida no estará definido.
Observaciones
Hay un problema importante en esta API que está presente en todas las versiones. Si se solicita un parámetro del sistema con un valor de cadena y el búfer de salida es demasiado pequeño para recibir toda la configuración del parámetro del sistema, no se devolverá JET_wrnBufferTruncated. JET_errSuccess se devuelve en su lugar. Si la longitud de la cadena devuelta es igual al tamaño del búfer de salida menos el terminador NULL , el autor de la llamada debe reaccionar como si se devolva JET_wrnBufferTruncated. Si se especifica un búfer de salida de cadena de tamaño cero, el autor de la llamada debe reaccionar como si se devolva JET_errInvalidParameter.
Requisitos
Requisito | Value |
---|---|
Cliente |
Requiere Windows Vista, Windows XP o Windows 2000 Professional. |
Servidor |
Requiere Windows Server 2008, Windows Server 2003 o Windows 2000 Server. |
Encabezado |
Declarado en Esent.h. |
Library |
Use ESENT.lib. |
Archivo DLL |
Requiere ESENT.dll. |
Unicode |
Se implementa como JetGetSystemParameterW (Unicode) y JetGetSystemParameterA (ANSI). |
Consulte también
JET_API_PTR
JET_ERR
JET_INSTANCE
JET_SESID
JetCreateInstance
JetInit
JetSetSystemParameter
JetStopService
Parámetros del sistema