明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1555|回复: 2

请高手指点 打印问题

[复制链接]
发表于 2003-9-9 18:12:00 | 显示全部楼层 |阅读模式
在程序中,通过如下程序短进行打印:
Public Function myPrint()

If linghu.ActiveDocument.ActiveSpace = acPaperSpace Then

   linghu.ActiveDocument.MSpace = True
   
   linghu.ActiveDocument.ActiveSpace = acModelSpace
   
End If

  Dim myConfig As String
  myConfig = "\\Printsever\hp laserJet 1000"

  linghu.ActiveDocument.ModelSpace.Layout.PlotType = acExtents
  linghu.ActiveDocument.ModelSpace.Layout.StandardScale = acScaleToFit
  
  linghu.ActiveDocument.ModelSpace.Layout.ConfigName = myConfig
  
  linghu.ActiveDocument.Plot.NumberOfCopies = 1
  
  linghu.ActiveDocument.Plot.PlotToDevice

End Function

本程序的缺点很明显:
   myConfig = "\\Printsever\hp laserJet 1000"
语句把打印机的路径与名称都固化在程序里了,换句话说,把本程序编译后,拿到别的机器上,肯定是不能正确返回打印机的。请高手们给个指点。不胜感激。
^_^
谢谢了
发表于 2003-9-9 22:19:00 | 显示全部楼层
这就很有难度了,一个电脑可能配置有几个打印机,而且本身AutoCAD也配好有几个为了输出图片用的虚拟打印机,所以让程序自己选择哪个是个问题。
你可以参照二次开发栏目中的“使用默认打印机打印”的文章,保存上次使用的打印机来打印,而该打印机名称保存到注册表中,这样你就可以正确的打印了,不管在哪部机器上。
发表于 2003-9-10 11:43:00 | 显示全部楼层
可以用PC2
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-28 14:43 , Processed in 0.164607 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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