Lỗi connect access của win 64 ko hỗ trợ access search trên microsoft lãm dịch nhé đại khái đơn giản là sửa lại hàm đọc file
tiếng việt cách chỉnh sửa cơ bản
[You must be registered and logged in to see this link.]ko đc thì dưới
view
[You must be registered and logged in to see this link.] tìm hướng giải quyết code hoặc
onnecting to MS Access on Windows 64-Bit
Folks, like many of you I struggled with the deprecation of JET 4.0 in Windows Vista/7 on 64-bit machines. A process running simply for years, ported to a faster machine simply stopped working with the error: 'Microsoft.Jet.OLEDB.4.0' provider is not registered. I was annoyed at the lack of notice from MS and lack of clear instructions. After tinkering I found the solution and I’ll post it first directly, with details after, for the benefit of those just as frustrated as I. The situation I describe is for VB, but may work in other code/environments.
1. Download and run AccessDatabaseEngine_x64.exe
(http://www.microsoft.com/downloads/en/details.aspx?FamilyID=c06b8369-60dd-4b64-a44b-84b371ede16d&displaylang=en)
2. Change the connection string in your code to:
Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ= <-db name and path here
There is no need to upgrade/replace JET or emulate 32-bit connections. You don’t have to buy a new version of MS Office/Access, Access does not even need to be installed on the machine, you just need the driver. No need to convert to SQL Express. My legacy code is now running flawlessly on Windows 7 quad 64-bit machine without any office apps installed.
When I first encountered the issue I tried to replace/upgrade JET but it was not available for 64-Bit and there were no plans to create it. Apparently, there is now a version released for 64-bit windows but you don’t need it. The MS Access Driver exists on older platforms as well and can be used instead of JET on 32-bit machines as well. However, there is one important detail concerning “*.accbd”, you must include this in the string or it wont work. Many examples posted on the web look like this: Driver={Microsoft Access Driver (*.mdb)} But it will produce an error in some cases indicating the DB and driver were not supplied in the string. *.accdb needs to be included as well.
Replace: Provider=Microsoft.Jet.OLEDB.4.0;Data Source=
With: Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=
Full pseudo code:
dbLocation = "C:\dbstore\myAccess.mdb"
Set objADO = CreateObject("ADODB.Connection")
objADO.Open "Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=" & dbLocation
All other SQL calls and objects are unchanged.
Have not tried yet in C++, or with Excel, or as a DNS location, but test it yourself.