私はLibGit2Sharp
を使用し、Costura.Fody
を使用しようとしている小さなexeを持っていますので、私は配布する単一のexeを持っています。(実際には、ファイルも同様ですが、それは問題ありません)。costura.fody別のdllを参照するDLL
LibGet2Sharp.dll
はgit2-1196807.dll
にかなり堅い参照があり、前者の方法で後者を埋め込む方法がわからないようです。私はいくつかのことを試してみたが、私は私の最高の試みがあると思う:のは、ソリューションのpackages
フォルダからコピーされ、Build Action = Embedded Resource
とCopy to Output Directory = Do Not Copy
に設定されているこれらの.dllの
すべて。
LibGit2Sharp参照がCopy Local = false
に設定され、IはFodyWeavers.xmlで簡単ルート試みた:
<?xml version="1.0" encoding="utf-8" ?>
<Weavers>
<Costura>
</Costura>
</Weavers>
を、より複雑である:ただし
<?xml version="1.0" encoding="utf-8" ?>
<Weavers>
<Costura>
<Unmanaged64Assemblies>
Costura64\LibGit2Sharp
Costura64\git2-1196807
</Unmanaged64Assemblies>
<Unmanaged32Assemblies>
Costura32\LibGit2Sharp
Costura32\git2-1196807
</Unmanaged32Assemblies>
</Costura>
</Weavers>
、私はいつもエラー、exeを開くときに、私は最初にgitライブラリを使用するボタンをクリックして、取得:
... 'LibGit2Sharp.Core.NativeMethods'が例外をスローしました。 ---> System.DllNotFoundException:DLL 'git2-1196807'を読み込めません: 指定されたモジュールが見つかりませんでした。 (HRESULTからの例外: 0x8007007E)...
私がやったいくつかのことは私にLibGet2Sharp
DLLが(git2-1196807
に関するエラーではなく)アクセスできないというエラーを与えているが、私はそれがちょうどその時だと思います私はFodyを不自由にしました。
私はあなたに与えることのできるアドバイスを感謝します。これは私を困惑させる。 git2-1196807.dll
ファイルを展開した場所 "。\ lib \ win32 \ x86"に置き換え、64ビットに相当する場合は正常に動作しますが、これはcostura.fodyを使用する際のポイントになります。
思考?
これは私の最初の試行でしたが、私はまずcostura.fodyをソリューションに追加してそのまま試しましたが、このエラーはREのgit2-1196807.dllになってしまいました。 – Keith