Registrar un proveedor Especializados de DDEX para ODBC
Es posible modificar un proveedor de datos de ODBC ligeramente en tiempo de diseño utilizando código o XML de modo que se adapte su comportamiento, o especializado, para la implementación de DDEX. En este escenario, el Registro de Windows proporciona un medio por se encuentran los archivos de especialización.
registrar el proveedor
Para registrar la implementación de proveedor de ODBC, haga lo siguiente:
1.Agregue una clave del Registro de Specialization
Agregue una clave del Registro de especialización que indica que el proveedor OLE DB se especializado para la implementación de DDEX. Esta nueva clave debe aparecer bajo la clave de Specialization con el proveedor de DDEX para ODBC. El valor de clave es el nombre no calificado de un archivo DLL que implementa el controlador ODBC, o, si no es posible, el nombre del controlador que aparecería como DriverName en la cadena de conexión como “DRIVER= {DriverName}”. A continuación se muestra un ejemplo de un valor de clave como nombre de DLL, siempre que un GUID.
HKLM \SOFTWARE\Microsoft\VisualStudio\9.0\DataProviders\{C3D4F4CE-2C48-4381-B4D6-34FA50C51C86}\Specialization\MYODBC32.DLL
2.Especifique un valor de código base, Denominación
Si la especialización de proveedor ODBC requiere código, también debe especificar un valor de código base para esta clave que identifica la ruta de acceso completa al ensamblado que implementa el código.
3.especifique los objetos especializados
La implementación base de proveedor de DDEX para fuentes de ODBC una implementación predeterminada para cada objeto compatible. También permite reemplazar selectivo de comportamiento determinado y, en muchos casos permite la sustitución de admiten objetos. El anunciar sus funciones, este proveedor de DDEX intenta encontrar y crear instancias de objetos especializados registrados para un proveedor OLE DB específico.
Bajo la clave para el controlador ODBC DLL, proporcione los nombres de objetos compatibles con los detalles de implementación. A continuación se muestra un conjunto de objetos admiten posibles:
IVsDataConnectionPromptDialog
IVsDataConnectionProperties
IVsDataConnectionUIControl
IVsDataObjectSupport
IVsDataSourceInformation
IVsDataViewSupport
Los proveedores de DDEX también deben incluir en el registro una indicación cuyo los objetos en admiten. Deben hacerlo por dos motivos:
El motor de DDEX, así como los clientes, deben poder determinar las capacidades de un proveedor determinado sin tener que cargar el ensamblado del proveedor.
En algunos casos, puede ser necesario que el proveedor proporciona información sobre cómo crear instancias o implementar uno o más de los objetos admitidos.
Para indicar los objetos admitidos, un proveedor debe hacer lo siguiente:
Agregue las claves para los objetos admitidos adicionales. Para cada uno de ellos, proporcione el nombre de un tipo administrado que proporciona la implementación como valor predeterminado de la clave. Este nombre automáticamente con ámbito en el ensamblado especificado por el valor de código base, pero también puede ser un nombre de tipo completo incluso los detalles del ensamblado. Los siguientes son claves adicionales que puede especificar para los objetos admitidos adicionales:
IVsDataConnectionPromptDialog
IVsDataConnectionProperties
IVsDataConnectionUIControl
IVsDataObjectSupport
IVsDataSourceInformation
IVsDataViewSupport
Observe que las teclas de IVsDataObjectSupport y de IVsDataViewSupport proporcionan la ubicación de los archivos XML respectivos. (Vea Compatibilidad con el objeto de datos de DDEX y Compatibilidad con la vista de datos de DDEX para obtener más información.) Éstos se pueden especificar directamente, como una ruta a una ubicación del archivo en el disco, o como un puntero a un recurso en un ensamblado especificado. Esto elimina la necesidad de implementar estas clases para proporcionar manualmente una secuencia XML.
Observe, también, que para la clave de IVsDataSourceInformation, puede insertar varios pares de nombre/valor. Éstos pueden proporcionar información sobre el origen de datos estático directamente, sin necesidad de proporcionar código para implementar la clase de IVsDataSourceInformation.
4.Asigna a un origen de datos
el proveedor de DDEX para ODBC admite un 1:1 que asigna entre un origen de datos de DDEX y un proveedor OLE DB correspondiente. Suele ser el caso que un proveedor ODBC se escribe para un origen de datos específico.
Para asignar un origen de datos a un proveedor ODBC, haga lo siguiente:
Si no existe, cree el origen de datos de DDEX haciendo lo siguiente:
Cree un identificador de GUID para el origen de datos y colóquelo en el registro con DataSources.
Agregue un valor de DefaultProvider a esta clave, cuyo valor es el GUID del proveedor predeterminado DDEX para el origen de datos.
Proporcione un valor en la especialización de la raíz para el proveedor OLE DB (el que se invoca con el valor de ProgID). Esto anuncia la disponibilidad de especialización de proveedor OLE DB para el origen de datos especificado.
Proporcione una clave DataSource cuyo valor es el GUID del origen de datos de DDEX.
Asigne el origen de datos de DDEX al proveedor OLE DB estableciendo el valor del Registro de SpecializedProvider (bajo la clave del registro para el origen de datos de DDEX), cuyo valor se establece en ProgID de proveedor OLE DB correspondiente.