ASP Pages suddenly stop working

We are hosting our company's intranet site on a Windows 2000 Server.  There are a few webapps programmed in asp, and all but 1 of them has stopped working.  I'm not sure if this is a Windows problem or an ASP/Frontpage/Access problem.  Nothing has changed to these programs, and since all but one broke, I figured something on our server has changed.

The problem seems to be its connection to the database it is looking at.  The database is an Access database.

When it attempts to display any results on the screen, this message appears
-----------------------------------------------------
Database Results Error
[Microsoft] [ODBC Microsoft Access Driver] General error Unable to open registry key 'Temporary (volatile) Jet DSN for process 0x1800 Thread 0x144c DBC 0x2478024 Jet'.
-----------------------------------------------------

Any ideas on where to start?  

Unfortuntaly these webapps were created in Frontpage and the database connection was made using webbots.  (At least that is what it looks like in the code).  I've tried to go into FrontPage in recreate the connection to the database, but it doesn't help.
chaokAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Lee W, MVPTechnology and Business Process AdvisorCommented:
The following is quoted from:
http://www.attention-to-details.com/newslog/38n-temporary-volatile-jet-dsn-for-process.asp

   1. the webserver environment needs "write" permission to the directory where the Access database resides. So, set permissions first. Go to Windows Explorer, Tools, Folder Options, View and turn off the very last entry in the list ("Use simple file sharing") if you haven't already done so.
   2. Now, you'll have a "Security" tab when you right-click on a folder.  Make sure you give write permission to the folder with the MS Access database to the "IUSR_***" account (with *** being your computer's name). This account is used by IIS, per default, to evaluate permissions for the default access to your local PWS website and scripts.
   3. You can create your own User account by the way and set it as default for anonymous access of PWS. To do this, go to Control Panel, Administrative tools, Internet Information Server, expand "local computer," right-click on Websites (if you don't have this, add IIS from your Windows XP Pro CD.  If you have Windows XP Home... tough luck you can't run a webserver, you have to upgrade.)  Select "Properties," Directory Security, "Edit." Here you see the default account and logon.  You can create another user account (under "Control Panel," "User Accounts") with another password and enter this here.  BUT you don't have to do all this to take care of the error above; IUSR_<machine name> is fine for now. I digress...
   4. Give the same user IUSR_<machine name> (or whatever is the default account) access to the TEMP directory of Windows. MS Access might need to write some stuff there.
   5. Give the same account write permission in MS Access itself.  These permissions can be reset by MS Access if you compact and repair the database so keep in mind to refresh this permission as necessary.
   6. If you still get the error "[Microsoft][ODBC Microsoft Access Driver]General error Unable to open
      registry key 'Temporary (volatile) Jet DSN for process", check that the database is really in the directory referenced by the DSN or the connection string in your ASP file! Also, check for misspellings in the file name. This was the reason for the error when I ran into it earlier this week.
0
brownmetalsCommented:
Hi there.

I'm not familiar with Frontpage database connection strings, but this connection string is sold and works very well with MS Access. Have you tried something like this?
<%
'----------CREATE DB CONNECTION--------------------------------
strconn="PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA SOURCE="
strconn=strconn & server.mappath("YourDatabaseNameHere.mdb") & ";"
'strconn=strconn & "USER ID=;PASSWORD=;"
'----------OPEN DB CONNECTION-----------------------------------
Set conn = Server.CreateObject("ADODB.Connection")
conn.open strconn
'----------CREATE RECORDSET-------------------------------------
Set rsCustomers = conn.execute("SELECT * From Customers")
%>

Good luck!
Jay
0
chaokAuthor Commented:
Here is the code that is currently being used.  I've never written anything using frontpage, and the guy who wrote this is gone.  Its just a bunch of FrontPage junk :) .  i'm not sure where the actual connection string it, I'll do some looking for it though.

----------------------------------------------------------------------------
      <!--webbot bot="DatabaseRegionStart" startspan
      s-columnnames="Computer,User,Room,Patch_Panel,Brand,Model,Purchase_Date,Lease_Number,Lease_Terms,Serial,Operating_System,CPU,RAM,Hard_Drive"
      s-columntypes="202,202,3,202,202,202,202,202,202,202,202,202,202,202"
      s-dataconnection="inventory" b-tableformat="TRUE" b-menuformat="FALSE"
      s-menuchoice="Computer" s-menuvalue="Computer" b-tableborder="TRUE"
      b-tableexpand="TRUE" b-tableheader="TRUE" b-listlabels="TRUE"
      b-listseparator="TRUE" i-ListFormat="0" b-makeform="FALSE"
      s-recordsource="inventory" s-displaycolumns="Computer,User" s-criteria
      s-order="[Computer] +"
      s-sql="SELECT * FROM inventory ORDER BY Computer ASC" b-procedure="FALSE"
      clientside SuggestedExt="asp" s-DefaultFields
      s-NoRecordsFound="No records returned." i-MaxRecords="256" i-GroupSize="0"
      BOTID="0" u-dblib="_fpclass/fpdblib.inc" u-dbrgn1="_fpclass/fpdbrgn1.inc"
      u-dbrgn2="_fpclass/fpdbrgn2.inc" tag="TBODY"
      preview="&lt;tr&gt;&lt;td colspan=64 bgcolor=&quot;#FFFF00&quot; align=&quot;left&quot; width=&quot;100%&quot;&gt;&lt;font color=&quot;#000000&quot;&gt;This is the start of a Database Results region. The page must be fetched from a web server with a web browser to display correctly; the current web is stored on your local disk or network.&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;"
      b-WasTableFormat="TRUE" --><!--#include file="_fpclass/fpdblib.inc"-->
<% if 0 then %>
<SCRIPT Language="JavaScript">
document.write("<div style='background: yellow; color: black;'>The Database Results component on this page is unable to display database content. The page must have a filename ending in '.asp', and the web must be hosted on a server that supports Active Server Pages.</div>");
</SCRIPT>
<% end if %>
<%
fp_sQry="SELECT * FROM inventory ORDER BY Computer ASC"
fp_sDefault=""
fp_sNoRecords="<tr><td colspan=2 align=left width=""100%"">No records returned.</td></tr>"
fp_sDataConn="inventory"
fp_iMaxRecords=256
fp_iCommandType=1
fp_iPageSize=0
fp_fTableFormat=True
fp_fMenuFormat=False
fp_sMenuChoice="Computer"
fp_sMenuValue="Computer"
fp_iDisplayCols=2
fp_fCustomQuery=False
BOTID=0
fp_iRegion=BOTID
%>
<!--#include file="_fpclass/fpdbrgn1.inc"-->
<!--webbot bot="DatabaseRegionStart" endspan i-checksum="21034" -->
0
Cloud Class® Course: Ruby Fundamentals

This course will introduce you to Ruby, as well as teach you about classes, methods, variables, data structures, loops, enumerable methods, and finishing touches.

chaokAuthor Commented:
Ok, here are some connection strings, they were in the Global.asa file
-------------------------------------------------------------------------------------
      <!--webbot bot="DatabaseRegionStart" startspan
      s-columnnames="Computer,User,Room,Patch_Panel,Brand,Model,Purchase_Date,Lease_Number,Lease_Terms,Serial,Operating_System,CPU,RAM,Hard_Drive"
      s-columntypes="202,202,3,202,202,202,202,202,202,202,202,202,202,202"
      s-dataconnection="inventory" b-tableformat="TRUE" b-menuformat="FALSE"
      s-menuchoice="Computer" s-menuvalue="Computer" b-tableborder="TRUE"
      b-tableexpand="TRUE" b-tableheader="TRUE" b-listlabels="TRUE"
      b-listseparator="TRUE" i-ListFormat="0" b-makeform="FALSE"
      s-recordsource="inventory" s-displaycolumns="Computer,User" s-criteria
      s-order="[Computer] +"
      s-sql="SELECT * FROM inventory ORDER BY Computer ASC" b-procedure="FALSE"
      clientside SuggestedExt="asp" s-DefaultFields
      s-NoRecordsFound="No records returned." i-MaxRecords="256" i-GroupSize="0"
      BOTID="0" u-dblib="_fpclass/fpdblib.inc" u-dbrgn1="_fpclass/fpdbrgn1.inc"
      u-dbrgn2="_fpclass/fpdbrgn2.inc" tag="TBODY"
      preview="&lt;tr&gt;&lt;td colspan=64 bgcolor=&quot;#FFFF00&quot; align=&quot;left&quot; width=&quot;100%&quot;&gt;&lt;font color=&quot;#000000&quot;&gt;This is the start of a Database Results region. The page must be fetched from a web server with a web browser to display correctly; the current web is stored on your local disk or network.&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;"
      b-WasTableFormat="TRUE" --><!--#include file="_fpclass/fpdblib.inc"-->
<% if 0 then %>
<SCRIPT Language="JavaScript">
document.write("<div style='background: yellow; color: black;'>The Database Results component on this page is unable to display database content. The page must have a filename ending in '.asp', and the web must be hosted on a server that supports Active Server Pages.</div>");
</SCRIPT>
<% end if %>
<%
fp_sQry="SELECT * FROM inventory ORDER BY Computer ASC"
fp_sDefault=""
fp_sNoRecords="<tr><td colspan=2 align=left width=""100%"">No records returned.</td></tr>"
fp_sDataConn="inventory"
fp_iMaxRecords=256
fp_iCommandType=1
fp_iPageSize=0
fp_fTableFormat=True
fp_fMenuFormat=False
fp_sMenuChoice="Computer"
fp_sMenuValue="Computer"
fp_iDisplayCols=2
fp_fCustomQuery=False
BOTID=0
fp_iRegion=BOTID
%>
<!--#include file="_fpclass/fpdbrgn1.inc"-->
<!--webbot bot="DatabaseRegionStart" endspan i-checksum="21034" -->
0
chaokAuthor Commented:

Ack, sorry about that, I didn't copy the code correctly on the 2nd post, and just reposted what I had.

Here it is
---------------------------------------------
Sub Application_OnStart
      '==FrontPage Generated - startspan==
      Dim FrontPage_UrlVars(4)
      '--Project Data Connection
            Application("inventory_ConnectionString") = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=URL=fpdb/inventory.mdb"
            FrontPage_UrlVars(0) = "inventory_ConnectionString"
            Application("inventory_ConnectionTimeout") = 15
            Application("inventory_CommandTimeout") = 30
            Application("inventory_CursorLocation") = 3
            Application("inventory_RuntimeUserName") = ""
            Application("inventory_RuntimePassword") = ""
      '--Project Data Connection
            Application("formdata_ConnectionString") = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=URL=fpdb/formdata.mdb"
            FrontPage_UrlVars(1) = "formdata_ConnectionString"
            Application("formdata_ConnectionTimeout") = 15
            Application("formdata_CommandTimeout") = 30
            Application("formdata_CursorLocation") = 3
            Application("formdata_RuntimeUserName") = ""
            Application("formdata_RuntimePassword") = ""
      '--Project Data Connection
            Application("Test1_ConnectionString") = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=URL=fpdb/inventory.mdb"
            FrontPage_UrlVars(2) = "Test1_ConnectionString"
            Application("Test1_ConnectionTimeout") = 15
            Application("Test1_CommandTimeout") = 30
            Application("Test1_CursorLocation") = 3
            Application("Test1_RuntimeUserName") = ""
            Application("Test1_RuntimePassword") = ""
      '--Project Data Connection
            Application("Sample_ConnectionString") = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=URL=fpdb/fpnwind.mdb"
            FrontPage_UrlVars(3) = "Sample_ConnectionString"
            Application("Sample_ConnectionTimeout") = 15
            Application("Sample_CommandTimeout") = 30
            Application("Sample_CursorLocation") = 3
            Application("Sample_RuntimeUserName") = ""
            Application("Sample_RuntimePassword") = ""
      '--
      Application("FrontPage_UrlVars") = FrontPage_UrlVars
      '==FrontPage Generated - endspan==
End Sub
0
sstoyanovichCommented:
Have you tried re-installing MDAC?  I believe the latest is still 2.8

www.microsoft.com/data

0
chaokAuthor Commented:
What is MDAC?
0
chaokAuthor Commented:
i'm sorry I should refrase that.  What does MDAC do?  Is it something on the server?
0
sstoyanovichCommented:
Sorry.  MDAC = Microsoft Data Access Components.

It includes ODBC, ADO, all those database drivers like "Microsoft Access Driver (*.mdb)" and "[Microsoft][ODBC Microsoft Access Driver]" and data sources.  I believe it's a part of the operating system.   Here's a better link:  http://msdn.microsoft.com/data/mdac/default.aspx

You can download and install the latest to "refresh" the whole data access system on the machine, and see if that helps out.
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Windows 2000

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.