问题
I've installed Visual FoxPro driver from this link on my 64 Bit Windows 7 Home Premium OS and tried to register vfpoledb.dll using REGSVR32. I could able to register this dll but when run my application which accesses VFP database is throwing the following error:
System.InvalidOperationException: The 'VFPOLEDB.1' provider is not registered on the local machine.
The same application is working fine in 32 bit Windows 7 Home Premium OS without any issues. I have googled for 64 bit VFP driver and found out that there are no VFP drivers for 64 bit OS from this link. Kindly help me to resolve this issue.
回答1:
I have found out that there is no 64 bit VFP Driver for 64 bit OS. All we have to do is to change the build option in project properties and set the Platform Target to X86 instead of Any CPU. Build the application for X86. Please refer to this for more details.
回答2:
It's a bit late, but may helps somebody else:) You can use Advantage OLE DB Provider for Windows 64-bit, which works like VFPOLEDB. Example in python:
conn = win32com.client.Dispatch('ADODB.Connection')
dsn = 'Provider=Advantage OLE DB Provider;Data Source=%s; ServerType=ADS_LOCAL_SERVER; TableType=ADS_VFP;' % folder
conn.Open(dsn)
cmd.CommandText = 'ALTER TABLE test ALTER COLUMN area NOT NULL'
cmd.Execute()
回答3:
This Page describes how to run the 32 bit drivers on 64-bit windows. (You must set them up in the 32-bit ODBC Administrator.)
来源:https://stackoverflow.com/questions/6543670/visual-foxpro-driver-for-64-bit-windows-7