Função JetGetSystemParameter
Aplica-se a: Windows | Windows Server
Função JetGetSystemParameter
A função JetGetSystemParameter lê as várias definições de configuração do mecanismo de banco de dados.
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
A instância a ser usada para essa chamada.
Para o Windows 2000, esse parâmetro é ignorado e sempre deve ser NULL.
Para o Windows XP e versões posteriores, esse parâmetro está um pouco sobrecarregado. Se o mecanismo estiver operando no modo herdado (modo de compatibilidade do Windows 2000) em que apenas uma instância tem suporte, esse parâmetro poderá ser NULL ou conter a instância real retornada pelo JetInit. Em ambos os casos, todas as configurações de parâmetro do sistema são lidas dessa instância. Se o mecanismo estiver operando no modo de várias instâncias, esse parâmetro poderá ser NULL ou um ponteiro para uma instância criada usando JetInit ou JetCreateInstance. Quando esse parâmetro é NULL , a configuração de parâmetro do sistema global (ou padrão) é lida. Quando esse parâmetro é uma instância, a configuração de parâmetro do sistema para essa instância é lida.
sesid
A sessão a ser usada para essa chamada.
Quando especificado, a instância especificada é ignorada e a instância associada à sessão será usada.
paramid
A ID do parâmetro do sistema que será lido.
Consulte Parâmetros do sistema para obter uma lista completa de parâmetros do sistema e suas propriedades.
plParam
O buffer de saída que receberá o valor do parâmetro do sistema selecionado se esse parâmetro do sistema for de um tipo inteiro.
szParam
O buffer de saída que receberá o valor do parâmetro do sistema selecionado se esse parâmetro do sistema for de um tipo de cadeia de caracteres.
cbMax
O tamanho máximo em bytes do buffer de saída da cadeia de caracteres.
Valor Retornado
Essa função retorna o tipo de dados JET_ERR com um dos seguintes códigos de retorno. Para obter mais informações sobre os possíveis erros de ESE, consulte Erros extensíveis do mecanismo de armazenamento e parâmetros de tratamento de erros.
Código de retorno |
Descrição |
---|---|
JET_errSuccess |
A operação foi concluída com sucesso. |
JET_errClientRequestToStopJetService |
Não é possível concluir a operação porque todas as atividades na instância associada à sessão cessaram como resultado de uma chamada para JetStopService. |
JET_errInitInProgress |
Não é possível concluir a operação porque a instância associada à sessão está sendo inicializada. |
JET_errInstanceUnavailable |
Não é possível concluir a operação porque a instância associada à sessão encontrou um erro fatal que exige que o acesso a todos os dados seja revogado para proteger a integridade desses dados. Esse erro só será retornado pelo Windows XP e versões posteriores. |
JET_errInvalidParameter |
Um dos parâmetros fornecidos continha um valor inesperado ou continha um valor que não fazia sentido quando combinado com o valor de outro parâmetro. Isso pode acontecer para JetGetSystemParameter quando:
|
JET_errNotInitialized |
Não é possível concluir a operação porque a instância associada à sessão ainda não foi inicializada. |
JET_errRestoreInProgress |
Não é possível concluir a operação porque uma operação de restauração está em andamento na instância associada à sessão. |
JET_errTermInProgress |
Não é possível concluir a operação porque a instância associada à sessão está sendo desligada. |
JET_errInvalidSesid |
O identificador de sessão é inválido ou se refere a uma sessão fechada. Esse erro não é retornado em todas as circunstâncias. Os identificadores são validados apenas com base no melhor esforço. |
JET_errInvalidInstance |
O identificador de instância é inválido ou se refere a uma instância que foi desligada. Esse erro não é retornado em todas as circunstâncias. Os identificadores são validados apenas com base no melhor esforço. Windows Vista: Esse erro só será retornado pelo Windows Vista e versões posteriores. |
JET_wrnBufferTruncated |
A operação foi concluída com êxito, mas o buffer de saída era muito pequeno para receber toda a configuração de parâmetro do sistema. O buffer de saída foi preenchido com a maior parte da configuração de parâmetro do sistema que se ajustaria. Se o buffer de saída tiver pelo menos um caractere de comprimento, a cadeia de caracteres nesse buffer de saída será terminada em nulo. Nota Esse erro não é retornado por todas as versões. Consulte a seção Comentários para obter mais informações. |
JET_errBufferTooSmall |
A operação falhou porque o buffer de saída era muito pequeno para receber toda a configuração de parâmetro do sistema. Nota Esse erro não é retornado em alguns casos para preservar a compatibilidade do aplicativo. Consulte a seção Comentários para obter mais informações. Windows Vista: Esse erro só será retornado pelo Windows Vista e versões posteriores. |
Em caso de êxito, o buffer de saída apropriado para o parâmetro do sistema solicitado será definido como o valor desse parâmetro do sistema.
Em caso de falha, o estado dos buffers de saída será indefinido.
Comentários
Há um problema importante nessa API que está presente em todas as versões. Se um parâmetro do sistema com um valor de cadeia de caracteres for solicitado e o buffer de saída for muito pequeno para receber toda a configuração de parâmetro do sistema, JET_wrnBufferTruncated NÃO será retornado. JET_errSuccess é retornado. Se o comprimento da cadeia de caracteres retornada for igual ao tamanho do buffer de saída menos o terminador NULL , o chamador deverá reagir como se JET_wrnBufferTruncated fosse retornado. Se um buffer de saída de cadeia de caracteres de tamanho zero for especificado, o chamador deverá reagir como se JET_errInvalidParameter fossem retornados.
Requisitos
Requisito | Valor |
---|---|
Cliente |
Requer Windows Vista, Windows XP ou Windows 2000 Professional. |
Servidor |
Requer o Windows Server 2008, o Windows Server 2003 ou o Windows 2000 Server. |
Cabeçalho |
Declarado em Esent.h. |
Biblioteca |
Use ESENT.lib. |
DLL |
Requer ESENT.dll. |
Unicode |
Implementado como JetGetSystemParameterW (Unicode) e JetGetSystemParameterA (ANSI). |
Consulte Também
JET_API_PTR
JET_ERR
JET_INSTANCE
JET_SESID
JetCreateInstance
JetInit
JetSetSystemParameter
JetStopService
Parâmetros do sistema