0

我已经构建了一个小型 wpf 应用程序来管理我正在开发的网站。这个应用程序的主要特点是它允许我检出主题存储库的不同分支。这在 Visual Studio 中完美运行,但是当我在我的 Windows 8 机器上发布、安装和运行该应用程序时,它会返回:

{"Unable to load DLL 'git2': The specified module could not be found. (Exception from HRESULT: 0x8007007E)"}

我已经通过互联网和stackoverflow进行了搜索。还有类似的问题,如Unable to load DLL 'git2.dll' The specified module could not be found但是提供的答案(以及答案中描述的github问题中显示的答案)又出现了一个错误:

Unable to find an entry point git_reference_oid in git2.dll

我尝试通过 nuget 安装最新版本,包括编译的 dll 并添加 git2.dll,包括我的解决方案中的 libgit2sharp 项目。再一次,当我通过 Visual Studio 运行它时它运行良好,但当我发布、安装和运行它时失败。

我不确定需要包含哪些信息,因此请随时发表评论并让我知道,以便我更新问题。

谢谢!

4

1 回答 1

2

您运行已安装可执行文件的计算机可能缺少 MSVCR100.DLL 或 MSVCR110.DLL(取决于 git2.dll 是否已使用 Visual Studio 2010 或 2012 编译)。

最近在 libgit2 中合并了一个修复程序,它消除了对这种依赖关系的需要。

实际上,dumpbin /IMPORTS git2.dll针对这些二进制文件运行不再显示对 MSVCR1x0.dll 的任何依赖。

LibGit2Sharp 项目分支的最新提示vNext嵌入了那些更新的 git2.dll。建议编译项目(使用该build.libgit2sharp.cmd工具并改用此版本(托管程序集 + 本机二进制文件))。

于 2013-03-26T19:50:30.677 回答