SYMPTOMS
When you connect to a Microsoft Access database from a Microsoft ASP.NET application, you receive the following error message:
System.Data.OleDb.OleDbException: Unspecified error
CAUSE
The ASP.NET Web application that has the impersonation element set to true in the Web.config file, and that has the authentication element set to Windows in the Web.config file, runs under the impersonated account. The code in the ASP.NET Web application connects to an Access database. When the connection is made, the Microsoft Jet OLE DB creates temporary files in the Temp folder in the following directory:
Document and Settings\ServerName\ASPNET\Local settings
where ServerName is the name of your server.
If the impersonated user account does not have read/write permissions enabled in the Temp folder, you receive the error message that is mentioned in the "Symptoms" section.
RESOLUTION
To resolve this problem, enable read/write permissions for the impersonated user account in the Temp folder. To do this, follow these steps:
1. |
In Windows Explorer, locate the following folder:
Document settings\ServerName\ASPNET\Local settings\Temp
where ServerName is the name of your server. |
2. |
Right-click the Temp folder, and then click Properties. |
3. |
In the Properties dialog box, click the Security tab. |
4. |
On the Security tab, click Add, and then type ServerName\UserAccount in the Select Users or Groups text box, where ServerName is the name of your server, and where UserAccount is the name of the impersonated account. Click OK. |
5. |
Click to select the Read and the Write check boxes, and then click OK. |