2016-09-15 5 views
0

SharpDX.Direct3D11.Effects v3 NuGetパッケージを使用するWinForms/WPFアプリケーションを展開する正しい手順は何ですか?sharpdx_direct3d11_effects_x64.dll DLLNotFoundException

  • sharpdx_direct3d11_effects_x64.dll

が、これらは出力ディレクトリにコピーする必要があり

  • sharpdx_direct3d11_effects_x86.dll:

    彼らは2つの管理対象外のDLLに依存するように見えますか?ポストビルドのステップまたはそれ以外の場合は?

  • +0

    これらのファイルは、後で作成されたステップの出力フォルダ(およびその他の依存ファイル)に置くだけで十分です。 –

    +0

    これは私が考えていたものです。 SharpDX.Direct3D11.Effectsを参照しているライブラリのコンシューマ向けに余分なステップが追加されていることを考えれば、巧妙な解決策があるのだろうかと思った。 –

    答えて

    1

    Visual StudioからWPF/WinFormsアプリケーションを公開すると、.dll.deployファイルを含むApplication Filesフォルダが生成されます。

    私はWPFアプリケーションにSharpDX.Direct3D11.Effectsパッケージをインストールしました。このアプリケーションを公開した後、sharpdx_direct3d11_effects_x64が見つかりました。 dllおよびsharpdx_direct3d11_effects_x86。 dllはsharpdx_direct3d11_effects_x64を生成します。 dll.deployおよびsharpdx_direct3d11_effects_x86。 dll.deployファイルは、Application Filesフォルダにあります。出力ディレクトリにコピーする必要はありません。

    DLLに依存するものがApplication Filesフォルダに含まれていない場合は、Project Properties - > Publishタブ - > Application Filesを使用してこれらのDllのPublish StatusをIncludeとして設定してください。 enter image description here

    +0

    すばらしいことに、Wendyに感謝する。 SharpDXメーカーは、これらのネイティブDLLを展開する本当に良い方法を考えていたようです。 –

    関連する問題