FIX: RDS error when Web site is run out-of-process (223036)



The information in this article applies to:

  • Microsoft Data Access Components 1.5
  • Microsoft Data Access Components 2.0
  • Microsoft Data Access Components 2.1
  • Microsoft Data Access Components 2.1 (GA)
  • Microsoft Data Access Components 2.1 SP1
  • Microsoft Data Access Components 2.1 SP2
  • Microsoft Active Server Pages
  • Microsoft Internet Information Server 3.0
  • Microsoft Internet Information Server 4.0
  • Microsoft Internet Information Server 5.0

This article was previously published under Q223036

SYMPTOMS

When you run the default Web site out-of-process and use Remote Data Services (RDS) the following error results:
A Runtime Error has occurred.
Do you wish to Debug?
Line: xx
Error: Unexpected error (0x80070558)

RESOLUTION

To resolve this problem, install MDAC 2.5 or a later version. To obtain MDAC, visit the following Microsoft Web sites.

MDAC 2.8 SP1

MDAC 2.8

WORKAROUND

To work around this problem, use one of the following methods:
  • Run the default Web site in-process.
  • Transfer the Web application out of the default Web site into another site.

STATUS

Microsoft has confirmed that this is a bug in the Microsoft products that are listed in the "Applies to" section. This bug was corrected in Microsoft Data Access Components 2.5.

MORE INFORMATION

Steps to Reproduce Behavior


  1. Save the following code in a text file called RDSBug.asp in the root of the default Web site.
    <%@ Language=VBScript %>
    <SCRIPT LANGUAGE=VBSCRIPT>
        Sub cmdLoad_OnClick
            dim df, rs, oTR
            set df = ds.CreateObject("RDSServer.DataFactory","http://<webserver>")
            set rs = df.Query("DSN=Northwind;","SELECT * FROM Employees;")
            tblMain.deleteRow 
            while not rs.eof
                set oTR = tblMain.insertRow
                for x = 0 to rs.fields.count - 1
                    set oCL = oTR.insertCell
                    oCL.innerText = rs(x)
                next
                rs.MoveNext
            wend
            rs.close
            set rs = nothing
            set df = nothing
        End Sub
    </SCRIPT>
    <HTML>
    <HEAD>
    </HEAD>
    <BODY>
    
    <OBJECT id=ds classid="clsid:BD96C556-65A3-11D0-983A-00C04FC29E36" HEIGHT=0 WIDTH=0></OBJECT>
        <TABLE ID=tblMain BORDER=2>
        <TR><TD>The data should load here.</TD></TR>
        </TABLE>
    <BR>
    <INPUT TYPE=BUTTON VALUE="Click to load some data into the table..." NAME=cmdLoad>
    
    </BODY>
    </HTML>
    					
  2. Test your setup by running the page. If the page does not display data correctly, verify that you have the Northwind sample database installed and that the Northwind data source name (DSN) is set up in your ODBC Administrator. (The Northwind database is installed with the Microsoft Visual Basic samples in the VB98 directory as Nwind.mdb.) If the page still does not work correctly, review the following Knowledge Base articles to confirm that your RDS configuration is correct:

    184606 HOWTO: Use RDS From an IIS 4.0 Virtual Server

    243245 PRB: RDS Handler Error Messages Due to Security Settings

    251122 Troubleshooting Common Problems with Remote Data Services

  3. After you have confirmed that RDS is configured correctly and the page is working, open the Internet Services Manager, right-click the default Web site and click Properties. Click the Home Directory tab. Select the Run in separate memory space (isolated process) checkbox or, under IIS 5.0 or later, change Application Protection to High (Isolated). Click OK to exit the Properties dialog box.
  4. Open the page again in your browser. The page will return "Unexpected error (0x80070558)".

Modification Type:MajorLast Reviewed:6/29/2006
Keywords:kbBug kbExcel123Quattro kbfix kbMDAC250fix kbMDACNoSweep KB223036