Visual Studio でデザイン時にアンマネージ dll をロードする方法はありますか?
いつでも DLL を "System32" フォルダーに配置したり、DLL パスを "PATH" 変数に追加して直接ロードしたりできることを知っています。しかし、私はそれをしたくありません。アプリケーションの ExecutablePath からロードしたい。DLL は実際にコントロールを保持します。
誰でもこの状況で私を助けることができますか??
ありがとう、WritZ
Visual Studio でデザイン時にアンマネージ dll をロードする方法はありますか?
いつでも DLL を "System32" フォルダーに配置したり、DLL パスを "PATH" 変数に追加して直接ロードしたりできることを知っています。しかし、私はそれをしたくありません。アプリケーションの ExecutablePath からロードしたい。DLL は実際にコントロールを保持します。
誰でもこの状況で私を助けることができますか??
ありがとう、WritZ
アプリケーションの ExecutablePath からロードしたい
それは機能しません。まだありません。Windows がそこを見ないことを除けば、ソース管理からチェックインするとき、またはプロジェクトをクリーンアップするときにデザイナーが失敗することが保証されています。
このコードは Visual Studio のコンテキストで実行されるため、Windows DLL の検索ルールはそのインストール場所に基づいています。これが失敗した pinvoke コードなのか、それともアセンブリが DLL に暗黙的に依存しているのかは明らかではありません。Pinvoke について何かを行うことができます。DesignMode プロパティをテストすることで、コードの実行を防ぐことができます。暗黙的な依存関係に対処する唯一の方法は、Windows が DLL を見つけられるようにすることです。検索パス上のディレクトリ。次に進む唯一の方法は、デザイン モードでのみ実際に重要な部分にコードを分割して、DesignMode が再び役立つようにすることです。