Solved

How can I get this internal web based app working?

Posted on 2011-09-29
14
729 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
Efficient way to get backups off site to Azure

This user guide provides instructions on how to deploy and configure both a StoneFly Scale Out NAS Enterprise Cloud Drive virtual machine and Veeam Cloud Connect in the Microsoft Azure Cloud.

 
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
 
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

Windows Server 2016: All you need to know

Learn about Hyper-V features that increase functionality and usability of Microsoft Windows Server 2016. Also, throughout this eBook, you’ll find some basic PowerShell examples that will help you leverage the scripts in your environments!

Question has a verified solution.

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

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.
Along with being a a promotional video for my three-day Annielytics Dashboard Seminor, this Micro Tutorial is an intro to Google Analytics API data.
Two types of users will appreciate AOMEI Backupper Pro: 1 - Those with PCIe drives (and haven't found cloning software that works on them). 2 - Those who want a fast clone of their boot drive (no re-boots needed) and it can clone your drive wh…

770 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