# Access 32bit on Win7 64Bit ODBC Problem



## TTS (22. Mrz 2012)

Hi Zusammen

Ich stehe vor einem Problem, das mich schon den ganzen Morgen zum verzweifeln bringt und zwar:

Ich habe ein Java Programm erstellt, mit dem Produkte in einer DB gespeichert und ausgelesen werden können. Das Klappt auch wunderbar auf meinem 32Bit Rechner.

Nun habe ich jedoch en 64Bit System mit Office 32Bit und Java46Bit. 

Wenn ich versuche mich über einen erstellten Access DB Treiber (Microsoft Access Driver(*.mdb, *.accdb) zu verbinden kommt immer die Fehlermeldung:

Mrz 22, 2012 10:41:36 AM productpresenter.ProductDB connect
Schwerwiegend: null
java.sql.SQLException: [Microsoft][ODBC Driver Manager] Der angegebene DSN weist eine nicht ?bereinstimmende Architektur von Treiber und Anwendung auf.
	at sun.jdbc.odbc.JdbcOdbc.createSQLException(JdbcOdbc.java:6956)
	at sun.jdbc.odbc.JdbcOdbc.standardError(JdbcOdbc.java:7113)
	at sun.jdbc.odbc.JdbcOdbc.SQLDriverConnect(JdbcOdbc.java:3072)
	at sun.jdbc.odbc.JdbcOdbcConnection.initialize(JdbcOdbcConnection.java:323)
	at sun.jdbc.odbc.JdbcOdbcDriver.connect(JdbcOdbcDriver.java:174)
	at java.sql.DriverManager.getConnection(DriverManager.java:579)
	at java.sql.DriverManager.getConnection(DriverManager.java:221)
	at productpresenter.ProductDB.connect(ProductDB.java:47)
	at productpresenter.PresenterModelEdit.<init>(PresenterModelEdit.java:22)
	at productpresenter.PresenterControlerSplash$ButtonListener.actionPerformed(PresenterControlerSplash.java:53)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)
	at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)
	at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
	at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
	at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
	at java.awt.Component.processMouseEvent(Component.java:6504)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3321)
	at java.awt.Component.processEvent(Component.java:6269)
	at java.awt.Container.processEvent(Container.java:2229)
	at java.awt.Component.dispatchEventImpl(Component.java:4860)
	at java.awt.Container.dispatchEventImpl(Container.java:2287)
	at java.awt.Component.dispatchEvent(Component.java:4686)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
	at java.awt.Container.dispatchEventImpl(Container.java:2273)
	at java.awt.Window.dispatchEventImpl(Window.java:2713)
	at java.awt.Component.dispatchEvent(Component.java:4686)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:707)
	at java.awt.EventQueue.access$000(EventQueue.java:101)
	at java.awt.EventQueue$3.run(EventQueue.java:666)
	at java.awt.EventQueue$3.run(EventQueue.java:664)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
	at java.awt.EventQueue$4.run(EventQueue.java:680)
	at java.awt.EventQueue$4.run(EventQueue.java:678)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:677)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:211)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

BUILD SUCCESSFUL (total time: 13 minutes 43 seconds)

Ich hab schon:
 -3h google genervt
 -Den Datenquellen-Admin von Windows aus Windows/SysWOW64 statt Windows/System32 verwendet
 -DB schon xMal neu erstellt und an anderen Orten abgelegt

Ich weiss nicht mehr weiter!!
Ich hoffe ihr blickt etwas mehr durch als ich.

Danke


----------



## areafo (23. Mrz 2012)

Installier dir eine 32 Bit JRE in der du es ausführst dann klappts. Der 64 Bit Aufruf aus deiner VM geht auch an die 64 Bit Node im System und der sind keine 32 Bit treiber bekannt,.

für alle 32 Bit Treiber im System
C:\Windows\SysWOW64\odbcad32.exe
für alle 64Bit Treiber im System
C:\Windows\system32\odbcad32.exe

Achso falls du keine 32 Bit JRE willst und mit dem Gedanken spielst die 64 Bit Treiber für Access (Download: Microsoft Access Database Engine 2010 Redistributable - Microsoft Download Center - Download Details) zu installieren ^^ vergiss es . Solange Office 32 Bit installiert ist bricht der Setup ab


----------

