Lỗi microsoft.jet.oledb.4.0 provider is not registered on the local machine năm 2024

Nguyên nhân bởi vì, Jet driver jet.OLEDB.4.0 driver không hỗ trợ trên OS 64bit, để khắc phục bạn có thể làm theo cách sau.

mở IIS manager chọn Application Pools chọn pool webiste đang hoạt động sau đó click phải chuột chọn Advanced Settings trong mục: General đặt giá trị “Enable 32-Bit Applications” sang “True“

Cách 2: khắc phục lỗi The ‘Microsoft.Jet.OLEDB.4.0’ provider is not registered on the local machine

Download Microsoft Access Database Engine 2010 Redistributable từ link sau:

https://www.microsoft.com/en-us/download/details.aspx?id=13255

sau khi donwload và cài đặt lên server, cập nhật config của website hoặc ứng dụng “Provider=Microsoft.Jet.OLEDB.4.0; “ sang “Provider=Microsoft.ACE.OLEDB.12.0;”

Sửa lỗi Microsoft.Jet.OLEDB.4.0 provider không được ghi trong server(local machine)

Được viết bởi webmaster vàongày 18/12/2016 lúc 09:17 AM

Việc tạo ra ứng dụng windows phát triển trong .NET 3.5 trên Windows Server 2008 bản 32 bits. Thì khi triển khai ứng dụng trong server 64 bits nó sẽ hiển thị một cái lỗi ngớ ngẩn: "Microsoft.Jet.OLEDB.4.0' provider is not registered on the local machine".

  • 0
  • 11152

Sửa lỗi Microsoft.Jet.OLEDB.4.0 provider không được ghi trong server(local machine)

Việc tạo ra ứng dụng windows phát triển trong .NET 3.5 trên Windows Server 2008 bản 32 bits. Thì khi triển khai ứng dụng trong server 64 bits nó sẽ hiển thị một cái lỗi ngớ ngẩn: "Microsoft.Jet.OLEDB.4.0' provider is not registered on the local machine".

Nếu cách thông thường, bạn sẽ phải thay đổi lại việc xây dựng thuộc tính của project X86 từ chế độ 32 bits sang 64 bits. Đây là điều không cần thiết.

Cách để fix lỗi này:

1. Vào IIS

2. Thay đổi appPool trên Advanced Settings

3. Tại enable to 32-bit application để là true.

Như vậy là bạn đã thay đổi quản lý cấu hình X86 trên Active Solution Platform. Giờ bạn có thể chạy project của mình xem thế nào.

The Microsoft.Jet.OLEDB.4.0 hoặc Microsoft.ACE.OLEDB.12.0 provider is not registered on the local machine.

Nguyên nhân lỗi là do máy tính hiện tại đang sử dụng Offices 32 bit nhưng mặc định biên dịch của Visual Studio là Any CPU.

Khi bạn chạy trang web của mình báo lỗi The ‘Microsoft.Jet.OLEDB.4.0′ hoặc 'Microsoft.ACE.OLEDB.12.0' provider is not registered on the local machine. Lỗi ngày xảy ra thông thường do 1 trong 2 trường hợp sau:

Máy bạn không cài Office 2007 Jet drivers Hoặc là bạn chạy ứng dụng 32 bit trong môi trường x64 mặc định

Để giải quyết lỗi trên bạn có thể dùng một trong hai giải pháp sau:

Thứ nhất, tải 2007 Office System Driver của Microsoft về cài đặt (đây là cách dễ nhất)

Cách thứ hai,

Đối với Windows 2008: Vào Server Manager > Roles > Web Server (IIS) > Internet Information Services (IIS) Manager, nhìn vào phía dưới tên máy tính bạn > Application Pool.

Đối với Windows 7, 8: Vào Programs > Administrative Tools > Internet Information Services (IIS) Manager, nhìn vào phía dưới tên máy tính bạn > Application Pool.

I know that I have this problem over and over when I deploy my application on a new server because I'm using this driver to connect to a Excel file. So here it is what I'm doing lately.

There's a Windows Server 2008 R2, I install the Access drivers for a x64 bit machine and I get rid of this message, which makes me very happy just to bump into another.

This one here below works splendidly on my dev machine but on server gives me an error even after installing the latest ODBC drivers, which I think this is the problem, but this is how I solved it.

private const string OledbProviderString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\\OlsonWindows.xls;Extended Properties=\"Excel 8.0;HDR=YES\"";

I replace with the new provider like this below:

private const string OledbProviderString = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\OlsonWindows.xlsx;Extended Properties='Excel 12.0;HDR=YES;';";

But as I do this, there's one thing you should notice. Using the .xlsx file extension and Excel version is 12.0.

After I get into this error message Error: "Could Not Find Installable ISAM", I decide to change the things a little bit like below:

private const string OledbProviderString =      @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\OlsonWindows.xls;Extended Properties='Excel 8.0;HDR=YES;';"; 

and yes, I'm done with that nasty thing, but here I got another message The Microsoft Access database engine cannot open or write to the file 'time_zone'. It is already opened exclusively by another user, or you need permission to view and write its data. which tells me I'm not far away from solving it.

Maybe there's another process that opened the file meanwhile and all that I have to do is a restart and all will take start smoothly running as expected.