« Previous Next »

Not Answered Thread: Why does Server.CreateObject("ADODB.Recordset") fail on Vista / IIS7 / ASP

Last post 06-09-2009 9:28 AM by qbernard. 29 replies.

Average Rating Rate It (5)

RSS

Page 1 of 2 (30 items) 1 2 Next >

Sort Posts:

  • 03-28-2009, 3:40 AM

    Why does Server.CreateObject("ADODB.Recordset") fail on Vista / IIS7 / ASP

    My ASP pages work on my old XP computer using IIS6 and they work on my website

    On my Vista computer with IIS7, ASP pages with no database data work

    The ASP pages with a database fail at the first line with Set RS = Server.CreateObject("ADODB.Recordset")  and that produces the message error '8002801d'

    I have ASP installed on IIS7, and I have tried removing IIS7 and then re-installing IIS7 but that had no effect

    Searching for the '8002801d' error suggests it could be the Library is not registered and to register the ASP.DLL or to set permissions in the Registry. I do not find an ASP.DLL on the computer to register and the registry examples in the Microsoft Help and support pages do not seem to appear in my Registry

    I have tried Process Monitor  but do not see an entry that says "ACCDENIED" as suggested in the article ASP Error 8002801d "Library Not Registered"

    Suggestions on solutions would be appreciated

     

     

  • 03-28-2009, 8:07 AM In reply to

    • lextm
    • Top 10 Contributor
    • Joined on 10-22-2008, 12:18 AM
    • Shanghai, PRC
    • Posts 1,423

    Re: Why does Server.CreateObject("ADODB.Recordset") fail on Vista / IIS7 / ASP

    Please don't post twice for one question. Can you check Process Monitor log again to see if there are entries for registry key not found? ACCESS DENIED is not related. ASP.dll is located in %windir%\System32\inetsrv folder.
    Lex Li
    Support Engineer at Microsoft
    ---------------------------
    This posting is provided "AS IS" with no warranties, and confers no rights.
  • 03-28-2009, 10:51 AM In reply to

    Re: Why does Server.CreateObject("ADODB.Recordset") fail on Vista / IIS7 / ASP

    Thank you for the reply, and my apologies for re-posting the question rather than expanding the information on the first question

     ASP.DLL registers successfully, but I still am shown the message error '8002801d'  for the line Server.CreateObject("ADODB.Recordset") 

    Can you provide any further advice on why I am not able to use ASP recordesets on IIS7 and VISTA?

    Assistance would be appreciated

  • 03-28-2009, 6:18 PM In reply to

    Re: Why does Server.CreateObject("ADODB.Recordset") fail on Vista / IIS7 / ASP

    Did you see this article?

    http://support.microsoft.com/kb/274038

    Steve Schofield
    Windows Server MVP - IIS
    http://weblogs.asp.net/steveschofield


    http://www.IISLogs.com
    Log archival solution
    Install, Configure, Forget
  • 03-29-2009, 1:49 AM In reply to

    • lextm
    • Top 10 Contributor
    • Joined on 10-22-2008, 12:18 AM
    • Shanghai, PRC
    • Posts 1,423

    Re: Why does Server.CreateObject("ADODB.Recordset") fail on Vista / IIS7 / ASP

    Can you try to re-register the following libraries? %CommonProgramFiles%\System\ado\msado15.dll %CommonProgramFiles(x86)%\System\ado\msado15.dll Regards,
    Lex Li
    Support Engineer at Microsoft
    ---------------------------
    This posting is provided "AS IS" with no warranties, and confers no rights.
  • 03-29-2009, 2:34 AM In reply to

    Re: Why does Server.CreateObject("ADODB.Recordset") fail on Vista / IIS7 / ASP

    lextm:
    Can you try to re-register the following libraries? %CommonProgramFiles%\System\ado\msado15.dll %CommonProgramFiles(x86)%\System\ado\msado15.dll Regards,

    Thank you for the reply - I am using Vista Business and do not find a directory ADO and I do not find a file msado15.dll - %CommonProgramFiles%\System\ado\msado15.dll returns an error

  • 03-29-2009, 4:33 AM In reply to

    Re: Why does Server.CreateObject("ADODB.Recordset") fail on Vista / IIS7 / ASP

    Sorry my error, I found and successfully registered %CommonProgramFiles%\System\ado\msado15.dll but still have an error error '8002801d'

  • 03-29-2009, 4:35 AM In reply to

    Re: Why does Server.CreateObject("ADODB.Recordset") fail on Vista / IIS7 / ASP

    sorry it was my error, %CommonProgramFiles%\System\ado\msado15.dll registered succesfully but I still have an error error '8002801d'

  • 03-29-2009, 4:36 AM In reply to

    Re: Why does Server.CreateObject("ADODB.Recordset") fail on Vista / IIS7 / ASP

    Thank you for the reply

    I did see the article

    When trying to edit the permissions as in the article I get an error message 'unable to save permission changes on CLSID' 'Access is Denied'

     There is no Everyone entry on the ADODB.Command entry

    HKEY_CLASSES_ROOT\ADODB.Command\CLSID

    1. In the HKEY_CLASSES_ROOT window, click to expand the ProgID key, and then click CLSID. Record the UUID value of this key. For example, the ClassID for "MSWC.BrowserType" is {0ACE4881-8305-11CF-9427-444553540000}.
    2. In the HKEY_CLASSES_ROOT window, click to expand the CLSID key, and then select the ClassID entry (UUID). On the Security menu, click Permissions. Make sure that the Everyone entry has Read permission; if not, add this permission entry

    I found the article Article ID: 942031 Error message when you visit a Web site that is hosted on IIS 7.0: "HTTP Error 500.0 – Internal Server Error

    In my error log I do not find a HRESULT number there is one suggested resolution that says to look at the Handler Mappings in the  inetmgr.exe if you click on Edit Feature Permissions for ASP Classic Read and Script are enabled but Execute is not enabled - should Execute be enabled?

  • 03-29-2009, 4:25 PM In reply to

    Re: Why does Server.CreateObject("ADODB.Recordset") fail on Vista / IIS7 / ASP

    Hello

     If I change Set RS_cmd = Server.CreateObject ("ADODB.Recordset") to Set RS_cmd =CreateObject ("ADODB.Recordset")  omitting the Server., then the page displays without an error

    Can you help with ideas why Server.CreateObject cause the error?

     Thank you

     

  • 03-29-2009, 11:09 PM In reply to

    Re: Why does Server.CreateObject("ADODB.Recordset") fail on Vista / IIS7 / ASP

    That leads me to believe it's a COM+ based error.   I've seen this before where CreateObject works and leaving the Server.   I don't recall the specifics, but leaving Server. off is 'bad'

    Run regedit from an elevated command prompt.

    Steve Schofield
    Windows Server MVP - IIS
    http://weblogs.asp.net/steveschofield


    http://www.IISLogs.com
    Log archival solution
    Install, Configure, Forget
  • 03-30-2009, 9:10 AM In reply to

    Re: Why does Server.CreateObject("ADODB.Recordset") fail on Vista / IIS7 / ASP

    Thank you for the reply. Leaving the Server off from Server.CreateObject was purely a test to try and isolate where the problem lay and not a solution to the problem

     If this is a COM+ based error it has at least narrowed down possible causes

  • 04-01-2009, 3:40 PM In reply to

    Re: Why does Server.CreateObject("ADODB.Recordset") fail on Vista / IIS7 / ASP

    Hello

    Not 100% sure what I am looking for with a possible COM error

    Is this related from the error logs

    Log Name:      System
    Source:        Microsoft-Windows-DistributedCOM
    Date:          31/03/2009 22:56:19
    Event ID:      10016
    Task Category: None
    Level:         Error
    Keywords:      Classic
    User:          David-PC\David
    Computer:      David-PC
    Description:
    The machine-default permission settings do not grant Local Activation permission for the COM Server application with CLSID
    {682159D9-C321-47CA-B3F1-30E36B2EC8B9}
     to the user David-PC\David SID (S-1-5-21-2950769529-1505279588-989292554-1000) from address LocalHost (Using LRPC). This security permission can be modified using the Component Services administrative tool.
    Event Xml:
    <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
      <System>
        <Provider Name="Microsoft-Windows-DistributedCOM" Guid="{1B562E86-B7AA-4131-BADC-B6F3A001407E}" EventSourceName="DCOM" />
        <EventID Qualifiers="49152">10016</EventID>
        <Version>0</Version>
        <Level>2</Level>
        <Task>0</Task>
        <Opcode>0</Opcode>
        <Keywords>0x80000000000000</Keywords>
        <TimeCreated SystemTime="2009-03-31T21:56:19.000Z" />
        <EventRecordID>272477</EventRecordID>
        <Correlation />
        <Execution ProcessID="0" ThreadID="0" />
        <Channel>System</Channel>
        <Computer>David-PC</Computer>
        <Security UserID="S-1-5-21-2950769529-1505279588-989292554-1000" />
      </System>
      <EventData>
        <Data Name="param1">machine-default</Data>
        <Data Name="param2">Local</Data>
        <Data Name="param3">Activation</Data>
        <Data Name="param4">{682159D9-C321-47CA-B3F1-30E36B2EC8B9}</Data>
        <Data Name="param5">David-PC</Data>
        <Data Name="param6">David</Data>
        <Data Name="param7">S-1-5-21-2950769529-1505279588-989292554-1000</Data>
        <Data Name="param8">LocalHost (Using LRPC)</Data>
      </EventData>
    </Event>

    Not sure what security permission should be modified using the Component Services administrative tool - advise would be appreciated

    Thank you

  • 04-02-2009, 11:33 PM In reply to

    Re: Why does Server.CreateObject("ADODB.Recordset") fail on Vista / IIS7 / ASP

    I have no idea why {682159D9-C321-47CA-B3F1-30E36B2EC8B9} would be erroring.  For testing purposes, grant the everyone group to see if this gets past the error.

    Steve Schofield
    Windows Server MVP - IIS
    http://weblogs.asp.net/steveschofield


    http://www.IISLogs.com
    Log archival solution
    Install, Configure, Forget
  • 04-03-2009, 4:42 AM In reply to

    Re: Why does Server.CreateObject("ADODB.Recordset") fail on Vista / IIS7 / ASP

    Please can you tell me how to solve the problem of error message 'unable to save permission changes on CLSID' 'Access is Denied'

    In the article you suggested http://support.microsoft.com/kb/274038 it says to look for the error in my case that is "ADODB.Command"

    HKEY_CLASSES_ROOT\ADODB.Command\CLSID

    1. In the HKEY_CLASSES_ROOT window, click to expand the ProgID key, and then click CLSID. Record the UUID value of this key. For example, the ClassID for "MSWC.BrowserType" is {0ACE4881-8305-11CF-9427-444553540000}.
    2. In the HKEY_CLASSES_ROOT window, click to expand the CLSID key, and then select the ClassID entry (UUID). On the Security menu, click Permissions. Make sure that the Everyone entry has Read permission; if not, add this permission entry

    Thank you

Page 1 of 2 (30 items) 1 2 Next >
Microsoft Communities