gzxl
发表于 2022-9-20 22:52:38
注册 发表于 2022-9-20 20:03
IDR_MAINMENU MENU
BEGIN
POPUP "&文件"
总之,有基础,修改代码是没问题的
白色微風1991
发表于 2022-9-21 07:43:27
看看,不錯,謝謝,看不懂
gzxl
发表于 2022-9-21 22:10:04
好吧,看不懂,以后不分享代码了:lol
cable2004
发表于 2022-9-21 22:49:12
gzxl 发表于 2022-9-21 22:10
好吧,看不懂,以后不分享代码了
gzxl不好意思,我调侃的,想学的人还是很多,都比较低调!我年纪大了,没有精力学习,非常感谢你的分享!希望更多的人学习arx!
gzxl
发表于 2022-9-23 08:13:19
cable2004 发表于 2022-9-21 22:49
gzxl不好意思,我调侃的,想学的人还是很多,都比较低调!我年纪大了,没有精力学习,非常感谢你的分享! ...
:handshake我也是调侃的,别嫌弃代码写的烂就行,我属于业余爱好,代码都是没有经过严密性地组织及优化。
20060510412
发表于 2022-9-29 23:32:25
对arx完全不了解,先请教一个基础问题。
一份同样的源代码,可以不加修改,直接编译出各个版本cad对应的arx文件么?
gzxl
发表于 2022-9-30 08:49:56
20060510412 发表于 2022-9-29 23:32
对arx完全不了解,先请教一个基础问题。
一份同样的源代码,可以不加修改,直接编译出各个版本cad对应的ar ...
用 #if 预处理指令(条件编译)可以做到同一份代码、sln
ObjectARXSDK升级,有些相同功能的api存在参数类型或返回类型的区别,例如:
// 获取当前布局
AcDbLayout* pLayout;
AcDbObjectId tempId;
#if _MSC_VER > 1700// AutoCAD2016 以上
tempId = pLayoutManager->findLayoutNamed(layoutName, curDocDB);
es = acdbOpenObject(pLayout, tempId, AcDb::kForWrite);
#else
pLayout = pLayoutManager->findLayoutNamed(layoutName, TRUE);;
#endif
20060510412
发表于 2022-9-30 09:32:47
gzxl 发表于 2022-9-30 08:49
用 #if 预处理指令(条件编译)可以做到同一份代码、sln
ObjectARXSDK升级,有些相同功能的api存在参数 ...
arx的维护成本也太高了吧,每个版本的编译,都要把源代码再过一遍。:'(
gzxl
发表于 2022-9-30 09:57:59
20060510412 发表于 2022-9-30 09:32
arx的维护成本也太高了吧,每个版本的编译,都要把源代码再过一遍。
配置是比较麻烦,配置好之后就容易了。安全性较为好,运行速度快。
ivde
发表于 2022-10-5 19:55:15
https://github.com/mmamkin/mtmdedit
看过很多介绍ARX多版本配置,发现这个源码中的配置最简单明了,使用 VS2022 编辑,编译 2010-2023 无压力