明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2214|回复: 4

[打印] vb.net调用cad打印多个文件为PDF,第一个可以正常生成,但第二个就出错了,望高手指教

[复制链接]
发表于 2014-11-26 21:46:26 | 显示全部楼层 |阅读模式
代码如下:
For i = 0 To FileNames.Length - 1
            AcadApp.Documents.Open(FileNames(i))
            AcadDoc = AcadApp.ActiveDocument
            AcadDoc.ModelSpace.Layout.ConfigName = "DWG To PDF.pc3"                                   '选定打印机配置
            AcadDoc.ModelSpace.Layout.CanonicalMediaName = "ANSI_A_(11.00_x_8.50_Inches)"          '设置图幅
            AcadDoc.Plot.PlotToFile(FileNames(i) & ".pdf") '打印
Next

第1个文件可以正常打印成PDF,循环到第2个时就出错,出错的提示是:“未处理COMException”,
"对 COM 组件的调用返回了错误 HRESULT E_FAIL".
我的想法会不会第1个文件正在打印的时候,程序又开始调用第2个打印,造成冲突,希望高手
指教原因和解决办法啊!
发表于 2021-1-7 10:38:48 | 显示全部楼层
我用Python弄,ActiveX , 也出现这个问题
发表于 2021-2-11 20:15:15 | 显示全部楼层
我自己也出现过这种情况,而且你的想法跟我的想法一样。于是我在打印第一个文件完毕后设置延迟,确保文件1生成后再进行第二个文件的打印,结果的确没出现问题。后来,在论坛上发现,可以通过设置系统变量backgroundplot的值为0,将打印设置为前台打印,就一切顺利了。
  1. (setvar "backgroundplot" 0);;;        设定系统变量,确保cad在前台进行打印,这样后一次打印会在前一次打印完成后才开始,避免错误
发表于 2022-2-12 15:59:58 | 显示全部楼层
学习了,支持!!!
发表于 2022-2-16 09:23:07 | 显示全部楼层
学习了,谢谢你
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-25 04:50 , Processed in 0.140487 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表