首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >DinkToPdf Net无法加载DLL文件

DinkToPdf Net无法加载DLL文件
EN

Stack Overflow用户
提问于 2019-03-30 10:33:36
回答 5查看 23.9K关注 0票数 8

我正在尝试使用DinkToPdf库从HTML数据库生成PDF。

在启动文件中,我添加了:

代码语言:javascript
运行
复制
var context = new CustomAssemblyLoadContext();
context.LoadUnmanagedLibrary(Path.Combine(Directory.GetCurrentDirectory(), "libwkhtmltox.dll"));

在启动web应用程序时,这条线给了我这个错误:

DllNotFoundException:无法加载DLL 'C:\Program \IIS Express\libwkhtmltox.dll‘或其依赖项之一:找不到指定的模块。(HRESULT例外: 0x8007007E) System.Runtime.Loader.AssemblyLoadContext.InternalLoadUnmanagedDllFromPath(string unmanagedDllPath) DllNotFoundException:无法加载DLL 'C:\Program \IIS Express\libwkhtmltox.dll‘或其依赖项之一:找不到指定的模块。(HRESULT例外: 0x8007007E)

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2019-03-30 14:31:33

我找到了一些工作环境。他们不是完美的,但值得一试,他们确实有帮助,我能够从SQl服务器生成PDF。我将.dll文件放在下面的文件夹中,它可以工作。

C:\程序文件\IIS Express

和加载的.dll文件

代码语言:javascript
运行
复制
Path.Combine(Directory.GetCurrentDirectory(), "libwkhtmltox.dll");

另一条路我走了整条路

代码语言:javascript
运行
复制
context.LoadUnmanagedLibrary(Path.GetFullPath(@"C:\Users\User\source\repos\WebSolution\WebApp\libwkhtmltox.dll"));

他们俩都起作用了。但是,我敦促Net开发人员在GetCurrentDir上工作得非常好。或从“项目或解决方案”文件夹加载的方法。

代码语言:javascript
运行
复制
Path.Combine(Directory.GetCurrentDirectory(), "libwkhtmltox.dll");
票数 1
EN

Stack Overflow用户

发布于 2019-06-20 22:41:41

万一其他人有同样的问题,我可以通过安装MicrosoftVisualWeb2015再发行版来解决这个问题。

票数 11
EN

Stack Overflow用户

发布于 2020-02-29 11:11:51

在库的git中提到,您应该下载二进制文件并将它们包含在源代码中:

将本机库复制到项目的根文件夹。在使用P/Invoke调用本机方法时,.NET核心将加载本机库。您可以找到本机库这里的最新版本。为您的操作系统和平台选择适当的库(64位或32位)。

让我崩溃的是,我将访问那个url,右键单击每个文件,然后选择save link as(铬)。这将导致下载一个损坏的文件:

不要这样做,您必须打开github中的每个文件,然后使用Download按钮。健康的档案比你走错路时得到的要大得多!

太荒谬了,但问题可能是由这个.

票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55430532

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档