私たちは、現在提供されているAPIに基づいて.net 4.0で外部ユーティリティを開発中です。共有フォルダからプログラムを実行する際の問題
外部ユーティリティが起動されるメインプログラムは、仮想サーバー上にあります。だからすべてのユーザーは、ネットワークフォルダに移動し、.exeを起動してプログラムを起動します。
メインプログラムには、ネットワークパスから起動される外部ユーティリティを起動するオプションがあります。
外部ユーティリティは、api dllを介してメインプログラムに接続します。間違っていなければ、dllはactivexコンポーネントです。
すべての開発者は、メインプログラムのローカルインストールがあります。これは.Netで参照を作成するために必要でした。インストールが利用できなかった場合は、参照をバインドすることができませんでした。 開発者にとって、このツールは機能します。
しかし、フルインストールをしていないエンドユーザーにとっては、レジストリに移動して値を検索するため、ツールは機能しません。これらは、エンドユーザステーションでは利用できません。
Unable to cast COM object of type 'System.__ComObject' to interface type 'MegaMapp.MegaCurrentEnv'. This operation failed because the QueryInterface call on the COM component for the interface with IID '{33D6C7C0-7D1B-450E-B8A4-8A8611D5B40F}' failed due to the following error: No such interface supported (Exception from HRESULT: 0x80004002 (E_NOINTERFACE))
を開始しようとしたとき
エンドユーザがこの警告を取得{33D6C7C0-7D1B-450E-B8A4-8A8611D5B40F}は、エンドユーザに利用できない、レジストリキーです。
exeが存在するサーバーからレジストリキーをロードする必要があるツールを教えて、ローカルレジストリからロードする必要はありませんか?
activex.dllは、ソフトウェアと通信できる唯一の方法です。そこで私たちはapi呼び出しで.netプログラムを構築しました。 dllは、サーバー上にあるため、クライアントマシンに登録することはできません。 –
UNCパスが動作する可能性があります。登録しようとしましたか? – jgauffin
dllを登録しても、この問題は解決されません。 –