以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  编译后打印报错  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=177413)

--  作者:fytea
--  发布时间:2022/5/21 3:32:00
--  编译后打印报错
项目打印是excel保存pdf,在工程文件时,正常打印,编译后,出现下面报错
无法保存该文档。该文档可能已被打开,或者保存时出错。

源码
Dim Book As New XLS.Book(ProjectPath & "Attachments\\量化分级测评报告模板.xls")
Dim fl As String = ProjectPath & "Reports\\测评报告.pdf"
Book.Build() \'生成细节区
Book.SaveToPDF(fl) \'保存为PDF文件
Dim Proc As New Process \'打开PDF文件
Proc.File = fl
Proc.Start()

[此贴子已经被作者于2022/5/21 3:34:18编辑过]

--  作者:有点蓝
--  发布时间:2022/5/21 9:13:00
--  
编译后在开发电脑测试,还是在其他电脑测试?

看看是不是之前测试保存的文件处于打开状态

--  作者:fytea
--  发布时间:2022/5/21 10:08:00
--  
在开发电脑上测试的,重新开机,不可能处于打开状态


--  作者:有点蓝
--  发布时间:2022/5/21 10:11:00
--  
看看发布后的程序目录里有没有【publish\\project\\Reports】这个目录,如果没有,手工添加上
--  作者:fytea
--  发布时间:2022/5/21 10:34:00
--  
目录路径有
生成excel,编译正常
代码
Dim Book As New XLS.Book(ProjectPath & "Attachments\\量化分级测评报告模板.xls")
Dim fl As String = ProjectPath & "Reports\\测评报告.xls"
Book.Build() \'生成细节区
Book.Sheets(0).Rows.RemoveAt(0) \'删除第一行,Excel报表的第一行通常是标记行
Book.Save(fl) \'保存工作簿
Dim Proc As New Process \'打开工作簿
Proc.File = fl
Proc.Start()

--  作者:有点蓝
--  发布时间:2022/5/21 11:03:00
--  
我测试没有问题,请上传实例说明