CAD二次开发多版本编译的一次记录
1.新建项目,这里以CAD2014、2016、2019三个版本举例。添加CAD2014、CAD2016、CAD2019三个项目狗尾续下貂
;建个对照表
(setq DLL '(("18.0" "CAD2010.dll")
("19.1" "CAD2014.dll")
("20.0" "CAD2016.dll")
("20.1" "CAD2016.dll")
("21.0" "CAD2017.dll")
("22.0" "CAD2018.dll")
("23.0" "CAD2019.dll")
))
(command "netload" (strcat "E:/TEST/" (cadr (assoc (substr (getvar "acadver") 1 4) DLL))) ) ;路径自己改
我以前是通过自定义编译前事件来修改 .csproj 文件对不同版本CAD条件编译,只需要创建一个项目,缺点是一次只能编译一个版本并需要重新加载项目。
现在有 MSBuild 这一神器,一个 csproj 就可以对多个平台编译,楼主可以了解下。
msbuild yyds
2.给每个项目添加相关的引用。
3.我们在低版本里面添加代码,在高版本里面引用低版本里面的代码(或者新建一个公共目录,存放所有代码)。
4.这里给CAD2014添加了一个Test.cs类,并添加测试代码。
5.在CAD2016项目里右键 -- 添加 -- 现有项 ,找到上面Test.cs所在的文件目录 注意右下角的添加 ,边上有个三角小箭头 ,展开-- 点击添加为链接。
CAD2019操作同CAD2016,添加完后结果是这样的。
现在就可以直接同时生成多个版本的dll啦。
注:如果低版本和高版本在某些函数接口有差别的话,我们可利用条件编译针对不同的版本做不同的处理。
页:
[1]
2