既存のアプリケーションのフォルダーに展開されている COM 可視 dll "COMInterface.dll" があります。この dll の機能を検証するテスト ハーネスを作成しました。
ただし、従来の asp を使用してこの dll のメソッドの 1 つを呼び出そうとすると、次のようなメッセージが表示されます。
MyCompany.MyProject.COMInterface (0x80070002) ファイルまたはアセンブリ 'MyCompany.Framework, Version=2.6.4202.14897, >Culture=neutral, PublicKeyToken=null' またはその依存関係の 1 つを読み込めませんでした。システムは、指定されたファイルを見つけることができません。
私の "COMInterface.dll" は、私の会社の標準フレームワーク、ログ クラスなど、他の多くの dll を参照しています。"Framework" は、これらの dll の 1 つです。
ASP ページはこれらの dll をどこで探しますか? ASPページがIIS Webサイト内にあるのに対し、プログラムフォルダーから実行されていたため、ハーネスが機能したと推測しています。
ここで GAC 登録を使用する必要がありますか? そこに展開する必要があるDLLがかなりあるので、そうではないことを望んでおり、ユーザーのマシンのコアインストールに影響を与えることなくアプリケーションを拡張したいと考えています。
ご質問やご提案をお寄せいただきありがとうございます。
[編集] オブジェクトは問題なく作成できることを指摘しておきます。問題を引き起こしているのは、参照されている dll の場所です。