无法加载DLL'git2.dll'找不到指定的模块

时间:2011-06-11 00:15:52

标签: c# visual-studio-2008 git libgit2 libgit2sharp

我正在尝试在网络项目中使用libgit2sharp。问题是libgit2sharp的解决方案适用于VS2010而我正在使用VS2008。所以我不得不创建一个新的解决方案并修改代码而不使用默认参数。这不是问题,除了我尝试使用已编译的libgit2sharp DLL时,我在标题中列出了异常。

我已尝试在git2.dll中进行链接,但这没有帮助。将git2.dll复制到web项目中也没有帮助。

修改:问题已在LibGit2Sharp问题跟踪器中处理:https://github.com/libgit2/libgit2sharp/issues/39

1 个答案:

答案 0 :(得分:8)

在我的脑海中,我会说git2.dll编译版本的C libgit2)不在您的输出目录中({{1 }})。

由于bin\[Release|Debug]不是托管依赖项,因此无法从项目中引用它。

但是,由于prebuild事件,您应该能够将二进制文件复制到输出目录。

另一种选择是从您的解决方案中链接到dll文件并更改其属性以使其“在更新时被复制”(见下文)

enter image description here

如果您遇到任何问题,请在 bug tracker 中创建一个问题。

跟踪会更容易; - )

<强>更新

为了运行它,您必须确保在编译之后,文件git2.dll与程序集libgit2.dll位于同一目录中。这样,程序集对本机库的动态加载将按预期工作。

LibGit2Sharp.dll C libgit2的编译版本)应在输出目录的顶级 生成<{1> }})。

可以在ticket

中找到更全面的信息