Access.Application spécifier l'emplacement d'acces
Bonjour à tous,
Voici la situation : je développe une application avec Visual Basic 2010 express et je dois ouvrir (afficher à l'écran) access 2007 afin d'imprimer des états.
Cependant, sur ma machine (et sur celles destinées à la production), Access 97 et Access 2007 sont installés. Et quoique je fasse, c'est d'office Access 97 qui s'ouvre et bien sûr lorsque je demande d'ouvrir ma DB .accdb ça plante (puisqu'il essaie de l'ouvrir avec Access97).
Voici mon code :
Code:
1 2 3
| Dim accessapp As Access.Application
accessapp = New Access.Application("C:\Program Files\Microsoft Office\Office12\MSACCESS.EXE ")
accessapp.OpenCurrentDatabase(DBPath, False) |
Je cherche depuis plusieurs jours...
Pourriez-vous me dire comment faire pour spécifier la version d'access ou son emplacement?
D'avance grand merci.
Bonne journée.
referencer microsoft.interop.access 12.0 dans le projet
bonjour pocahontas5
il faut etre sur d'avoir reference dans ton projet la lib
1/pannneau COM : Microsoft.Access.12.Object.Library (panneau .Net Microsoft.Interop.Access 12.0 si tu as les PIA Office 2007 installes) et
Non pas la lib
2/pannneau COM : Microsoft.Access.10.Object.Library (panneau .Net Microsoft.Interop.Access 10.0 si tu as les PIA Office 97 installes)
Faute de quoi c'est access 97 qui s'executera puisque c'est lui que tu as reference.
En plus il faut faire 2 projets
1/un projet qui reference Microsoft.Access.10.Object.Library (access 97) pour les users qui utilisent uniquement Access 97
2/un projet qui reference Microsoft.Access.12.Object.Library (access 2007) pour les users qui utilisent uniquement Access 2007.
Car ......... les lib ne sont pas compatibles tout simplement ........sans quoi Microsoft n'auraient pas fais 2 lib.
bon code.............