Compartir a través de


Función SQLRemoveDriverManager

Conformidad
Versión introducida: ODBC 3.0: en desuso en Windows XP Service Pack 2, Windows Server 2003 Service Pack 1 y sistemas operativos posteriores.

Resumen
SQLRemoveDriverManager cambia o quita información sobre los componentes principales de ODBC de la entrada Odbcinst.ini en la información del sistema.

Sintaxis

  
BOOL SQLRemoveDriverManager(  
     LPDWORD     pdwUsageCount);  

Argumentos

pdwUsageCount
[Salida] Recuento de uso del Administrador de controladores 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 SQLRemoveDriverManager 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 Administrador de controladores porque no existía en el registro o no se encontró en el registro.
ODBC_ERROR_USAGE_UPDATE_FAILED No se pudo incrementar ni disminuir el recuento de uso de componentes El instalador no pudo disminuir el recuento de uso del Administrador de controladores.
ODBC_ERROR_OUT_OF_MEM No hay memoria suficiente El instalador no pudo realizar la función debido a una falta de memoria.

Comentarios

SQLRemoveDriverManager complementa la función SQLInstallDriverManager 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.

SQLRemoveDriverManager disminuirá el número de uso de componentes principales en 1. Si el recuento de uso de componentes va a 0, se quitará la información del sistema de entrada. La entrada del componente principal está en la siguiente ubicación de la información del sistema, bajo el título "ODBC Core":

HKEY_LOCAL_MACHINE

SOFTWARE

ODBC

Odbcinst.ini

Precaución

Una aplicación no debe quitar físicamente los archivos del Administrador de controladores cuando el recuento de uso de componentes y el recuento de uso de archivos alcance cero.

SQLRemoveDriverManager no quita realmente ningún archivo. El programa de llamada es responsable de eliminar archivos y mantener los recuentos de uso de archivos. Sin embargo, los archivos del Administrador de controladores no deben quitarse cuando el recuento de uso de componentes y el recuento de uso de archivos han alcanzado cero, ya que otras aplicaciones que no han incrementado el recuento de uso de archivos pueden usar estos archivos.

SQLRemoveDriverManager se llama como parte del proceso de desinstalación. Los componentes principales de ODBC (que incluyen el Administrador de controladores, la biblioteca de cursores, el instalador, la biblioteca de idiomas, el administrador, los archivos thunking, etc.) se desinstalan en su conjunto. Los archivos siguientes no se quitan cuando se llama a SQLRemoveDriverManager como parte del proceso de desinstalación:

ODBC32DLL
ODBCCR32.DLL
ODBCCU32.DLL
ODBCINT.DLL
ODBCTRAC.DLL
MSVCRT40.DLL
ODBCCP32.CPL

ODBCCP32.DLL
ODBC16GT.DLL
ODBC32GT.DLL
DS16GT.DLL
DS32GT.DLL
ODBCAD32.EXE

SQLRemoveDriverManager 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 SQLRemoveDriverManager para disminuir el número de uso de componentes. A continuación, se debe llamar a SQLInstallDriverEx para incrementar el número de uso de componentes. El programa de instalación de la aplicación debe reemplazar los archivos de componente principal antiguos por los nuevos archivos. Los recuentos de uso de archivos seguirán siendo los mismos y otras aplicaciones que usan los archivos de componentes principales de la versión anterior ahora usarán los archivos de versión más recientes.

Para información acerca de Vea
Instalación de un administrador de controladores SQLInstallDriverManager