1

Visual Studio でデザイン時にアンマネージ dll をロードする方法はありますか?

いつでも DLL を "System32" フォルダーに配置したり、DLL パスを "PATH" 変数に追加して直接ロードしたりできることを知っています。しかし、私はそれをしたくありません。アプリケーションの ExecutablePath からロードしたい。DLL は実際にコントロールを保持します。

誰でもこの状況で私を助けることができますか??


ありがとう、WritZ

4

1 に答える 1

0

アプリケーションの ExecutablePath からロードしたい

それは機能しません。まだありません。Windows がそこを見ないことを除けば、ソース管理からチェックインするとき、またはプロジェクトをクリーンアップするときにデザイナーが失敗することが保証されています。

このコードは Visual Studio のコンテキストで実行されるため、Windows DLL の検索ルールはそのインストール場所に基づいています。これが失敗した pinvoke コードなのか、それともアセンブリが DLL に暗黙的に依存しているのかは明らかではありません。Pinvoke について何かを行うことができます。DesignMode プロパティをテストすることで、コードの実行を防ぐことができます。暗黙的な依存関係に対処する唯一の方法は、Windows が DLL を見つけられるようにすることです。検索パス上のディレクトリ。次に進む唯一の方法は、デザイン モードでのみ実際に重要な部分にコードを分割して、DesignMode が再び役立つようにすることです。

于 2012-08-15T19:02:17.213 に答える