2009-07-28 7 views
1

Comment le constructeur OleDbConnection sait quelle DLL du fournisseur (je suppose que c'est une DLL) pour appeler un nom de fournisseur donné dans la chaîne de connexion? Par exemple, dans le code suivant ...Comment les chaînes de connexion OLE DB sont-elles mappées aux DLL?

string cnStr = "Provider=Sybase.ASEOLEDBProvider.2;Server Name=etc..."; 
OleDbConnection cn = new OleDbConnection(cnStr); 

Comment ne OleDbConnection savoir où trouver Provider=Sybase.ASEOLEDBProvider.2? J'essaie de déboguer un problème d'accès aux données dans mon application Winforms et je pense que cela peut être lié à un bogue du pilote qui a été corrigé, donc j'ai besoin de mettre à jour ma DLL.

Répondre

4

Le mappage est effectué dans le registre. Pour SQLOLEDB, j'ai un emplacement d'assembly de %CommonProgramFiles%\System\Ole DB\sqloledb.dll sous l'ID de classe approprié.

+0

Vous l'avez. Merci. –

+0

De rien, heureux d'aider! –

Questions connexes