简体   繁体   English

System.Runtime.InteropServices.COMException 0x80040154 与 CLSID 29131539-2EED-1069-BF5D-00DD011186B7

[英]System.Runtime.InteropServices.COMException 0x80040154 with CLSID 29131539-2EED-1069-BF5D-00DD011186B7

I've been looking for a solution to my problem for the past two days.过去两天我一直在寻找解决问题的方法。 Now Google only shows me links that I've already visited.现在谷歌只显示我已经访问过的链接。

I get the following error:我收到以下错误:

    [COMException (0x80040154): La récupération de la fabrique de classes COM pour le composant avec le CLSID {29131539-2EED-1069-BF5D-00DD011186B7} a échoué en raison de l'erreur suivante : 80040154 Classe non enregistrée (Exception de HRESULT : 0x80040154 (REGDB_E_CLASSNOTREG)).]
    Default2.initSession() in c:\inetpub\wwwroot\GestionDomino\Default.aspx.cs:45
    Default2.Page_Load(Object sender, EventArgs e) in c:\inetpub\wwwroot\GestionDomino\Default.aspx.cs:32
    System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +51
    System.Web.UI.Control.OnLoad(EventArgs e) +92
    System.Web.UI.Control.LoadRecursive() +54
    System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +772

I know there is some part of the stacktrace that is in french.我知道堆栈跟踪的某些部分是法语。 That's because the server executing this code is a french server.那是因为执行此代码的服务器是法国服务器。

Here is my code:这是我的代码:

    public partial class Default2 : System.Web.UI.Page
    {
        Domino.NotesSession lotusNoteSession;
        Domino.NotesDatabase localDatabase;
        Domino.NotesView specificView;

        protected void Page_Load(object sender, EventArgs e)
        {

            //authentifies the user
            checkAuthen();
            //opens the domino session
            initSession();
            //fill the gridview
            if (!IsPostBack)
            {
                FillgvVue();
            }
        }

        protected void initSession()
        {
            //opens the domino session
            lotusNoteSession = new Domino.NotesSession();

And the code continues.代码继续。 But I stopped copying it at the problematic line lotusNoteSession = new Domino.NotesSession() .但我停止在有问题的行lotusNoteSession = new Domino.NotesSession()处复制它。 This line triggers the error.此行触发错误。

I tried registering Interop.Domino.dll with regsvr32.exe我尝试用 regsvr32.exe 注册 Interop.Domino.dll

The target cpu is already set to x86目标 cpu 已设置为 x86

What do I have to do?我需要做什么?

Thanks in advance提前致谢


You need to register nlsxbe.dll properly, too.您也需要正确注册 nlsxbe.dll。 I'm pretty sure that I've seen posts that cover this here on StackOverflow before, but I'm not finding them now.我很确定我以前在 StackOverflow 上看到过涵盖此内容的帖子,但我现在找不到它们。

However, as per this IBM Technote , the Notes COM classes that are in nlsxbe.dlll and are behind the Interop.Domino.dll are not supported on a 64 bit OS.但是,根据此IBM 技术说明,64 位操作系统不支持位于 nlsxbe.dll 中且位于 Interop.Domino.dll 后面的 Notes COM 类。 They can be made to mostly work, but if you need a solution that you can count on being able to go to IBM for support with if you encounter problems, you should look at the other APIs that are available for the Notes/Domino environment and avoid COM, or find a way to run them on a 32-bit OS.它们可以在大多数情况下工作,但是如果您需要一个解决方案,您可以指望在遇到问题时能够向 IBM 寻求支持,您应该查看可用于 Notes/Domino 环境的其他 API,并且避免使用 COM,或者找到一种在 32 位操作系统上运行它们的方法。

As for the "mostly" part, the problems that I recall are with the methods that return collections of design elements (eg, NotesDatabase.Views()).至于“主要”部分,我记得的问题是返回设计元素集合的方法(例如,NotesDatabase.Views())。 Most classes and methods did appear to work - including those that return individual elements (eg, getView()).大多数类和方法似乎都有效——包括那些返回单个元素的类和方法(例如,getView())。 But again, there's no official support for these classes on 64 bits, so if you encounter any other problems you'll be on your own.但同样,在 64 位上没有对这些类的官方支持,因此如果您遇到任何其他问题,您将自己解决。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 System.Runtime.InteropServices.COMException(0x80040154) - System.Runtime.InteropServices.COMException (0x80040154) System.Runtime.InteropServices.COMException(0x80080005):使用CLSID检索组件的COM类工厂 - System.Runtime.InteropServices.COMException (0x80080005): Retrieving the COM class factory for component with CLSID 'System.Runtime.InteropServices.COMException' - 'System.Runtime.InteropServices.COMException' System.Runtime.InteropServices.COMException - System.Runtime.InteropServices.COMException 打开Excel错误:System.Runtime.InteropServices.COMException(0x80080005):检索具有CLSID的组件的COM类工厂 - opening excel error: System.Runtime.InteropServices.COMException (0x80080005): Retrieving the COM class factory for component with CLSID 来自HRESULT的异常:0x8002000B(DISP_E_BADINDEX)用于System.Runtime.InteropServices.COMException - Exception from HRESULT: 0x8002000B (DISP_E_BADINDEX) for System.Runtime.InteropServices.COMException System.Runtime.InteropServices.COMException:未知错误(0x80005000) - System.Runtime.InteropServices.COMException: Unknown error (0x80005000) System.Runtime.InteropServices.COMException(0x80080005) - System.Runtime.InteropServices.COMException (0x80080005) Azure Web应用程序问题:System.Runtime.InteropServices.COMException 80040154未注册类 - Azure web app issue: System.Runtime.InteropServices.COMException 80040154 Class not registered System.Runtime.InteropServices.COMException(0x80030020):操作失败 - System.Runtime.InteropServices.COMException (0x80030020): The operation failed
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM