Bonjour
J’ai un problème dans mon programme vb lorsque je veux l’utiliser sur un autre ordinateur.
Mon programme est simple il consiste à lire des données à partir d’une base de données ACCESS. En utilisant les ADODB
Voici le code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32 Public Class Form1 Dim cn As ADODB.Connection Dim rs As ADODB.Recordset Dim cmd As ADODB.Command Dim Cf As ADODB.Field Dim BD_sett As String Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click BD_sett = TextBox1.Text cn = New ADODB.Connection cn.ConnectionString = " Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + BD_sett + ";Persist Security Info=False" ' constante, indiquer source de données cn.Open() rs = New ADODB.Recordset rs = cn.Execute("Select * from Reynolds_h where dates like '" + Now.Date + "' order by Heures") If rs.EOF Then MsgBox("Données inexistant pour la courbe ", MsgBoxStyle.Exclamation, "Erreur courbe") End If MsgBox(rs.Fields(3).Value.ToString) rs.MoveNext() MsgBox(rs.Fields(3).Value.ToString) rs.Close() cn.Close() End Sub End Class
Sachant que le textbox1 contient le chemin de la Base de données.
Bien dans le projet j’ajoute le adodb.dll comme suit :
Dans le menu projet , cliquez sur Ajouter une référence.
Sous l'onglet .NET , double-cliquez sur adodb et puis cliquez sur OK.
Le programme fonctionne correctement sur mon ordinateur mais lorsque je l’essaye sur un autre ordinateur l’application s ouvre sans aucun problème mais lorsque j’appuie sur le boutton pour lire les données une erreur s affiche :
Could not load type ADODB.Fileds to InternalFiledsMarshaler from assembly …….
Bien sur dans cet ordinateur le dotNetFx40_client_x86_X64.exe et dotNetFx40LP_client_x86_X64fr.exe sont installé si non le programme ne démarre jamais .
J’ai créer un setup grâce a ClickOnce integrer a visual studio et je l ai installer j ai eu le mm problème .
J ai essayer de copier le fichier debug ou se trouve l executable et j ai installer le ADODB.dll grace a la commande : regsvr32.exe et le meme probleme persiste
J ai aussi créer un setup avec Inno setup en intégrant le fichier ADODB.dll dans l’installation mais le mm probleme persiste.
Sachant que access 2010 est installe sur ce PC.
Quelqu’un connait une solution ?? et merci
Partager