乐筑天下

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

Vb6并设置acadApp=GetObject(,“AutoCAD.Application”)

[复制链接]

14

主题

43

帖子

4

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
99
发表于 2017-1-26 14:05:02 | 显示全部楼层 |阅读模式

本帖以下内容被隐藏保护;需要你回复后,才能看到!

游客,如果您要查看本帖隐藏内容请回复
回复

使用道具 举报

18

主题

1529

帖子

973

银币

中流砥柱

Rank: 25

铜币
649
发表于 2017-1-27 09:18:30 | 显示全部楼层
你可以用它来代替吗?:
  1. Set acadApp = ThisDrawing.Application

回复

使用道具 举报

7

主题

100

帖子

7

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
135
发表于 2017-1-27 10:11:09 | 显示全部楼层
可能acad cad在未安装vba的情况下响应COM调用。我还没试过。但您可能仍然需要更新版本的VB。
回复

使用道具 举报

14

主题

43

帖子

4

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
99
发表于 2017-1-27 10:23:47 | 显示全部楼层
由于您运行独立的EXE来自动将AutoCAD作为进程外实例,因此您的应用程序是32位EXE应用程序,而AutoCAD (2016)是64位应用程序,这应该没有关系。但是,您展示的代码按原样用于VB6应用程序,仅当AutoCAD(或BricsCAD)已经在同一台计算机上运行(即必须存在AcadApplication实例的运行实例)时才有效。否则,您的代码将在这一行引发异常。Visible = True
并使您的EXE应用程序崩溃。
回复

使用道具 举报

7

主题

100

帖子

7

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
135
发表于 2017-1-27 10:37:46 | 显示全部楼层
我在第一条消息中输入的代码是正确的。
我在其他电脑上进行了一些测试,结果正常。
但是,如果在PC中安装了AutoCAD和BricsCAD,则代码请求必须指定AutoCAD版本。例如
  1. Set acadApp = GetObject(, "AutoCAD.Application.20.1")

PS。没有必要安装VBA!
回复

使用道具 举报

4

主题

219

帖子

4

银币

后起之秀

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

铜币
238
发表于 2017-1-27 10:38:42 | 显示全部楼层
尝试:以管理员身份运行
回复

使用道具 举报

14

主题

43

帖子

4

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
99
发表于 2017-1-27 12:46:54 | 显示全部楼层
大家好,
这些链接最终帮助我解决了这个问题。确保设置CLSID和AutoCAD.NET应用程序。21(编号)到相应的AutoCAD版本(此版本适用于AutoCAD 2017)。在注册表中查找它。它甚至可以在Windows 10上与visual basic 5和64位AutoCAD 2017配合使用。
https://stackoverflow.com/questions/40656440/vb6-program-interacting-with-autocad-is-not-longer-able-to-create-or-bind-to-t
这是一个很好的例子https://stackoverflow.com/questions/9125424/late-binding-run-time-error-in-vb6-when-creating-an-object-from-a-net-assembly
  1. Windows Registry Editor Version 5.00
  2. [HKEY_CLASSES_ROOT\AutoCAD.Application.21]
  3. @="AutoCAD Application 21"
  4. [HKEY_CLASSES_ROOT\AutoCAD.Application.21\CLSID]
  5. @="{0D327DA6-B4DF-4842-B833-2CFF84F0948F}"
  6. [HKEY_CLASSES_ROOT\AutoCAD.Application]
  7. @="AutoCAD Application"
  8. [HKEY_CLASSES_ROOT\AutoCAD.Application\CLSID]
  9. @="{0D327DA6-B4DF-4842-B833-2CFF84F0948F}"
  10. [HKEY_CLASSES_ROOT\AutoCAD.Application\CurVer]
  11. @="AutoCAD.Application.21"
  12. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AutoCAD.Application.21]
  13. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AutoCAD.Application.21\CLSID]
  14. @="{0D327DA6-B4DF-4842-B833-2CFF84F0948F}"
  15. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AutoCAD.Application]
  16. @="AutoCAD Application"
  17. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AutoCAD.Application\CLSID]
  18. @="{0D327DA6-B4DF-4842-B833-2CFF84F0948F}"
  19. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AutoCAD.Application\CurVer]
  20. @="AutoCAD.Application.21"
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-6-28 18:59 , Processed in 2.287127 second(s), 66 queries .

© 2020-2025 乐筑天下

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