Solved

How can I get this internal web based app working?

Posted on 2011-09-29
14
719 Views
Last Modified: 2012-05-12
Hi Everyone,

I am a independent consultant with experience in systems administration and desktop support. My experience with anything iis/asp/vbscript is little.

I have a client who is running a custom built, web based order tracking database on their SBS 2003 server. The developer passed away from cancer in 2006 or so, and they have zero documentation.

We are moving them to a SBS 2011 STD server and I need to get this database functioning for them before this new server goes live. I have the files copied to our internal testing server and the login page loads. However, I am getting a  HTTP 500 Internal Server Error on the client, and the iis logs display:

 
2011-09-29 20:14:07 127.0.0.1 POST /Login.asp accessdenied=%2Fhome%2Easp|15|80004005|[Microsoft][ODBC_Driver_Manager]_Data_source_name_not_found_and_no_default_driver_specified 8080 - 127.0.0.1 Mozilla/4.0+(compatible;+MSIE+8.0;+Windows+NT+6.1;+WOW64;+Trident/4.0;+SLCC2;+.NET+CLR+2.0.50727;+.NET4.0C;+.NET4.0E;+.NET+CLR+3.5.30729;+.NET+CLR+3.0.30729) 500 0 0 13
2011-09-29 20:14:54 127.0.0.1 GET / |9|800a0e7a|Provider_cannot_be_found._It_may_not_be_properly_installed. 8080 - 127.0.0.1 Mozilla/5.0+(Windows+NT+6.1;+WOW64;+rv:6.0.2)+Gecko/20100101+Firefox/6.0.2 500 0 0 70.

Open in new window


I'm thinking it needs some component installed to open the .mdb file in the file path.


Here is an incomplete example of the login.asp script if it helps. I can post more but I'm not sure if it's material.


<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%> 
<!--#include file="Connections/fpdiVB.asp" -->
<% Session.Timeout=90 %>
<%
' *** Validate request to log in to this site.
MM_LoginAction = Request.ServerVariables("URL")
If Request.QueryString<>"" Then MM_LoginAction = MM_LoginAction + "?" + Server.HTMLEncode(Request.QueryString)
MM_valUsername=CStr(Request.Form("username"))
If MM_valUsername <> "" Then
  MM_fldUserAuthorization="access_level"
  MM_redirectLoginSuccess="home.asp"
  MM_redirectLoginFailed="Loginfail.asp"
  MM_flag="ADODB.Recordset"
  set MM_rsUser = Server.CreateObject(MM_flag)
  MM_rsUser.ActiveConnection = MM_fpdiVB_STRING
  MM_rsUser.Source = "SELECT username, password"
  If MM_fldUserAuthorization <> "" Then MM_rsUser.Source = MM_rsUser.Source & "," & MM_fldUserAuthorization
  MM_rsUser.Source = MM_rsUser.Source & " FROM userstable WHERE username='" & Replace(MM_valUsername,"'","''") &"' AND password='" & Replace(Request.Form("password"),"'","''") & "'"
  MM_rsUser.CursorType = 0
  MM_rsUser.CursorLocation = 2

Open in new window


Thank you for any assistance!  : )
0
Comment
Question by:mikeld
  • 6
  • 6
14 Comments
 
LVL 15

Expert Comment

by:Eyal
ID: 36818305
check the connection string in this file is correct Connections/fpdiVB.asp

to see the actual error you should follow this steps

and for the missing driver you can start here
http://www.microsoft.com/download/en/details.aspx?id=5793
0
 
LVL 15

Expert Comment

by:Eyal
ID: 36818320

oops missed a link there

to see the actual error you should follow this steps
http://learn.iis.net/page.aspx/564/classic-asp-script-error-messages-no-longer-shown-in-web-browser-by-default/
0
 

Author Comment

by:mikeld
ID: 36893952
Hi Eyal,

Thank you for the information.

I turned on the error reporting and got this:

Microsoft OLE DB Provider for ODBC Drivers error '80004005'

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

/Login.asp, line 15 

Open in new window


And when I check Connections/fpdiVB.asp this is what it contains.:
<%
' FileName="Connection_ado_conn_string.htm"
' Type="ADO" 
' DesigntimeType="ADO"
' HTTP="true"
' Catalog=""
' Schema=""
Dim MM_fpdiVB_STRING
MM_fpdiVB_STRING = "Driver={Microsoft Access Driver (*.mdb)}; DBQ=c:\inetpub\wwwroot\fpdi\dbase\fprint.mdb"
%>

Open in new window


This is indeed where the mdb file is located.


As far as the driver, the system requirements are:  Supported Operating Systems: Windows 2000, Windows 98, Windows ME, Windows NT | Available for x86-based computers only.

Windows Small Business Server 2011 is basically Windows Server 2008 R2 64-bit only.


I found some discussion regarding DSN / DSN-less configuration. I have no idea what this means  : /

I tried installing the 2007 Office System Driver: Data Connectivity Components but same result.

Still lost. Thank you so much for any guidance.


0
 
LVL 15

Expert Comment

by:Eyal
ID: 36894034
0
 

Author Comment

by:mikeld
ID: 36894098
Some research led me to believe that the problem might be ODBC 32-bit versus 64-bit.

This is when I open it from Administrative Tools:
 This is when I open it from Administrative Tools:
And here it when I open it with C:\Windows\SysWOW64\odbcad32.exe:
 And here it when I open it with C:\Windows\SysWOW64\odbcad32.exe:
So, I changed the application pool to enable 32-bit applications, however now I get:
2011-09-29 21:13:20 127.0.0.1 POST /Login.asp accessdenied=%2Fhome%2Easp|15|80004005|[Microsoft][ODBC_Driver_Manager]_Data_source_name_not_found_and_no_default_driver_specified 8080 - 127.0.0.1 Mozilla/4.0+(compatible;+MSIE+8.0;+Windows+NT+6.1;+WOW64;+Trident/4.0;+SLCC2;+.NET+CLR+2.0.50727;+.NET4.0C;+.NET4.0E;+.NET+CLR+3.5.30729;+.NET+CLR+3.0.30729) 500 0 0 6

Open in new window

with the client browser showing: Service Unavailable. HTTP Error 503. The service is unavailable. And the application pool is stopped.

0
 

Author Comment

by:mikeld
ID: 36894149
Just saw the link to the 2010 64-bit Redistributable.

I installed it, restarted IIS and still get:

Microsoft OLE DB Provider for ODBC Drivers error '80004005'

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

/Login.asp, line 15 

Open in new window


Thanks!
0
PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

 
LVL 15

Expert Comment

by:Eyal
ID: 36894151
the application pool should be defined like so:
.net framework : no managed code
pipeline: integrated

enable 32bit true
0
 
LVL 15

Expert Comment

by:Eyal
ID: 36894180
try this..

"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\inetpub\wwwroot\fpdi\dbase\fprint.mdb"
0
 

Author Comment

by:mikeld
ID: 36904974
Hi,

Sorry for my lack of experience in the fundamentals here.

The app pool crashes if I set 32-bit to true.

Also, where do I put "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\inetpub\wwwroot\fpdi\dbase\fprint.mdb" at?
0
 

Author Comment

by:mikeld
ID: 36905143
I tried putting "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\inetpub\wwwroot\fpdi\dbase\fprint.mdb" in the Connections/fpdiVB.asp but get:

ADODB.Recordset error '800a0e7a'

Provider cannot be found. It may not be properly installed.

/Login.asp, line 15 

Open in new window

0
 
LVL 15

Expert Comment

by:Eyal
ID: 37016083
well... if you get this far then the asp is installed ok and the only problem is the connection string to the database

try using this site to resolve your problem
http://www.connectionstrings.com/access
0
 

Author Comment

by:mikeld
ID: 37044098
I ended up virtualizing the old server to maintain the environment for this app.
0
 

Accepted Solution

by:
ee_auto earned 0 total points
ID: 37233351
Question PAQ'd and stored in the solution database.
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

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

Suggested Solutions

Have you ever needed to get an ASP script to wait for a while? I have, just to let something else happen. Or in my case, to allow other stuff to happen while I was murdering my MySQL database with an update. The Original Issue This was written…
If you are a web developer, you would be aware of the <iframe> tag in HTML. The <iframe> stands for inline frame and is used to embed another document within the current HTML document. The embedded document could be even another website.
This Micro Tutorial demonstrates using Microsoft Excel pivot tables, how to reverse engineer competitors' marketing strategies through backlinks.
As a trusted technology advisor to your customers you are likely getting the daily question of, ‘should I put this in the cloud?’ As customer demands for cloud services increases, companies will see a shift from traditional buying patterns to new…

920 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

Need Help in Real-Time?

Connect with top rated Experts

15 Experts available now in Live!

Get 1:1 Help Now