2017-01-11 25 views
-1

私は過去2日間私の問題の解決策を探していました。今、私は既に私が訪れたリンクのみを表示します。CLSIDのSystem.Runtime.InteropServices.COMException 0x80040154 29131539-2EED-1069-BF5D-00DD011186B7

私は次のエラーを取得する:

[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 

私はフランス語であるスタックトレースの一部が存在しているはず。これは、このコードを実行しているサーバーがフランス語のサーバーであるためです。

は、ここに私のコードです:

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(); 

とコードが続行されます。しかし問題のある行でコピーをやめた。 lotusNoteSession = new Domino.NotesSession()。この行によってエラーが発生します。

は、私はすでに

は、私は何をしなければならないのx86のに設定されています。regsvr32.exe

ターゲットCPUとInterop.Domino.dllを登録しようとしましたか?事前に

おかげ


+0

あなたが気づいていなかった場合。クリアテキストのパスワードを投稿しています。それを削除し、リビジョンのスクラブを永久に使用できないように要求することができます。 – BradleyDotNET

+0

@BradleyDotNET _ "リクエストリビジョンスクラブ" _ - 私はそれが非常に頻繁に行われたとは思わない。もしそれが少なくとも私に任せていれば、私は_ "厳しい運があります;あなたのパスワードを変更してください" _と答えるでしょう。特に、Googleがこのサイトを単なる秒数で索引付けするためです。 – CodeCaster

+0

@CodeCaster真実ですが、IIRCには、このようなことをするためのメタ・ポストがいくつかありました。パスワードを変更することは、まだ良い考えです。 – BradleyDotNET

答えて

1

あなたも、適切にnlsxbe.dll登録する必要があります。私はかなり以前StackOverflowでこれをカバーしている記事を見てきたと確信していますが、今は見つけられません。

ただし、このIBM Technoteによれば、nlsxbe.dlllにあり、Interop.Domino.dllの後ろにあるNotes COMクラスは、64ビットOSではサポートされていません。ほとんどの場合、問題なく動作するようにすることができますが、問題が発生した場合にIBMにサポートを依頼できるソリューションが必要な場合は、Notes/Domino環境で使用可能な他のAPIを見てください。 COMを回避するか、32ビットOSで実行する方法を見つけてください。

「ほとんど」の部分については、私が想起した問題は、設計要素のコレクション(NotesDatabase.Views()など)を返すメソッドにあります。ほとんどのクラスとメソッドは、個々の要素を返すクラスやメソッド(getView()など)を含むように見えました。しかし、もう一度、64ビットでこれらのクラスの正式なサポートはありません。あなたが他の問題に遭遇した場合は、あなた自身で行うことになります。

関連する問題