problème de connexion SQL via OLEDB
Bonjour,
j'ai développé une application, celle-ci marche sur un premier serveur, mais si j'installe l'application sur un second serveur, j'obtiens un message d'erreur que j'ai réussi à repérer.
Dans mon programme, j'instancie un objet de type ADODB.connection, mais si j'utilise la propriété Properties sur ce dernier, j'obtiens ce message d'erreur :
Citation:
Impossible de charger le type ADODB.PropertiesToInternalPropertiesMarshaler à partir de l'assembly xxxx, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
Mon programme fonctionne en framework 4, sur ce second serveur, j'ai installé le framework 4.5.1 (comme sur le premier), j'ai installé le Runtime de Crystal Report, j'ai mis toutes les dll en local, mais toujours rien de concluant, des suggestions? y aurait-il une nouvelle installation à faire?
Ma connexion se fait ainsi:
Code:
1 2 3 4 5 6 7 8
|
FrmMenu.CnSql.CursorLocation = ADODB.CursorLocationEnum.adUseClient
FrmMenu.CnSql.ConnectionTimeout = 999999
FrmMenu.CnSql.Provider = "sqloledb"
FrmMenu.CnSql.Properties("Data Source").Value = "xxxxx"
FrmMenu.CnSql.Properties("Initial Catalog").Value = "xxxxx"
FrmMenu.CnSql.Properties("Integrated Security").Value = "SSPI"
FrmMenu.CnSql.Open() |
Edit: j'ai remplacé mon code de connexion ainsi:
Code:
1 2 3 4 5 6 7
|
FrmMenu.CnSql.CursorLocation = ADODB.CursorLocationEnum.adUseClient
FrmMenu.CnSql.ConnectionTimeout = 999999
FrmMenu.CnSql.ConnectionString = "Provider=sqloledb;" & _
"Server=xxxxxxxxx;" & _
"Initial Catalog=xxxxxxxx;" & _
"Integrated Security=SSPI;" |
J'obtiens alors cette erreur:
Citation:
Impossible de charger le type ADODB.ErrorsToInternalErrorsMarshaler à partir de l'assembly xxxx, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
Solution trouvée : dans les références du projet, pour celle d'adodb, j'ai mis la valeur de Incorporer les types interop à False. Concernant la copie locale, j'ai laissé à False, cela ne me pose aucun problème.