Bentley 二次開發 入門配置
開發環境配置
本機開發環境:Microsoft Visual Studio 2008(c#)+ MicroStation V8i (SELECTseries 1)
開發環境的配置如下:
1、 安裝MicroStation V8i (SELECTseries 1)
2、 MicroStationAddInWizard2005的安裝及使用
MicroStationAddInWizard2005是VS2005(VS2008)下的開發嚮導,可以很方便的進行入門。(MicroStationAddInWizard2005可以從Bentley BBS中找到),不過目前這個嚮導還不少很完善,有些地方還需要手動進行修改。具體步驟如下:
- 解壓“MicroStationAddInWizard2005.rar”將“vcprojects”和“VCWizards” 兩個目錄複製到VS2005(VS2008)安裝目錄的“VC”目錄下。
(如果使用的是VS2008,請將“MicroStationAddInWizard.vsz”檔案中的“Wizard=VsWizard.VsWizardEngine.8.0” 改為“Wizard=VsWizard.VsWizardEngine.9.0”。 )
2.開啟VS2005或VS2008,新建專案,命名為“MsApp”,選擇VC++下的“MicroStationAddInWizard”模板,選擇C sharp,後面的選項頁中均打勾,完成後生成專案;
2.開啟VS2005或VS2008,新建專案,命名為“MsApp”,選擇VC++下的“MicroStationAddInWizard”模板,選擇C
sharp,後面的選項頁中均打勾,完成後生成專案;
- C:\Program Files\Bentley\MicroStation V8i (SELECTseries 1)\MicroStation\ustation.dll
- C:\Program Files\Bentley\MicroStation V8i (SELECTseries 1)\MicroStation\assemblies\bentley.microstation.dll
- C:\Program Files\Bentley\MicroStation V8i (SELECTseries 1)\MicroStation\assemblies\bentley.interop.microstationdgn.dll
- C:\Program Files\Bentley\MicroStation V8i (SELECTseries 1)\MicroStation\assemblies\bentley.windowing.dll
- C:\Program Files\Bentley\MicroStation V8i (SELECTseries 1)\MicroStation\assemblies\bentley.microstation.interfaces.1.0.dll
- C:\Program Files\Bentley\MicroStation V8i (SELECTseries 1)\MicroStation\assemblies\ECFramework\Bentley.General.1.0.dll
其中還需用到Windows Form自帶的引用,可以新增一個Windows 窗體即可再刪除,方案裡自動添加了幾個必須的引用。
1、 新增完成後,再重新生成解決方案,可以看到生成成功了。
2、 下面有幾個需要注意的問題,需要手動調整下:
- 將“commands.xml” 檔案的“生成操作”屬性改為“嵌入的資源”;(這樣只需拷貝一個dll檔案到Microstation的mdlapp目錄下即可了,否則的話還需要把這個commands.xml檔案一併拷貝。)
- 主程式檔案中(MsApp.cs) KeyinTree的值要加上主命令名
(即namespace 關鍵字後面的)。即
[Bentley.MicroStation.AddInAttribute(MdlTaskID=“MsApp”, KeyinTree=“MsApp.commands.xml")]
3、 測試
a) 將生成的檔案MSAPP.dll複製到Microstation安裝目錄下的“mdlapps”目錄下,然後執行Microstation,開啟選單【實用工具】-【鍵入命令】,彈出鍵入命令視窗,鍵入“MDL load msapp”,提示已載入。
然後再鍵入msapp,即可以出現預設的2個命令。到這一步,說明這個開發環境已經配置成功了,下一步就可以針對這個嚮導新增自己的命令、視窗和其它功能了。
除錯執行
- VS裡設定除錯環境
C:\Program Files\Bentley\MicroStation V8i (SELECTseries 1)\MicroStation\mdlapps\ |
1. 首先設定專案屬性,在專案上點選右鍵,選擇屬性,在“生成”選項卡,設定輸出路徑為Microstation的安裝目錄下的mdlapps下。
2. 為了方便除錯和提高效率,可以將常用的幾個鍵入命令設定為工具條。
(Microstation中介面定製儲存在*.dgnlib檔案中。可以先開啟常用的一個dgnlib檔案,如General.dgnlib,然後在Microstation中定義工具選單
- 裝載:mdl load msapp,,mydomain
- 解除安裝:clr unload domain mydomain
- Open:msapp open
- ……
備註:
Addins依附於應用程式域(AppDomain),要解除安裝Addins必須將其所在的應用程式域一起解除安裝。通過mdl load MSAddins,會將Addins載入到DefaultDomain應用程式域中,而該應用程式域不能被解除安裝。這樣,只能退出MicroStation才能解除安裝使用者載入的Addins
通過
- 裝載:mdl load msapp,,mydomain
- 解除安裝:clr unload domain mydomain
可實現在不關閉MS的情況下進行載入和解除安裝,方便除錯。
- Vs中除錯方法
- 啟動Microstation
- Vs:【除錯】-【附加到程序】
- 選擇MS程序
(ustation.exe)
VS自動啟動除錯,只需要在需要的地方插入斷點,在microstation中操作的時候即可自動跳轉到該斷點進行除錯。
開發嚮導包可在本部落格的資源中找到下載。