明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2969|回复: 12

[基础] 在调试时不用每次都打开AutoCAD

[复制链接]
发表于 2015-5-18 22:38:52 | 显示全部楼层 |阅读模式
测试版本:Visual Studio 2012 + AutoCAD 2014
在这样的环境下有没有什么办法可以在调试时不用每次都打开AutoCAD啊?

我现在只能用一种折中的方法,在VS中修改完后通过AutoCAD中重新NETLOAD的方法来重新测试,这种方法不用每次都打开AutoCAD,但是这种方法不能测试断点,所以效果还是不理想。
发表于 2019-5-8 21:03:49 | 显示全部楼层
zfybs 发表于 2015-5-22 13:53
不能直接Build之后再将这两个dll复制到对应的文件夹吗? 还有那个NetLoadX.dll应该是可以随意放的吧,反 ...

您好,您在.net4.0下修改的代码能发我一份吗,我修改的总有问题,加载都加载不上去
 楼主| 发表于 2015-5-20 16:10:00 | 显示全部楼层
难道没有可行的方法吗?
发表于 2015-5-20 16:59:54 来自手机 | 显示全部楼层
http://bbs.mjtd.com/forum.php?mod=viewthread&tid=113591
 楼主| 发表于 2015-5-22 11:26:07 | 显示全部楼层
雪山飞狐_lzh 发表于 2015-5-20 16:59
http://bbs.mjtd.com/forum.php?mod=viewthread&tid=113591

那个“生成到”是怎么生成啊,直接将那两个.dll复制到对应的文件夹吗?
发表于 2015-5-22 12:40:58 来自手机 | 显示全部楼层
在项目属性里更改
 楼主| 发表于 2015-5-22 13:53:34 | 显示全部楼层
本帖最后由 zfybs 于 2015-5-22 14:03 编辑
雪山飞狐_lzh 发表于 2015-5-22 12:40
在项目属性里更改

不能直接Build之后再将这两个dll复制到对应的文件夹吗? 还有那个NetLoadX.dll应该是可以随意放的吧,反正我每次打开CAD时都加找到它然后加载一次(我现在还不知道怎么把它最好做成注册版本。。。)

另外,还有一个不解的问题如下:
我的配置是VS 2012 + AutoCAD 2014(都是64位的) ,
在实际操作中,我用如下步骤:

1.将下载下来的源代码在VS2012中修改为.net 4.0下的版本,并重新build
2.将生成的dll分别复制到AutoCAD2014的安装目录下与要测试的程序的debug目录下
3.打开CAD、加载NetLoadX.dll
4.执行netloadx命令,添加测试的那个dll(此时添加命令成功,没有问题)
5.执行测试的程序集中的命令,此时就会出错(此时要么直接卡住,要么提示“致命错误”)。

上面我是先在外部打开CAD,然后进行添加的。然后我又测试了直接从VS中启动CAD的操作:

1.将下载下来的源代码在VS2012中修改为.net 4.0下的版本,并重新build
2.将生成的dll分别复制到AutoCAD2014的安装目录下与要测试的程序的debug目录下
2.1. 在VS中启动程序,CAD被打开,
3.在打开的CAD中加载NetLoadX.dll
4.执行netloadx命令,添加测试的那个dll(此时添加命令成功,没有问题)
5.执行测试的程序集中的命令(虽然有点卡,但是成功了)
6.开始分离进程
7.在VS中修改程序集(未修改程序集名称或者命令的名称)
8.重新build程序集
9.再附加CAD进程
10.重新执行修改了的命令(修正成功,而且可以进行断点调试!)

但是,上面成功测试的命令中只有一个“Application.ShowAlertDialog("Succeed!")”方法,
当我执行另外一个命令中的“Dim pSelectionRes As PromptSelectionResult = acEd.GetSelection(pSelectOpts, acSelFtr)”方法时,就会弹出报错:
运行时遇到了错误。此错误的地址为 0xe5654ac7,在线程 0x157c 上。错误代码为 0xc0000005。此错误可能是 CLR 中的 bug,或者是用户代码的不安全部分或不可验证部分中的 bug。此 bug 的常见来源包括用户对 COM-interop 或 PInvoke 的封送处理错误,这些错误可能会损坏堆栈。

请问这要怎么解决啊?(如果我不是通过netloadX来加载此程序集,而直接用 NETLOAD 加载,然后调试此命令的话,在执行这个GetSelection方法时却不会弹出报错。)

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
发表于 2015-5-22 14:27:37 来自手机 | 显示全部楼层
我调试时重启N次可以接受,玩呢:)
 楼主| 发表于 2015-5-22 14:41:30 | 显示全部楼层
ivde 发表于 2015-5-22 14:27
我调试时重启N次可以接受,玩呢:)

我语文没学好,你这表达的是什么意思?
发表于 2015-5-22 18:13:05 来自手机 | 显示全部楼层
和窗体有关的代码会出问题。。。
 楼主| 发表于 2015-5-22 20:18:40 | 显示全部楼层
雪山飞狐_lzh 发表于 2015-5-22 18:13
和窗体有关的代码会出问题。。。

有什么好办法可以解决吗?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-25 06:31 , Processed in 0.199359 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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