0

PDFTron 是一个第三方库,用于将文件从一个扩展名转换为 pdf 文档。

我们在多个场景和操作系统上成功地在我们的应用程序中使用它。

现在,随着我们向 TFS 等自动化构建系统前进,我们正在尝试运行 pdf 转换作为测试阶段的一部分。我们尝试了两种方式,使用标准的 UnitTest,我们尝试了由 PowerShell 脚本调用的 .Exe 文件。以下都没有成功运行并引发以下错误:

Unhandled Exception: pdftron.Common.PDFNetException: Exception:
 ○ Message: An error occurred while converting the file.
 Detailed error:
 ○Document failed to open
 ○ Conditional expression: false
 ○ Filename   : Convert.cpp
 ○ Function   : trn::PDF::Convert::ToPdf
 ○ Linenumber : 1825
 
 at pdftron.PDF.Convert.ToPdf(PDFDoc in_pdfdoc, String in_filename)
 at ImageComapareTool.Program.Main(String[] args)
 Exception Message: MSBuild error 1 has ended this build. You can find more specific information about the cause of this error in above messages. (type BuildProcessTerminateException)
Exception Stack Trace:    at System.Activities.Statements.Throw.Execute(CodeActivityContext context)
   at System.Activities.CodeActivity.InternalExecute(ActivityInstance instance, ActivityExecutor executor, BookmarkManager bookmarkManager)
   at System.Activities.Runtime.ActivityExecutor.ExecuteActivityWorkItem.ExecuteBody(ActivityExecutor executor, BookmarkManager bookmarkManager, Location resultLocation)

从构建服务器手动运行 executable\powershell 脚本就可以了。这导致我们认为这是在 Windows 服务下运行时出现的问题

我们遇到了这个文档,但它没有给我们任何好的假设,因为我们在本地用户下运行服务。

任何有关可选解决方案的线索\指向正确的方向都会有所帮助

4

1 回答 1

0

最终,在尝试了多个方向(例如从 Pdftron 或 psexec 运行的实验构建)之后,我们以交互模式运行 TFS 服务,这意味着实际用户必须登录到 TFS 构建服务器......所以这不是最方便的解决方案因为它非常脆弱,但至少它有效。

在此处输入图像描述

于 2016-02-10T09:57:21.977 回答