trying to get a local server version of Advantage OLE DB Provider to work on a 64 bit Windows 7 machine. installed the 64 bit version 10.00.0.3 release and copied my application. registered the adsoledb64.dll from the app directory. I get nothing. Doesn't write a log either. Am I going to have to compile the app on the 64 bit machine? very confused and frustrated.
views:
67answers:
1
+1
A:
Based on the information I have gleaned from the comments, it sounds as if your application is running as a 32-bit application. If so, it will not be able to load 64-bit version of the OLE DB provider. The conn.Open();
call would likely result in an error such as this:
The 'Advantage.OLEDB.1' provider is not registered on the local machine.
One way to test this would be to install the 32-bit version of the provider to see if it works.
Alternatively, you might consider using the Advantage .NET Data Provider rather than the OLE DB provider. Using a native data provider instead of going through OLE DB might prove simpler in the long run.
Mark Wilkins
2010-08-10 16:22:33
Indeed ended up with the app and lib with adv running as x86 and it worked. It did think that because I was on a virtual machine I was doing server so it threw an error for that (5185). You can put setting in ads.ini to get around that. Yes I think pure 64 apps are still rare...so runs as 32 on 64 machine is ok for me for now. I did switch to the .net provider as well. Thanks for your help!
thomcat
2010-08-11 12:42:27
@thomcat: I'm glad you got it working. Thanks for reporting back with your findings.
Mark Wilkins
2010-08-11 13:01:30