- Windows NT 4.0
- Windows 2000
- Windows XP (x86)
- Windows Server 2003 (x86)
- Windows Server 2008 (x86)
- Windows 7 (x86)
- Windows Server 2003 (x64)
- Windows Vista (x64)
- Windows 7 (x64)
- Windows Server 2008 (x64)
- Windows Server 2008 R2 (x64)
- Windows Server 2012 (x64)
When you attempt to connect to a Microsoft Access database using the ODBC provider Microsoft.Jet.OLEDB.4.0 you receive the error message:
For x64 Systems:
The Microsoft.Jet.OLEDB.4.0 is only available as a 32-bit (x86) module. In order to use it via IIS you must change the web site to run in a 32-bit application pool.
Under IIS 7.0, 7.5 or 8.0:
- Assuming that you will not want to use ASP .net, in the IIS console in the Application Pools section, create a no managed code, integrated application pool. If you do want to maintain access to ASP .net, select the framework version you require.
- Once created, in its advanced settings set “Enable 32-bit Applications” to true
- In the Basic Settings… for the web site entry you are experiencing the error on, change the Application Pool to the newly created 32-bit pool.
- Restart the web site
In most cases where the system is running under an x64 architecture, this should fix the problem.
For x86 and x64 Systems:
We had a server down for an entire day because of this one. It was either an attempt to fix a security database fault, or an update from Microsoft Update delivered in the April 2008 patch cycle, but after the reboot for the patches, none of the JET (Access) databases on the particular server, in any IIS web would operate.
I will simply cut to the fix for you in the beginning, to expedite your likely finding of a resolution to this problem. Something had caused the service provider for the Microsoft.Jet.OLEDB.4.0 provider to become unregistered. To fix the problem issue the following command from a Command Prompt or Run:
You shouldn’t need to reboot to solve the problem, it didn’t in my case. However, if nothing happens do restart before progressing to the next step.
Additional Steps: Step 1
Reregister the components from MDAC, JET and ADO in their entirety. Simply copy the below into a BAT file and run it.
Additional Steps: Step 2
Reinstall MDAC 2.8 SP1 (Windows XP SP1 or below only). You will need to perform some registry modifications before you can reinstall MDAC as it is a protected system module.
- Open Regedit
- Navigate to:
- Look through each class ID for the following friendly name values. Delete the Class ID containing the matching friendly names:
Microsoft MDAC Response Files
Microsoft MDAC Setup Files
Microsoft SQL Server ODBC Drivers
Microsoft SQL Server Net Libs
Microsoft SQL Server OLEDB Provider
WebData Setup Exception Package
Mdac 2.8 Exception Package
- Download and reinstall MDAC 2.8 SP1 from Microsoft which should reinstall in full.
- Windows Server
- Internet Information Services
When attempting to send an email using CDO under Windows Server you receive the following unspecific error message from your application debugger or web browser session:
Your application is unable to relay email into the SMTP system.
The CDO error message is certainly due to your configuration of the SMTP server, or CDO’s inability to raise the stated SMTP server.
A frequent cause of this error message comes from messages with lengthy message lines. It is common place within SMTP systems to refuse to transmit text lines that are greater than around 1000 characters (including the CRLF).
This does not mean that the message itself cannot be greater than 1000 characters, but that individual lines before the carriage return must be less than or equal to 998 characters (the CR [carriage return] and the LF [line feed] count as the remaining two characters).
This rule applies to plain text and to HTML messages. Ensure that your messages comply with this rule.
Ensure that your ISP does not require authenticated SMTP access. If they do, you will need to modify your CDO connector to include authentication. In ASP this is achieved through the addition of the following lines into the CDO settings.
.Item(cdoSMTPAuthenticate) = cdoBasic
.Item(cdoSendUserName) = “YOUR-USER-NAME”
.Item(cdoSendPassword) = “YOUR-PASSWORD”
Ensure that your system is able to connect to to the SMTP service port. A quick trick to check for SMTP connectivity without relying upon port scanners is:
- Open a command prompt
telnet <fully-qualified-domain-name / SMTP Server IP address> 25For example: telnet smtp.www.c-amie.co.uk 25
- If the path to your SMTP server is being blocked you will see the following message
Connecting To <server>…Could not open connection to the host, on port 25 : Connect failed
If your server is unable to access the STMP network, then this error message is consistent with such a failure. The most likely cause of such a block is a firewall rule from a software firewall or a rule configured on a hardware firewall by the network administrator.
An additional consideration to make while checking for connectivity is the impact that Anti-Virus and real-time Anti-Spyware products may have. For example, McAfee Virus Scan Enterprise 8.0.0i makes use of an anti-spyware rule that prevents mass mailing worms from sending email. McAfee will block the SMTP port by default and must be configured to allow IIS (or your application) to relay email.
To reconfigure McAfee Enterprise 8.0.0i:
- Open Virus Scan Console
- Double click Access Protection
- Highlight the “Prevent mass mailing worms from sending email” and click Edit
- For IIS 6.0 running in with standard IIS 6.0 application protection add w3wp.exe to the exceptions list.
For application you will need to query the McAfee log file for the executable name involved in the error message. By default this log can be found at:
C:\Documents and Settings\All Users\Application Data\Network Associates\VirusScan\AccessProtectionLog.txt
I am seeing numerous people asking what ‘SLCC’ statements contained in the Microsoft User Agent strings for Vista and Server 2008 mean. For example:
This appears as part of the base OS install, and is not an add-in.
Nice and easy. SLCC1 stands for Secure Licensing Commerce Client version 1.0. SLCC is the service responsible for the Windows Anytime upgrade process present in Vista and Server 2008 which allows you to upgrade Vista Home Basic to Vista Ultimate Edition, or Server 2008 Standard to Server 2008 Enterprise ad-hoc.
SLCC is present in the browser identifier tag, the User Agent, in order to allow Microsoft update servers to offer you the tantalising and irresistible promise of an even more resource heavy version of Vista!