《cad如何制作工具箱》由會(huì)員分享,可在線閱讀,更多相關(guān)《cad如何制作工具箱(18頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、如何制作工具箱一、 制作菜單和工具條菜單和工具條有三種格式,分別是CUI、MNR、MNU,這三者區(qū)別請(qǐng)自行百度,我要講的是MNU格式。這種格式使用記事本即可以編寫,非常方便。下面是一個(gè)例子/一、菜單文件開始 *MENUGROUP=flytoday *POP1ID_H10BENHAI 用于學(xué)習(xí)ID_xd1_Button 高程三角網(wǎng)CCgcsw ID_xd2_Button 高程插點(diǎn)CCgccd*TOOLBARS*TB_CTT*用于學(xué)習(xí)ID1 _Toolbar(用于學(xué)習(xí), _Floating, _SHOW, 90, 110, 1)ID_gcsw _Button(高程三角網(wǎng), GCSW, GCSW)C
2、CgcswID_gccd _Button(高程插點(diǎn), GCCD, GCCD)CCgccd *ACCELERATORSF1_.REDRAW這個(gè)例子中/就是注釋的意思,后面寫一些說明,第二行就是本菜單的名稱,此例中是“flytoday”,“*POP1”就是菜單,一般簡單的程序使用一個(gè)菜單就行了。*TOOLBARS就是工具條的意思,知道這個(gè)框架后,大家只需要在里面添加自己需要的東西即可。如果要生成二級(jí)菜單,看下面的格式。也就是使用-來進(jìn)行分割,使用-繪圖及修改一&A來表示二給菜單的開始,繪圖及修改一&AID_xd1_Button 高程三角網(wǎng)CCgcsw ID_xd2_Button 高程插點(diǎn)CCgcc
3、dID_dg CNT 1)(setq CNT (- CNT 1)(setq CNT 1) ) (menucmd (strcat P (itoa CNT) =+flytoday.pop1) (princn菜單及工具條已成功加載,歡迎您再次使用! ) (setvar filedia pre_filedia) ) (prompt n菜單已加載!) ) (princ)(c:ldmu);卸載自定義菜單(defun c:ulmu (/ pre_filedia) (if (menugroup flytoday) (progn (setq pre_filedia (getvar filedia) (setva
4、r filedia 0) (vl-cmdf menuunload flytoday) (princn菜單及工具條已成功卸載,歡迎您再次使用! ) (setvar filedia pre_filedia) ) (prompt n未找到需要卸載的菜單!) ) (princ)五、 設(shè)置注冊(cè)過程一個(gè)程序,有一個(gè)注冊(cè)界面,會(huì)顯示這個(gè)軟件非常有價(jià)值,而且可以限制軟件的非正常使用。下面給個(gè)注冊(cè)人簡單例子,無DCL,非常適合簡單的注冊(cè)過程,但需要注意的是,此程序是明碼(請(qǐng)百度明碼、非明碼),很容易破解。使用方法見作者的說明。http:/ soly2006 調(diào)試成功!簡單加密,目的是要用也要問別人,不問也要花些
5、時(shí)間來破;理解所有為代碼付出的優(yōu)秀人才!;如果看到有你代碼的影子,請(qǐng)不要見怪。;正式版應(yīng)增加:;1、補(bǔ)齊已注冊(cè)碼與申請(qǐng)碼一致;2、求余要每機(jī)不同;3、沒必要用DCL,又不是經(jīng)常用到,何必考慮人機(jī)界面;4、用法:在命令后面加上(rere)就是。;5、再奉勸你,多用中文;-(defun rere( / 已注冊(cè)碼 注冊(cè)碼 輸入注冊(cè)碼) (setq 已注冊(cè)碼 (vl-registry-read HKEY_CURRENT_USERSoftwaresolycad SN) (setq cpusn (cpu) (setq 注冊(cè)碼 (strcat (加密字串 (substr cpusn 2 4) ) (加密字串
6、 (substr cpusn 7 4) ) (princ (strcat 你要給別人的注冊(cè)碼為: 注冊(cè)碼 n) ;顯示已注冊(cè)碼 便于調(diào)試,給程序不要有這條啊, (if (/= 已注冊(cè)碼 注冊(cè)碼) (progn (setq 已注冊(cè)碼 注冊(cè)碼) (princ (strcat 申請(qǐng)碼為: nn cpusn) (setq 輸入注冊(cè)碼 (getstring n請(qǐng)輸入已注冊(cè)碼:) (if (/= 已注冊(cè)碼 輸入注冊(cè)碼) (progn (alert 請(qǐng)輸入正確的已注冊(cè)碼) (exit) ) (progn (vl-registry-write HKEY_CURRENT_USERSoftwaresolycad
7、SN 輸入注冊(cè)碼) (princ 注冊(cè)成功!) ) ) ) (alert n 已注冊(cè)) )(princ);-CPU-;不明出處(defun CPU (/ Vlist VObj lcom lExecQuery item) (vl-load-com) (setq Vlist () (if (setq VObj (vlax-create-object wbemscripting.swbemlocator) (progn (SETQ lcom (VLAX-INVOKE VObj ConnectServer . rootcimv2 128 nil ) ;_ 結(jié)束VLAX-INVOKE ) ;_ 結(jié)束SE
8、TQ (setq lExecQuery (vlax-invoke lcom ExecQuery ;Select * From Win32_BIOS Select * from Win32_Processor ) ;_ 結(jié)束vlax-invoke ) ;_ 結(jié)束setq (vlax-for item lExecQuery (setq Vlist (vlax-get item ProcessorId) ;_ 結(jié)束cons ) ;_ 結(jié)束setq ) ;_ 結(jié)束vlax-for (vlax-release-object lExecQuery) (vlax-release-object lcom) (
9、vlax-release-object Vobj) ) ) Vlist); -字串分解-(defun 字串分解 (字串 / i k s lst) (setq i 0 k (chr 160) (while (/= (setq s (substr 字串 (setq i (1+ i) 1) (if ( s k) (setq lst (cons s lst) (setq lst (cons (substr 字串 i 2) lst) i (1+ i) ) )(reverse lst) ;-加密字串-(defun 加密字串(字串 / 字串表 串) (setq 串 字串) (setq 字串表 (字串分解 串
10、) (setq 串 (apply strcat (mapcar (lambda (X) (加密字符 X) 字串表);-加密字符-;精華所在:密=字符+字符對(duì)5求余(defun 加密字符(字符 )(chr (+ (ascii 字符) (rem (ascii 字符) 5)六、 打包成EXE我們的程序使用的是LSP文件格式,用戶可以直接打開,我們最好把對(duì)話框,LSP文件打包成VLX格式,安全性很好。輸入“Vlide”命令或都通過菜單進(jìn)行Visual LISP編程環(huán)境。單擊完成就可以打包成VLX文件,將此文件放入事先準(zhǔn)備好的文件夾中。這里面一個(gè)程序文件,兩個(gè)菜單文件,一個(gè)工具條的資源DLL,A、B是秋楓大俠程序打包時(shí)使用的兩個(gè)圖片,不是必須的。秋楓大俠的程序如何使用,請(qǐng)見置頂貼http:/ 自定義程序圖標(biāo)使用Iconworkshop-制作ICO圖標(biāo).exe和PS可以很方便地制作出ICO文件,如果大家不會(huì)制作的話,可以百度一下下載現(xiàn)成的ICO圖標(biāo)。將所有素材弄好,放在文件夾中。注意注釋里面的文件內(nèi)容。選中文件夾中所有文件,點(diǎn)右鍵,此時(shí)生成的圖標(biāo)就是我們自己定義的啦