Compartir a través de


Función SQLRemoveTranslator

Conformidad
Versión introducida: ODBC 3.0

Resumen
SQLRemoveTranslator quita información sobre un traductor de la sección Odbcinst.ini de la información del sistema y disminuye el recuento de uso de componentes del traductor en 1.

Sintaxis

  
BOOL SQLRemoveTranslator(  
     LPCSTR    lpszTranslator,  
     LPDWORD   lpdwUsageCount);  

Argumentos

lpszTranslator
[Entrada] Nombre del traductor como registrado en la clave de Odbcinst.ini de la información del sistema.

lpdwUsageCount
[Salida] Recuento de uso del traductor después de llamar a esta función.

Devoluciones

La función devuelve TRUE si se ejecuta correctamente, FALSE si se produce un error. Si no existe ninguna entrada en la información del sistema cuando se llama a esta función, la función devuelve FALSE.

Diagnóstico

Cuando SQLRemoveTranslator devuelve FALSE, se puede obtener un valor *pfErrorCode asociado llamando a SQLInstallerError. En la tabla siguiente se enumeran los valores *pfErrorCode que SQLInstallerError puede devolver y explica cada uno en el contexto de esta función.

*pfErrorCode Error Descripción
ODBC_ERROR_GENERAL_ERR Error general del instalador Error por el que no se produjo ningún error de instalador específico.
ODBC_ERROR_COMPONENT_NOT_FOUND Componente no encontrado en el Registro El instalador no pudo quitar la información del traductor porque no existía en el registro o no se encontró en el registro.
ODBC_ERROR_INVALID_NAME Nombre de controlador o traductor no válido El argumento lpszTranslator no era válido.
ODBC_ERROR_USAGE_UPDATE_FAILED No se pudo incrementar ni disminuir el recuento de uso de componentes El instalador no pudo disminuir el número de uso del controlador.
ODBC_ERROR_OUT_OF_MEM No hay memoria suficiente El instalador no pudo realizar la función debido a una falta de memoria.

Comentarios

SQLRemoveTranslator complementa la función SQLInstallTranslatorEx y actualiza el recuento de uso de componentes en la información del sistema. Solo se debe llamar a esta función desde una aplicación de instalación.

SQLRemoveTranslator disminuirá el recuento de uso de componentes en 1. Si el recuento de uso de componentes va a 0, se quitará la entrada del traductor en la información del sistema. La entrada del traductor se encuentra en la siguiente ubicación en la información del sistema, bajo el nombre del traductor:

HKEY_LOCAL_MACHINE

SOFTWARE

ODBC

Odbcinst.ini

SQLRemoveTranslator no quita realmente ningún archivo. El programa de llamada es responsable de eliminar archivos y mantener el recuento de uso de archivos. Solo después de que el recuento de uso de componentes y el recuento de uso de archivos hayan alcanzado cero es un archivo eliminado físicamente. Algunos archivos de un componente se pueden eliminar y otros no eliminados, en función de si otras aplicaciones usan los archivos que han incrementado el número de uso de archivos.

SQLRemoveTranslator también se denomina como parte de un proceso de actualización. Si una aplicación detecta que tiene que realizar una actualización y que ha instalado previamente el controlador, el controlador debe quitarse y volver a instalarlo. Primero se debe llamar a SQLRemoveTranslator para disminuir el número de uso de componentes y, a continuación, se debe llamar a SQLInstallTranslatorEx para incrementar el número de uso de componentes. El programa de instalación de la aplicación debe reemplazar físicamente los archivos antiguos por los nuevos archivos. El recuento de uso de archivos seguirá siendo el mismo y otras aplicaciones que usan los archivos de versión anteriores ahora usarán la versión más reciente.

Para información acerca de Vea
Instalación de un traductor SQLInstallTranslatorEx