4

私は.Net開発者です。OPCは初めてです。OPCクライアントのサンプルをいくつか試したところ、すべてのサンプルでこのエラーが発生しました。DLLが登録されていないようです。しかし、これを登録する方法と場所がわかりません。

error: retrieving the COM class factory for component with CLSID failed due to the following error: 80040154

私もこれを試しました

regsvr32 Interop.OPCAutomation.dll", 

しかし、それはまたのようなエラーをスローします

The module "Interop.OPCAutomation.dll" was loaded but the entry-point DllRegisterServeer was not found.
Make sure that "Interop.OPCAutomation.dll" is a valid DLL or OCX file and then try again.

私は非常に多くの既存のフォーラムを通過しました。彼らの多くがプラットフォームターゲットをx86に変更すると言っていましたが、それでも私は同じ問題を抱えています。参考までに、プロジェクトプロパティの[ビルド]タブの上部にある[プラットフォーム]オプションに[アクティブ(任意のCPU)]のみが表示されます。

これが私の環境の詳細です:

.Net 2005
OPCAutomation Weapper
Windows 7 64-bit OS
Dell Inspiron 1525 (I hope this is not a 64bit machine, but my engineer installed 64bit OS somehow).

私を助けてください。

前もって感謝します!

4

6 に答える 6

5

誰かがこの問題に対処している場合に備えて(私は最近行ったように...)私はそれを乗り越えます!しばらくして、64ビットマシンで実行されている.NETフレームワークに関するものであることがわかりました。.NETアプリケーションが32ビットCLRでのみ機能する限り、WOWモードでCLRをロードするように.NETFrameworkを設定する必要があります。これを行うには、次のように入力します。

C:\WINDOWS\Microsoft.NET\Framework64\v2.0.50727\Ldr64.exe SetWow

この後、アプリケーションを実行できるようになります。

次のように入力すると、以前のように.NETFrameworkに戻って元に戻すことができます。

C:\WINDOWS\Microsoft.NET\Framework64\v2.0.50727\Ldr64.exe Set64
于 2012-09-05T11:43:51.940 に答える
0

あなたが得ているエラーは、OPC サーバーが適切に登録されていないことが原因である可能性が高いです。登録されていることを確認します (通常は、コマンド ラインで "/regserver" または "/service" パラメーターを指定して実行します)。また、クライアントがサーバーにアクセスできることを確認するために、'dcomcnfg' (DCOM Config) を実行する必要がある場合、セキュリティ上の問題が発生する可能性があります。

于 2012-02-20T20:13:34.143 に答える
0

これは古い投稿ですが、私の解決策を共有したいと思います。

私の問題は、OPCAutomation.dll を使用してアプリケーションをインストールしようとすると、クラスが登録されていないために 80040154 エラーが発生することでした。

これは私のソリューションであり、常に管理者権限があります。

  1. OPCDAAuto.dll を「C:\Windows\System32」フォルダにコピーします。
  2. コマンド プロンプトで「C:\Windows\System32\regsvr32 opcdaauto.dll」と入力します。
  3. 次のようなメッセージが表示されます

お役に立てれば!

于 2016-11-29T10:30:49.833 に答える