We help IT Professionals succeed at work.

80004005 error with ASP, IIS 8.5 and Access 2010

1,319 Views
Last Modified: 2015-01-31
Any assistance on the following problem caused by upgrading from IIS6 to IIS8.5 would be really appreciated.

We are getting 80004005 errors after moving a very mature, ASP portal from a virtual, Windows 2003 IIS 6 server to a new, virtual, Windows 2012 R2 IIS 8.5 server.

We have kept the existing IIS6 server in production whilst we resolve this.

The portal was originally developed 8 years ago and has been maintained and run on the same Windows 2003 server since it was first launched. 1 year ago we upgraded the AD to Windows 2012 R2 and we have migrated all of our servers to 2012 R2 except the web server.

The new web server is hosted on the same Windows 2012 R2 Hyper-V server as the original web server which has been successfully moved to another Hyper-V server.

The portal was originally developed for Access 2003 mdb and then upgraded to Access 2007 accdb. For the last 8 months we have been using the portal with Access 2010 without any modifications to the portal or any problems.

The Access 2010 databases are accessed via ODBC and we get 80004005 if the database is held locally on the web server or on our physical, Windows 2012 R2 file server.

2 of the 3 portals are working without errors and they open a single database.

The problematic portal successfully opens a "facility directory" database and then dynamically opens and close sets of 3 other databases as the user navigates from one "facility" to another "facility". We get the 80004005 when we try to run a query on the selected "facility" database, e.g.

error '80004005'
/include/facilities_facility.asp, line 97

----------------------------------------------------------------------
facilties_facility.asp, line 97 is the oRS.Open line:
----------------------------------------------------------------------
            sSQL = "SELECT FacID, Facility, [Use slots] "_
                  & "FROM Facilities "_
                  & "WHERE Facilities.AvailableOnline = 1"
            set oRS = Server.CreateObject("ADODB.recordset")
            oRS.Open sSQL, m_DbConn ,adOpenDynamic, adLockOptimistic    '--- line 97

            GetOnlineFacilities = oRS.GetRows

            oRS.Close
>

'--- Line 97 parameters:
Const adLockOptimistic = 3
Const adOpenDynamic = 2
m_DbConn = oFacilitiesConn

'--- oFacilitiesConn value:
      '--- Facilities Connection ---
      Set oFacilitiesConn = Server.CreateObject("ADODB.Connection")
      oFacilitiesConn.ConnectionString = "DSN=Facilities-" & session("DSN")
      oFacilitiesConn.Open 'Open the connection

'--- example "DSN" value = edl-staff-998
Comment
Watch Question

Scott FellDeveloper
CERTIFIED EXPERT
Fellow
Most Valuable Expert 2013

Commented:
You probably need to update your connection string.

http://www.connectionstrings.com/ and specially http://www.connectionstrings.com/access-2010/

Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\myFolder\myAccessFile.accdb;
Jet OLEDB:Database Password=MyDbPassword;

Open in new window


I have not used access in a long time and maybe somebody else has a better explanation, but I see people with better knowledge of microsoft say not to use jet and even in connectionstrings.com access/jet does not go past 2003 http://www.connectionstrings.com/microsoft-jet-ole-db-4-0/

Author

Commented:
Hi Scott,

Thank you for your post. The string appears to be correct as follows:

oConn.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0; Persist Security Info=False; Data Source=E:\edlweb\www\Epitaph\www\db\epitaph_login_db.accdb;"

Author

Commented:
Re: Jet

I agree. We stopped using Jet in the connection string when we migrated from Access 2003 to 2007 several years ago.
Scott FellDeveloper
CERTIFIED EXPERT
Fellow
Most Valuable Expert 2013

Commented:
In your question example you are using a DSN connection and not a DSN-LESS connection?

Do you have write permissions to the folder access is in and any temp folders it uses?  http://support.microsoft.com/kb/926939
Big MontyWeb Ninja at large
CERTIFIED EXPERT

Commented:
you may need to run the site in 32-bit mode. by default, iis8.5 runs all apps under 64 bit mode, and this can cause problems with classic asp apps that were originally run in 32 bit mode

http://manasbhardwaj.net/running-32-bit-web-application-iis-8/

Author

Commented:
Scott, Thank you we tried the KB but it has not helped yet but our developers will review it tomorrow.

Monty, Thank you, we already have 32 bit mode enabled but I have asked our developers to review the KB.
Big MontyWeb Ninja at large
CERTIFIED EXPERT

Commented:
any progress on this?
This one is on us!
(Get your first solution completely free - no credit card required)
UNLOCK SOLUTION

Author

Commented:
The Classic ASP code originally developed for IIS 6 is now successfully running on our new IIS 8.5 server.

Gain unlimited access to on-demand training courses with an Experts Exchange subscription.

Get Access
Why Experts Exchange?

Experts Exchange always has the answer, or at the least points me in the correct direction! It is like having another employee that is extremely experienced.

Jim Murphy
Programmer at Smart IT Solutions

When asked, what has been your best career decision?

Deciding to stick with EE.

Mohamed Asif
Technical Department Head

Being involved with EE helped me to grow personally and professionally.

Carl Webster
CTP, Sr Infrastructure Consultant
Empower Your Career
Did You Know?

We've partnered with two important charities to provide clean water and computer science education to those who need it most. READ MORE

Ask ANY Question

Connect with Certified Experts to gain insight and support on specific technology challenges including:

  • Troubleshooting
  • Research
  • Professional Opinions
Unlock the solution to this question.
Join our community and discover your potential

Experts Exchange is the only place where you can interact directly with leading experts in the technology field. Become a member today and access the collective knowledge of thousands of technology experts.

*This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

OR

Please enter a first name

Please enter a last name

8+ characters (letters, numbers, and a symbol)

By clicking, you agree to the Terms of Use and Privacy Policy.