技术贴 | SAP2000二次开发初探之C#环境搭建
Posted 水木华声
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了技术贴 | SAP2000二次开发初探之C#环境搭建相关的知识,希望对你有一定的参考价值。
SAP2000作为进行结构分析的重要软件,早在2007年就发布了开放的应用程序开发接口(OAPI),第三方开发者可以创建与SAP2000丰富紧密的双向连接,同时允许准确地转换模型至SAP2000,由SAP2000控制执行过程,并从SAP2000中提取分析和设计信息。
SAP2000开放的API与大多数编程语言兼容,包括VBA(Visual Basic for Applications)、C#、Python等。今天就给大家介绍一下如何搭建C#环境进行SAP2000开发。
工具:SAP2000 v15以上版本(建议v21以后更高级版本)、Mirosoft Visual Studio 2019 Community (VS 2019)、.Net Framework4.7及以上。
SAP2000的安装大家各有各的办法,正常安装即可。而此前装过VS较早版本的同学建议更新到2019版。VS作为一个兼容性较强的IDE,其免费的社区版已经足够我们的使用。
01
VS 2019的下载安装
下载安装官网上下载VS 2019的安装引导程序,选择第一项community版即可
VS 2019下载界面
右键点击下载好的.exe文件,选择“以管理员身份运行”,进入下面的界面:
VS 2019安装界面(1)
因为笔者已经安装了社区版,所以“可用”栏目下未显示community版本的VS 2019,大家没安装的点击community版本的安装选项即可。选择安装后会下载一下准备文件。
VS 2019安装界面(2)
接下来在出现的界面的“工作负载”栏目选择“.NET桌面开发”,即C#环境
选择C#环境
然后点击“安装位置”栏目改一下安装位置,一般默认在C盘,但大家一般不会把一个3、4G大的软件安装到C盘。安装位置的第一项即IDE安装位置一定要是一个空文件夹,否则无法安装。另外的两个选项则是存下载缓存和一些共享组件等,可以是非空文件夹。
“语言包栏”一般默认勾选了中文简体,如果有其他语言需求自己勾选一下即可;单个组件项目不建议小白随便进行删减,(如果不幸删了核心组件可以重新安装)如果有其他需求可以视情况增加需要的组件。
调整安装位置
然后我们就可以愉快地进行安装了,注意这里最好勾选下载时安装,速度会快一点。
开始安装
然后等待下载安装结束,我们就可以愉快地用C#进行SAP2000二次开发了。
02
开发准备
1、创建项目
打开VS 2019,创建新项目,选择类库(.Net Framework)。
创建新项目
项目配置中可以设置项目名称和选择你的文件的存放位置,框架记得选择.Net Framework 4.7及以上。如果这里框架点开后发现没有.Net Framework 4.7及以上版本,可以到微软官网进行下载安装,当然一般不会出现这种情况。
项目配置
2、添加SAP2000类库的引用
这一步需要提前安装好SAP2000,点击“解决方案”中的“引用”一栏,右键选择“添加引用”。
添加引用
点击浏览,然后打开SAP2000的安装目录,找到SAP2000v1.dll,选中,确定。
安装目录
选定SAP2000v1.dll
3、修改项目属性
为了可以让我们使用C#从COM串口中读取数据,我们还需要修改一下项目属性,右键点击“解决方案”栏目下的项目名称,然后选择“属性”,在属性界面进行如下操作:
1)“应用程序”—“程序集信息”—勾选“使程序集COM可见”
修改属性
1)修改程序集信息
2)“生成”—目标平台改成“x64”—勾选“为COM互操作注册”
2)修改目标平台
4、类名修改
修改Class1类的名字为cPlugin(当然也可以另外添加一个),因为SAP2000插件的逻辑是在SAP里由主程序调用cPlugin这个类里面的Main方法。接下来就可以愉快的写代码了,不过要记得每个类的引用都需要加上“using SAP2000v1”(是数字1不是英文字母l)。
修改类名
03
SAP插件添加
当写好代码实现功能后,生成成功后,想要在SAP2000里导入插件,必须以管理员方式打开VS,然后再重新生成一次。
这时打开SAP2000,点击“工具”这一栏,选择“添加”,然后输入VS里的项目名称,菜单名称看个人习惯填写,可以写这个插件的功能。最终可以看到状态为OK,就可以愉快地使用自己写的插件了~
添加插件
技术贴征稿事宜
本篇文章是自开放技术贴征稿以来的第一篇过稿文章,同时我们依然期待同学们继续投稿,期待每一位同学的奇思妙想!
技术贴推送是向全系同学传播与分享软件技术知识的良好渠道,我们致力于为同学们提供最实用的技术知识,为同学们的学习科研带来更多便利。
如果你有自己独特的技术小技巧,如果你乐于分享自己常用的实用工具软件,如果你希望与大家交流技术知识,欢迎联系我们投稿!成功过稿将会获得稿费噢!
请点击“阅读原文”获取征稿详情,欢迎与我们联系~
供稿 | 冯捷讯 陈巧云
审核 | 顾燚 程志刚
以上是关于技术贴 | SAP2000二次开发初探之C#环境搭建的主要内容,如果未能解决你的问题,请参考以下文章
UG NX二次开发(C#)-曲线-NXOpen.Curve初探