locked
Retrieving the COM class factory for component{} - 8007007e

    Question

  • Hi,
      I am trying to take screenshots of any open Internet Explorer. I have writen the code and it works fine when I run the site in debug mode.
      Once the site is published I get the following error:

    Retrieving the COM class factory for component with CLSID
    {9BA05972-F6A8-11CF-A442-00A0C90A8F39} failed due to the following
    error: 8007007e.


    Description: An unhandled exception occurred during the execution of the current web
    request. Please review the stack trace for more information about the
    error and where it originated in the code.

    Exception Details: System.IO.FileNotFoundException:
    Retrieving the COM class factory for component with CLSID
    {9BA05972-F6A8-11CF-A442-00A0C90A8F39} failed due to the following
    error: 8007007e.

    Source Error:
    An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.
    Stack Trace:
    [FileNotFoundException: Retrieving the COM class factory for component with CLSID {9BA05972-F6A8-11CF-A442-00A0C90A8F39} failed due to the following error: 8007007e.]
    _Default.Button1_Click(Object sender, EventArgs e) +159
    System.Web.UI.WebControls.Button.OnClick(EventArgs e) +105
    System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +107
    System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +7
    System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +11
    System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +33
    System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +5102


    I have given permission to various files for aspnet user.

    I have looked up most of the forum but to no avail.

    Any help would be greatly appreciated.

    Thanks,
    Brijesh
    Wednesday, June 07, 2006 9:42 PM

All replies

  • The HRESULT 0x8007007E is "The specified module could not be found.".  The module in this case is almost certainly a DLL but whether it is the DLL that implements your component or a DLL that your DLL depends upon we can't really tell.  However, if we assume that your COM object DLL is properly deployed and registered the most likely cause is that some other DLL that your DLL depends upon is missing.

    One useful tool for these kinds of problems is FileMon from sysinternals: http://www.sysinternals.com/Utilities/Filemon.html.  Run filemon on your IIS Server system and reproduce your problem.  The filemon log will show every file system access including whatever failure gave rise to the file not found exception.  Once you know what DLL is "not found" you have some chance of figuring out why it is not found.

    Wednesday, June 07, 2006 10:43 PM
  • Thanks Frank.
     I am still going through the results of the captured data. Some of it is weird. Somehow it is now giving the same error in the debug mode and so I am trying to trace through as to which file is missing.

    Thanks,
    Brijesh
    Thursday, June 08, 2006 4:47 PM
  • Hi Frank,
      I am going through the "Captured Data" of File monitor and I find that I have included the shdocvw.dll.
     But apparently the system keeps on adding \%SystemRoot%\System32 if the file is found in the particular directory and it keeps on trying to get the file from locations that do not exists.
      Any idea as to what is causing this and how to resolve this?

    Thanks,
    Brijesh
    Thursday, June 08, 2006 5:12 PM
  • Are you saying that your COM object is trying to load shdocvw.dll from %SystemRoot%\System32 and failing? 

    That would seem like a serious problem with the system you are running on.  I believe shdocvw.dll is a system dll that is distributed with the OS.  It should always be present and should always be found in %systemroot%\System32 so I'm not sure why it would be misisng on your system.

    What version of the operating system are you using?

    Thursday, June 08, 2006 7:13 PM
  • The particular registry entry was corrupted. I have updated the registery but still i am getting the error.
    Also, my code tries to start a process (iexplore.exe). The process actually get started and show up on the task manager under ASPNET user but the actual Internet Browser is not opening.

    From the logs it seems that for some of the dlls eg CRYPTUI.dll it is trying to access
    CRYPTUI.dll.2.Manifest and CRYPTUI.dll.2.Config and there are couple of other files with similar names that it is trying to access.

    The error I am getting is

    Retrieving the COM class factory for component with CLSID {9BA05972-F6A8-11CF-A442-00A0C90A8F39} failed due to the following error: 8007000e.


    [OutOfMemoryException: Retrieving the COM class factory for component with CLSID {9BA05972-F6A8-11CF-A442-00A0C90A8F39} failed due to the following error: 8007000e.]
    _Default.Button1_Click(Object sender, EventArgs e) +159
    System.Web.UI.WebControls.Button.OnClick(EventArgs e) +105
    System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +107
    System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +7
    System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +11
    System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +33

    Thanks
    Brijesh
    System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +5102

    Thursday, June 08, 2006 7:54 PM
  • Hi Brijesh,

    I work with windows application, but faced the above mentioned error few times. I had to register my COM dll to solve this issue. Please check the COM dll getting accessed from _Default.Button1_Click() event. Try registering it again and execute your application. Hope it helps you.


    Best Regards,
    Baisakhi
    Wednesday, June 10, 2009 5:04 AM
  • Hi Friends,

     

       I am using One COM dll.I have beeen recieving exception when i tried to create object for that COM DLL.

     Unknown Exception occured at LoginUser.System Message: Unknown Exception occured at Submit function.System Message: Retrieving the COM class factory for component with CLSID {92459B29-7D3B-4612-86D8-3657ADFE7033} failed due to the following error: 8007007e.

    I have removed the refernces and added again but still its the same.

    Thanks and REgards

    Ravishanker Maduri


    Ravishankar Maduri MCTS,MCPD,MCP
    Tuesday, March 30, 2010 7:59 AM
  • I was also facing the same problem just because i use customized installation of matlab.when i try to install the dll on my system it gives me exeception because we need MCRinstaller.exe to execute the dll which we made which i havnt installed because of customized installation process of MATLAB so first download the free MCRInstaller.exe then you would be able to install your dll.

    Hope this wil help you :)

    You can get the MCRinstaller from

    http://megaupload.com/?d=88V0KZ8T

     

    ----------------------------------------------------------------

    MOAZ SAIF

    Quaid-i-Azam University, Pakistan



    • Edited by Moaz Sipra Tuesday, January 03, 2012 10:35 AM
    Tuesday, January 03, 2012 10:34 AM