Solved

Problems with a root global.asa and iis 7.5

Posted on 2011-02-28
9
3,691 Views
Last Modified: 2012-05-11
We are upgrading our hardware and OS.  Going from Windows 2003 Enterprise w/ iis 6 to WIndows 2008 R2 w/iis7.5.

The following code is my working global.asa code and the page code that utilizes it.

Global.asa:


Sub Application_OnStart
      Set vrmgr = Server.CreateObject("ADODB.Connection")
      vrmgr.ConnectionString = "DRIVER={SQL Server};SERVER=x.x.x.x;database=clientDB;UID=usename;PWD=password"
      vrmgr.Open
      Set Application("vrmgr") = vrmgr
End Sub

default.asp:

Set objConn = Server.CreateObject("ADODB.Connection")
objConn.open Application("vrmgr")

I get this error:

Microsoft OLE DB Provider for ODBC Drivers error '80004005'

[Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified


What doesn't make sense to me is that this code is used through out the site.  It only seems to fail on my initial default.asp page.  My concern is that I have over 100 sites to migrate.  The majority of them have this type of setup.

Any help would be very much appreciated.
0
Comment
Question by:vrmgr
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 5
  • 3
9 Comments
 
LVL 29

Expert Comment

by:sammySeltzer
ID: 35001904
I think that the issue you are having is because you upgraded from 32bit server to 64bit server.

So, there are 2 versions of ODBC to worry about on 64-bit machines: the 32-bit version and the 64-bit version. So you have to Add or make changes in 2 places to cover both types.

Click Start - Admin Tools - Data Sources gets you to the 64-bit version;
 Start - Run -C:\Windows\SysWOW64\odbcad32.exe gets you to the 32-bit version.
Do all your adds/deletes/changes in both.

So basically, enable 32bit option to get your stuff to work.

Good luck
0
 
LVL 1

Author Comment

by:vrmgr
ID: 35009093
Thanks for your reply sammySeltzer.  We've never used DSN sources that were setup before.  Is that what you are referring to?

We are using DSN-less connections.  Nothing I've tried - enabling the 32bit applications - changing the AppPool Identity user and doubles checking that they do have read access to the path.

Any other thoughts?


0
 
LVL 29

Expert Comment

by:sammySeltzer
ID: 35011033
No, I wasn't referring to setting up dsn but try this. This is dsn-less connection:


Set conn = Server.CreateObject("ADODB.Connection")
    conn.Open "Driver={SQL Server};" & _
            "Server=serverName;" & _
            "Address=serverName,1433;" & _
            "Network=DBMSSOCN;" & _
            "Database=DBName;" & _
            "Uid=userid;" & _
            "Pwd=password"        

Please show error message if you run into one using this.

This is what we use for our windows 2008 R2 with sql server 2008
0
Free learning courses: Active Directory Deep Dive

Get a firm grasp on your IT environment when you learn Active Directory best practices with Veeam! Watch all, or choose any amount, of this three-part webinar series to improve your skills. From the basics to virtualization and backup, we got you covered.

 
LVL 1

Author Comment

by:vrmgr
ID: 35018035
That still only works when i do it in the default.asp page itself.  When I read it from the the global.asa it still gives me the same error.

I'm convinced that there is a setting that I am missing in iis7.

Anything else?
0
 
LVL 29

Expert Comment

by:sammySeltzer
ID: 35018779
>>That still only works when i do it in the default.asp page itself.

I thought that was where it was failing?

Let me look deeper and see what I can come up with.
0
 
LVL 1

Author Comment

by:vrmgr
ID: 35020166
No - it's failing when setting it in the global.asa file as an application variable and then trying to access it in the default and subsequent pages.
0
 
LVL 1

Accepted Solution

by:
vrmgr earned 0 total points
ID: 35723716
Apparnetly IIS7.5 simply doesn't accept the same syntax that iis6 did.  I have to make slight variations to the code and it works just fine.  It's unfortunately because I have a lot of sites to migrate.

Thank you all for your help.
0
 
LVL 1

Author Closing Comment

by:vrmgr
ID: 35759478
I never found a resolution other than rewriting the code.
0
 

Expert Comment

by:gudipatisv
ID: 36819050
I have a question in this regards, our is DNS less and the connection string is appropriate in global.asa file.But, we still get error message.
0

Featured Post

NFR key for Veeam Backup for Microsoft Office 365

Veeam is happy to provide a free NFR license (for 1 year, up to 10 users). This license allows for the non‑production use of Veeam Backup for Microsoft Office 365 in your home lab without any feature limitations.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

What is an ISAPI filter?   •      It's an assembly (.dll file) that can add or change the way IIS works.   •      They can be enabled globally for your web server or on a site-by-site basis.   When the IIS server receives a request, enabling the ISAPI fi…
This demonstration started out as a follow up to some recently posted questions on the subject of logging in: http://www.experts-exchange.com/Programming/Languages/Scripting/JavaScript/Q_28634665.html and http://www.experts-exchange.com/Programming/…

751 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question