乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
楼主: Eloquintet

如何确保打印和发布时plotstamp始终处于打开状态

[复制链接]

48

主题

277

帖子

5

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
481
发表于 2007-8-24 10:56:17 | 显示全部楼层
必须添加对Windows脚本主机对象模型的引用'这比注册表类所需的一行接一行的代码要好得多
你用过VLAX吗。Frank O的cls 它可以很好地从VBA计算LSP表达式
  1. Public Sub Vlax_Product_Key()
  2.     Dim obj As VLAX
  3.     Dim Key As String
  4.     Dim Prof As String
  5.    
  6.     Set obj = New VLAX
  7.     Key = obj.EvalLispExpression("(vlax-product-key)")
  8.     Prof = obj.EvalLispExpression("(getvar ""cprofile"")")
  9.    
  10.     Debug.Print "HKEY_CURRENT_USER" & Key & "\Profiles" & Prof & "\Dialogs\Plot Stamp\PlotStamp"
  11. End Sub
回复

使用道具 举报

48

主题

277

帖子

5

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
481
发表于 2007-8-24 11:07:16 | 显示全部楼层
不,我从来没有真正学习过VLisp,在lisp中使用vl的东西,所以我从来没有在VBA中探索过它 从哪里得到的?
回复

使用道具 举报

48

主题

277

帖子

5

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
481
发表于 2007-8-24 11:10:22 | 显示全部楼层
我在上一个回复中发布的文件中有它。
回复

使用道具 举报

48

主题

277

帖子

5

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
481
发表于 2007-8-24 13:23:20 | 显示全部楼层
嘿伙计们哇你'我一直很忙。我在acad中已经有了一些代码。lsp(命令-plotstamp)
打开它,但我正在寻找一种更简单的方法,如果在会话期间用户绘图时关闭它,它就会重新打开。我想我可以通过将其添加到我使用的绘图和发布按钮中来实现这一点,但我的老板说,有时她会使用这些按钮,但有时她会键入绘图,在这种情况下,它不会#039;t打开它。那'这就是为什么我认为使用事件路径更好,如果发出plot或publish命令,则打开plotstamp;我现在想要?
回复

使用道具 举报

48

主题

277

帖子

5

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
481
发表于 2007-8-24 13:38:47 | 显示全部楼层
好的……给你 使用Duh's的WshShell思想(您需要添加一个引用)和VLAX。此处为cls'这就是我想到的 附件中包含了您需要的所有内容
  1. Option Explicit
  2. Public strPlotStampLocale As String
  3. Private Sub AcadDocument_BeginCommand(ByVal CommandName As String)
  4.     Dim oWsh As WshShell
  5.     GetPlotStampLocation
  6.     Select Case UCase(CommandName)
  7.         Case Is = "PUBLISH"
  8.             Set oWsh = New WshShell
  9.             oWsh.RegWrite strPlotStampLocale, "1", "REG_DWORD"
  10.             Set oWsh = Nothing
  11.         Case Is = "PLOT"
  12.             Set oWsh = New WshShell
  13.             oWsh.RegWrite strPlotStampLocale, "1", "REG_DWORD"
  14.             Set oWsh = Nothing
  15.     End Select
  16. End Sub
  17. Private Sub GetPlotStampLocation()
  18.     Dim obj As VLAX
  19.     Dim Key As String
  20.     Dim Prof As String
  21.    
  22.     Set obj = New VLAX
  23.     Key = obj.EvalLispExpression("(vlax-product-key)")
  24.     Prof = obj.EvalLispExpression("(getvar ""cprofile"")")
  25.    
  26.     strPlotStampLocale = "HKEY_CURRENT_USER" & Key & "\Profiles" & Prof & "\Dialogs\Plot Stamp\PlotStamp"
  27. End Sub
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-7-6 10:41 , Processed in 1.294229 second(s), 60 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表