本人程序猿一枚,混迹于某船厂,个人兴趣利用业余时间研究AM二次开发,说实话这个资料真少且封闭,但我还是凭着资料的点点提示和程序逆向入了门,本文的主要目的是给想入此门的同学一块敲门砖,源码随文章附上。废话不多说,先让这个示例跑起来:
1、用我最心爱的Visual Studio 2017打开项目,结构图如下所示,很简单只有3个文件,详解如下:
1
-->
1)HullDesignAddins.cs文件
程序集对AM平台的注册文件,需要继承IAddin接口,AM在启动时会执行里面的方法,其中Start方法完成工具条的注册,
2
-->
2)DemoCmd.cs文件
当点击菜单栏上的一个按钮时,执行Execute方法,按照点击事件的对象可以选择不同的操作,如弹出窗口或直接执行某个命令。
3
-->
3)WebBrowser.cs文件
一个自定义控件,用来查看PDF文件。
4
-->
2、点击生成解决方案,可以看到在Debug目录下已经生成改程序集的dll文件了。
5
-->
6
-->
3、在AM安装目录下的HullDesignAddins.xml文件中添加字符段:<string>D:\AMDemo\FisrtAddins\bin\Debug\AMDemo</string>,AM在每次启动的时候会读取这个配置文件。
7
-->
3、打开AM软件,惊喜的发现出现了一个新的工具条:开发示例,点击PDF Viewer,一切ok!
8
-->
4、关于调试:VS中可以联合AM调试代码,这真是AM二次开发的福音,方法如下:
1)VS选择调试--->附加到进程
9
-->
2)选择marhdes.exe进程,附加
10
-->
3)在需要调试的地方打上断点,注意HullDesignAddins.xml配置的路径需要和vs中dll生成的路径一致,切记切记。
11
-->
好了,作为第一篇就介绍到这边了,后续随着我学习的深入,可能会选取一些典型功能出来讲解代码,若有大牛路过还请多多指教!