我有一些代码使用了一个名为Fusion Pro的产品库。根据一些配置和数据文件,它将生成一个PDF文件。在没有任何抛出异常的情况下,我一直得到完全缺乏输出的一致结果。但是,在调试时,我已经能够通过将调试器附加到我本地IIS中运行的代码并逐行执行来生成PDF。但是没有什么是一致的。如果我使用F11代替F10并且通过每条线“缓慢但稳定”,它似乎有更高的成功率。不幸的是,即使单步执行代码也不会产生PDF。
我从来没有经历过每次使用相同输入的代码表现如此不稳定。
唯一其他相关信息位是此代码在另一个asmx服务中正常运行,它在特定域帐户下运行(需要特殊安全性),并且它以32位模式运行。
DLQueueClient client = new DLQueueClient();
DLQueueJob vdpQueueJob = new DLQueueJob();
string fileName = message.OutputFilePath;
var dataFilePath = CreateDataFile(fileName, message.DefFilePath, message.VariableDataContent, message.QTY);
var pdfFilePath = Path.Combine(new[] { message.OutputFilePath, dataFilePath.Replace(".txt", ".pdf") });
vdpQueueJob.Priority = priority;
vdpQueueJob.Queue = queueName;
string cmd = "\"" + Settings.FusionProExe + "\" \"" + dataFilePath + "\" \""
+ message.DiffFilePath + "\" \"" +
(isProof ? message.ProofConfigFilePath : message.PrintConfigFilePath) + "\" \""
+ pdfFilePath + "\"";
vdpQueueJob.CommandLine = cmd;
client.ConnectRemote(Settings.FusionProServer, Settings.FusionProUser, Settings.FusionProPassword, Settings.FusionProTimeout);
client.SubmitJob(vdpQueueJob, Settings.FusionProTimeout, true);
return pdfFilePath;