我试图更新我的(以前工作的)pdf-创建web应用程序来使用ABCpdf.NET和ABCpdf.NET壁虎运行时nuget包。
我已经安装了两个包(都是8.1.1.6版),但是当我运行我的应用程序时,我得到了以下WebSupergoo.ABCpdf8.Internal.PDFException
添加HTML失败:壁虎引擎遇到无法恢复的错误。可能的原因: XULRunner文件夹损坏或来自另一个版本的ABCpdf。
安装ABCpdf.NET Gecko包后,我得到一个对话框,告诉我需要手动将XULRunner文件夹复制到输出目录中。为了实现这一点,我将以下内容添加到我的应用程序.csproj文件中:
<Target Name="AfterBuild">
<CallTarget Targets="CopyAbcpdfToDeployFolder" />
</Target>
<Target Name="CopyAbcpdfToDeployFolder">
<ItemGroup>
<SourceDir Include="$(ProjectDir)XULRunner\**\*.*" />
</ItemGroup>
<Copy SourceFiles="@(SourceDir)" DestinationFolder="$(WebProjectOutputDir)\$(OutputPath)%(SourceDir.RecursiveDir)\XULRunner" />
</Target>(这似乎工作正常- XULRunner文件夹及其内容在构建后出现在我的bin文件夹中)
失败的代码行如下:
theDoc.AddImageUrl(url);有人能帮我把这事做好吗?
发布于 2012-08-02 07:05:25
事实证明,我对.csproj文件的更改没有将所有文件复制到正确的子文件夹中。为了递归地复制文件夹结构和文件,XML应该如下所示:
<Target Name="AfterBuild">
<CallTarget Targets="CopyXULRunnerToDeployFolder" />
</Target>
<Target Name="CopyXULRunnerToDeployFolder">
<ItemGroup>
<MyFiles Include="XULRunner\**\*.*" />
</ItemGroup>
<Microsoft.Build.Tasks.Copy SourceFiles="@(MyFiles)" DestinationFiles="@(MyFiles->'$(OutputPath)\XULRunner\%(RecursiveDir)%(Filename)%(Extension)')"/>
</Target>发布于 2013-03-05 17:41:01
我能够使用以下MSBuild xml实现相同的结果:
<ItemGroup>
<Content Include="XULRunner\**\*.*">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
</ItemGroup>在处理了有关通过MSDeploy构建包(不包括XULRunner文件)的问题之后,我开始了这个设置。
不确定这是否存在明显的错误,但到目前为止,它在多阶段部署设置中对我有效。
https://stackoverflow.com/questions/11771990
复制相似问题