寫在開頭:
關于ARX程序的加載問題已經困擾我很久了,前段時間二次開發版的老大aliu22介紹了一種方法,不過覺得有點兒麻煩,而且對于托管的程序,必須通過lisp或者.arx程序間接加載,速度有所影響。通過研讀ObjectARX自帶的幫助文檔,今天終于找到了比較快速的實現方法,(有點兒興奮^_^),分享給大家。
非托管的ARX程序的加載
非托管的ARX程序是指用C++編譯的以.arx為后綴的動態鏈接庫文件,實現方法很簡單,只需在注冊表中加入以下信息(示例):
說明:在Applications項下創建一個以自己程序名命名的新項(如:LubanRen),然后在此新項下創建兩個新鍵:"LOADCTRLS"和"LOADER"。它們一個是控制程序隨CAD加載的方式,另一個是告訴CAD所要加載的程序的路徑。
托管的ARX程序的加載
托管的ARX程序是指由.net程序(C#,C++.net或VB.net)編譯的以.dll為后綴的動態鏈接庫文件,這種程序的加載和非托管的程序加載類似,在注冊表中加入以下信息:
說明:和非托管的程序相比,只要多創建一個“MANAGED”鍵,并設為Ox01,告訴CAD這是托管程序即可。
有興趣的朋友,試試吧,enjoy it...
-------------------------
附注:注冊表鍵值"LoADCTRLS"控制說明,控制ARX程序的加載方式(上例中使用的是Ox02隨CAD啟動一起加載)
0x01:Load the application upon detection of proxy object.
當代理對像被控知時另載相應ARX程序.
0x02:Load the application upon AutoCAD startup.
當AutoCAD啟動時加載相應ARX程序.
0x04:Load the application upon invocation of a command.
當輸入命令時加載相應ARX程序.
0x08:Load the application upon request by the user or another application.
當有用戶或別的程序請求時加載相應ARX程序.
0x10:Do not load the application.
從不加載該應用程序.
0x20:Load the application transparently.
顯式加載該應該程序.(不知該項譯法是否有誤)
關于ARX程序的加載問題已經困擾我很久了,前段時間二次開發版的老大aliu22介紹了一種方法,不過覺得有點兒麻煩,而且對于托管的程序,必須通過lisp或者.arx程序間接加載,速度有所影響。通過研讀ObjectARX自帶的幫助文檔,今天終于找到了比較快速的實現方法,(有點兒興奮^_^),分享給大家。
非托管的ARX程序的加載
非托管的ARX程序是指用C++編譯的以.arx為后綴的動態鏈接庫文件,實現方法很簡單,只需在注冊表中加入以下信息(示例):
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINESOFTWAREAutodeskAutoCADR16.2ACAD-4001:804ApplicationsLubanRen]
"LOADCTRLS"=dword:00000002
"LOADER"="D:\LubanRen Soft\魯班人工具箱\LubanRen.arx"
說明:在Applications項下創建一個以自己程序名命名的新項(如:LubanRen),然后在此新項下創建兩個新鍵:"LOADCTRLS"和"LOADER"。它們一個是控制程序隨CAD加載的方式,另一個是告訴CAD所要加載的程序的路徑。
托管的ARX程序的加載
托管的ARX程序是指由.net程序(C#,C++.net或VB.net)編譯的以.dll為后綴的動態鏈接庫文件,這種程序的加載和非托管的程序加載類似,在注冊表中加入以下信息:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINESOFTWAREAutodeskAutoCADR16.2ACAD-4001:804ApplicationsLubanRen]
"LOADCTRLS"=dword:00000002
"LOADER"="D:\LubanRen Soft\魯班人工具箱\LubanRen.dll"
"MANAGED"=dword:00000001
說明:和非托管的程序相比,只要多創建一個“MANAGED”鍵,并設為Ox01,告訴CAD這是托管程序即可。
有興趣的朋友,試試吧,enjoy it...
-------------------------
附注:注冊表鍵值"LoADCTRLS"控制說明,控制ARX程序的加載方式(上例中使用的是Ox02隨CAD啟動一起加載)
0x01:Load the application upon detection of proxy object.
當代理對像被控知時另載相應ARX程序.
0x02:Load the application upon AutoCAD startup.
當AutoCAD啟動時加載相應ARX程序.
0x04:Load the application upon invocation of a command.
當輸入命令時加載相應ARX程序.
0x08:Load the application upon request by the user or another application.
當有用戶或別的程序請求時加載相應ARX程序.
0x10:Do not load the application.
從不加載該應用程序.
0x20:Load the application transparently.
顯式加載該應該程序.(不知該項譯法是否有誤)
相關文章
- 2021-08-01Visual LISP程序設計(AutoCAD 2006)PDF下載
- 2021-07-30AutoCAD程序設計魔法書 [AutoLISP DCL基礎篇]PDF下載
- 2021-07-24AutoCAD 機械制圖方法與實例 [王勻,陸廣華,許楨英 主編]
- 2020-12-22AutoCAD 2000 ARX二次開發實例精粹PDF下載
- 2016-02-19AutoCAD2005建筑制圖:別墅整套圖紙繪制方法與技巧
- 2016-01-27CAD字體大全1468種下載及安裝方法
- 2014-03-04中山市朗晴軒啟動區景觀設計施工圖CAD圖紙下載
- 2013-02-22鍵槽尺寸查詢程序 不用安裝可直接用
- 2013-02-22螺旋葉片展開圖精確畫法
- 2012-05-13CAD2005安裝方法與注冊教程詳細圖解