VUVUZELA
-
Số lượng nội dung
210 -
Đã tham gia
-
Lần ghé thăm cuối
-
Ngày trúng
4
Bài đăng được đăng bởi VUVUZELA
-
-
Mình cũng đang nghiên cứu cách mã hoá hay nhất
Tại thấy 1 điều lạ là trên forum là ai cũng mã hoá bằng *.vlx để bảo mật
Riêng chỉ có bác cao thủ này là xài *.fas (nên chắc chắn có cái hay) mà thôi nên mới thắc mắc đặt dấu hỏi vậy
Chứ mình không thích hack của ng khác và cũng như bác ketxu đã nói là phát triển ý tưởng của mình nhanh hơn dò code
Vì khi tự mã hoá *.vlx (hoặc *.fas) bằng các p2 thông thường của Vlide của mình rồi tự thử decompiler thì thấy ... :wub:
Nên quá hãi vì vậy muốn học hỏi kinh nghiệm và mình mới phát hiện ra cách mã hoá hay nhất bằng cách kết hợp giữa mã hoá file *.fas như trên và các file hộp thoại *.dcl ==> *.vlx chống decompiler rất tuyệt vời.
Vì vậy muốn học hỏi và trao đổi thêm vậy thôi
-
hình như trong nova không hiểu lệnh in bạn àh, mình load ra bảng và thử xả block lẫn rectang mà khi preview no ra trắng tinh, hay plot thì không thấy in được, cad 2007 thi vẵn ok, load vào nova thi không được :-(
Có thể là do trong Nova thì tỷ lệ bản vẽ là 1/1000 (không phải là tỷ lệ 1/1) nên rất có thể trong thuật toán của bạn í có chút nhầm lẫn khi định dạng tỷ lệ in không chính xác (nhỏ quá so với bản vẽ A3) nên bạn có thể thấy toàn là trắng tinh vậy thôi
:rolleyes:
- 1
-
Đọc hoài không hiểu ý bác. Ý bác là có nhiều định dạng fas khác nhau chăng?
và như thế sẽ có thể tạo ra 2 file fas có cấu trúc hoàn toàn khác nhau từ cùng 1 file nguồn là LSP?
Còn cách tạo ra file fas thì trước đến giờ mình chỉ biết 2 cách: Make application cùng với VLX và Make project fas từ Project. và cả 2 cách đều fải sử dụng Vlide.
Có 1 vài phần mềm (chắc bác cũng biết rồi) có thể chuyển đổi VLX thành fas. có thể coi là cách thứ 3 cũng được.
Ý mình muốn là bảo mật các file *.lsp 1 cách hiệu quả nhất
Ngày xưa thằng AutoCad R14 có sử dụng Vlide có tính năng dịch từ *.lsp sang *.arx (rất hay) nhưng không tương thích với các modul AutoCad 2004 trở lên. Còn Vlide bây giờ chỉ cho phép dịch *.lsp sang *.vlx (hoặc *.fas) mà độ bảo mật thế nào thì bác biết rồi
Lang thang trên CadViêt.com tìm phương án bảo mật tối ưu thì thấy có file định dạng *.fas
http://www.cadviet.com/forum/index.php?showtopic=9110
có độ bảo mật tốt (chống decompiler hiệu quả) mà không biết tác giả xài chương trình nào cả
Nên mình muốn học hỏi thêm
Mong các bác chỉ giáo
-
Anh có thể giải thích chi tiết hơn về vlisp-compile đưọc không?
Em ngu quá mới nghe lần đầu. Thanks!
Bạn thử xem đoạn mã hóa từ file *.lsp sang *.fas nhanh chóng này nhé
(defun c:cltf (/ lsp fas lst)
(if (setq lsp (getfiled "Select a file in source folder" "" "lsp" 2))
(progn
(setq lsp (vl-filename-directory lsp))
(if (setq fas (getfiled "Select a file in destination folder" (strcat lsp "\\") "" 2))
(setq fas (vl-filename-directory fas))
);if
);progn
);if
(if (and lsp fas)
(progn
(setq lst (vl-directory-files lsp "*.lsp" 1))
(foreach x lst
(vlisp-compile 'st (strcat lsp x) (strcat fas (substr x 1 ( - (strlen x) 4)) ".fas"))
);foreach
);progn
);if
(princ)
);defun
[/cođe]
- 1
-
Việc không có file mẫu mà viết được lisp giúp bạn cũng có thể gọi là điều không tưởng. Không biết civil với CAD khác nhau k nhỉ :rolleyes:
Civil dùng trong thiết kế hạ tầng
Nó xài toàn ACAD_PROXY_ENTITY thôi
AutoLisp thì bó tay rồi
:rolleyes: :rolleyes:
-
Em thấy khi tạo vlx có tạo ra 1 file .vlx và 1 file .fas mà anh.
Cái này bảo mật kém lắm
Mình thử rồi
:angry:
-
Chào các cao thủ trong diễn đàn
Cho mình hỏi 1 tý là có chương trình nào mã hoá từ file *.lsp thành file *.fas hay không vậy?
Đặc biệt là không xài câu lệnh 'vlisp-compile' để mã hoá
Ai biết chỉ giùm với
Cám ơn nhiều
- 1
-
Không biết mình có nhầm hay không, nhưng hình như bạn đã hiểu nhầm ý của nataca
Vuvuzela: Mình cũng không tìm thấy đoạn code đóng 1 thư mục trong link bạn gửi.
Ban đầu thì ý tưởng của bọn mình là kiểm tra xem window có đang mở thư mục chứa file bản vẽ hiện hành hay không? nếu có thì khi gõ lệnh QE sẽ không mở thêm nữa bởi sau khi dùng lệnh này 1 thời gian sẽ nảy sinh tính lười, không chịu đưa con chuột xuống start bar để mở thử mục có sẵn lên, vài lần QE là start bar đã chật kín. các bạn thử giải quyết theo hướng này xem thế nào.
PS: nếu dùng (startapp "explorer.exe"(getvar "DWGPREFIX")) thì không fải lăn tăn gì về vấn đề này.
Vô mục này theo dõi tiếp nhé
http://www.cadtutor.net/forum/showthread.php?58129-How-to-open-and-close-a-Folder-by-visual-lisp
:rolleyes:
-
-> Cách này rất ổn. Nó dùng "Shell.Application" để liên kết với windows.
- Tiếp theo là vấn đề thứ 2 của topic: Mở ra được rồi nhưng làm cách nào để đóng một thư mục đang mở hoặc để không mở trùng một thư mục đã mở trước. Mình thử tìm hiểu nhưng chưa nghĩ ra cách. Mọi người thử nghĩ tiếp xem sao. :)
Ban thu nghien cuu doan ma xem thu nhe
- 2
-
VBplot 2010
trong Lập trình khác
Cám ơn Bác đã quan tâm!
Vấn đề don các text đánh dấu thì em gộp chung với lại nút chọn đối tượng. Khi ấn nút chọn đối tượng thì chương trình sẽ xoá hết các text đánh dấu trước khi chọn đối tượng. Vì em không muốn phát sinh thêm nút nên làm như vậy. Bác có cao kiến gì để em sửa. Các text đó không ảnh hưởng gì đến lúc in vì nó nằm trong layer không cho in.
Bác chỉ cần tạo 1 TEXT xiên (= layer Defpoints, chiều cao chữ lớn) theo line màu xanh là được rồi (không cần vẽ thêm line cho rắc rối)
Người dùng PLOT xong có thể dùng lệnh :
1. Command : SSX (để lọc TEXT xieen có layer Defpoints)
2. Command : ERASE => select object : P => là nhanh nhất
-
Dầu sao đi nữa cũng nhỏ hơn.... đàn bà
Bác này có vợ rồi hay sao mà nói chí phải :
Đàn ông ... thì phải nhỏ hơn ... đàn bà ==> thì mới có truyền thuyết Âu Cơ Lạc Long Quân chứ nhảy
:D
:lol:
-
Đả đảo : ngày 8 tháng 3
Đả đảo
Đả đảo
-
Các kế đó em làm hết rồi Bác ạ. Vợ em nó khôn lắm Bắt bài hết
Thế thì bác dùng 1 trong 2 kế cuối cừng sau đây thôi :
1. Ve sầu thoát xác : Đề nghị Công ty bố trí đi công tác xa hoặc đi làm đêm, thêm giờ trên công ty mà có thời gian nghiên cứu
2. Tẩu vi thượng sách (không phải xử bác bỏ vợ à nghen) : Bỏ luôn đam mê lập trình, tung các mã nguồn AutoLisp lên diễn đàn cho anh em nó nghiên cứu tiếp, mình chỉ việc down về mà xài cho nó khỏe bác ạ.
Cái gì nó cũng có 2 mặt bác ạ
Lấy vợ khôn cũng có cái sướng và cái khổ của nó
he he
:D
- 1
-
Thế nhưng vợ nào có hiểu mình. Thế mới phải khổ. Nhiều khi vợ còn bảo "anh chọn em hay anh chọn cái máy tính" thế có đau không.
Hehe
Đối với trường hợp này thì phải dùng chiến thuật khác bác ạ
Phải dùng Kế vu hồi của Tôn Vũ khi xưa đánh thắng quân Sở mà thôi
Kế này bác phải chọn phương pháp đi vòng kết hợp với ám thị vợ cho vợ hiểu :
- Lâu lâu nếu bác có đánh quả nào thì về đưa tiền cho vợ nói là "anh lập trình Lisp được chừng ấy" cho vợ nó mừng
- Vợ nó không cho xài máy tính thì dùng giấy bút ghi ra thuật toán (giả đò suy nghĩ cau có mặt mày vào làm như nghiêm trọng ấy). Vợ có đụng vào thì la làng to lên : trời ơi em làm mất của anh mất chục triệu rồi, làm mất biết bao nhiêu ý tưởng trong đầu của anh rồi, giời ơi là giời (vợ nó mà nhớ lại lúc bác đưa tiền như trên thì chắc nó cũng có cảm giác ân hận và tiếc nuối lắm)
- Đang xài máy tính mà nó biểu giữ con hoặc nhờ làm việc gì thì bác cứ làm bộ nhăn nhó, khó chịu càng nhiều vào càng tốt (nếu bác có đi rửa chén thì lựa mấy chén bể lỡ tay làm vở 1 vài cái xem) hoặc chọc cho đứa con khóc ré lên (đừng đánh em nó tội) ... thì bữa sau chắc nó không nhờ vả đâu nhỉ?
...
Xong rồi bác nhớ dỗ dành em nó : chở đi chơi, ăn nhà hàng, uống cà phê ... nhé
Không thì tối nó cho ra ghế salon nằm một mình thì nguy bác ạ.
:lol:
- 1
-
nova 4.01 gồm 2 module. 1 dùng cho cad14 và 1 dùng cho cad2000 (vào thư mục cài đặt của nó sẽ thấy các module này đuợc đóng gói riêng biệt)
ai cũng biết như vậy nhưng chẳng ai muốn dùng module dành cho cad2000 thì cũng fải có nguyên nhân sâu xa cậu ạ. mình có cái khoá cứng màu tím tím danh cho module cad2000 đây. bạn nào thích mình cho không :lol:
Nguyên sâu xa là gì thế cậu
Nó hay bị lỗi à ?
-
Cám ơn bạn, đây là file khi chuyển sang AUTOCAD. Bạn giúp mình với nhé
http://www.cadviet.com/upfiles/3/mat_bang_tinh_san_lap_topo_tuan.dwg
Cái này bạn cần chạy chương trình Nova hoặc Topo (trên mạng đầy)
Bấm lệnh : LTG (thành lập lưới tứ giác) cho Nova đọc các điểm PROXY đó (vì chỉ có thằng Nova mới hiểu các mã định dạng của nó thôi)
Sau đó điền và nối các diểm cao trình : CDT
nó sẽ ra text cao độ bạn cần
:rolleyes:
-
1. Type AIM2 at the AutoCAD command line, press the settings button.
>>> Mình gõ lệnh AIM2 ở dòng lệnh của Cad thì chương trình báo là không có lệnh này?
Nếu có thể bạn uninstal AutoCad R14 đi
Cài đặt AutoCad 2000 vô
Sau đó cài Nova-TDN 4.01 thì nó sẽ nhận diện được Nova chạy trên AutoCad 2000
Từ đó bạn zoom, pan ... thoải mái và nhẹ nhàng hơn
;)
-
Các bác thông cảm, sờ-băm 1 chút cho đỡ xì-chét.
"Keng thẻng quá trời ơi, muốn đi ngủ nhưng chẳng được, những ý tưởng dang dở, nếu không viết thì quên mất, muốn viết thì ..."
hề hề : "Con cá trong lờ đỏ hoe con mắt - Con cá ngòai lờ ngúc ngoắc muốn zô"
hihi
Ai mà lỡ dính vô AutoLisp là như dính thuốc ... rồi
Kinh Phật thường gọi là : "Nghiệp chướng, nghiệp chướng đấy thôi"
Vợ mà có quấy rồi khi đang viết thì cứ đọc thần chú : "Anh nghiên cứu kiếm tiền lo mẹ con em chứ ai "
...
:lol:
-
chào các bác!
Em mới học autolisp.Em đang vướng mắc trong bài toán:xác định 1 điểm xem có nằm trong đa giác kin hay không?nếu có thì xuất toạ độ điểm đó sang file txt.Mong các bác giúp đỡ
Bác cứ nghiên cứu đoạn Autolisp này thử nhé
;;======================================================================;; ;; DETERMINING IF A POINT LIES ON THE INTERIOR OF A POLYGON ;; ;;======================================================================;; (defun insidep (pt ent / big flag obj1 obj2 obj3 p1 p2 small) (vl-load-com) (if (and pt ent) (progn (setq obj1 (vlax-ename->vla-object (car ent))) (setq obj2 (car (vlax-invoke obj1 'Offset 0.001)) obj3 (car (vlax-invoke obj1 'Offset -0.001))) (if (> (vla-get-area obj2)(vla-get-area obj3)) (progn (set 'big obj2) (set 'small obj3)) (progn (set 'big obj3) (set 'small obj2))) (setq p1 (vlax-curve-getClosestPointTo big pt) p2 (vlax-curve-getClosestPointTo small pt)) (if (> (distance pt p1)(distance pt p2)) (setq flag T) (setq flag nil)) (mapcar (function (lambda (x) (progn (vla-delete x) (vlax-release-object x)))) (list big small)) ) ) flag ) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (defun @Inside (PIQ Object / ClosestPoint ClosestParam Sample Start End P1 P2 P a1 a2 Defl ) (setq Sample 0.2) (vl-load-com) (or (= (type @delta) 'SUBR) (defun @delta (a1 a2) (cond ((> a1 (+ a2 pi)) (+ a2 pi pi (- a1)) ) ((> a2 (+ a1 pi)) (- a2 a1 pi pi) ) (1 (- a2 a1)) ) ) ) (and (cond ((not Object) (prompt " No object provided.") ) ((= (type Object) 'VLA-Object)) ((= (type Object) 'Ename) (setq Object (vlax-ename->vla-object Object)) ) (1 (prompt " Improper object type.")) ) (or (and (< 1 (vl-list-length PIQ) 4) (vl-every 'numberp PIQ) ) (prompt " Improper point value.") ) (or (not (vl-catch-all-error-p (setq Start (vl-catch-all-apply 'vlax-curve-getStartPoint (list Object) ) ) ) ) (prompt " Object is not a curve.") ) (or (equal Start (vlax-curve-getendpoint Object) 1e-10) (prompt " Curve is not closed.") ) (setq P (trans PIQ 1 0)) ; PIQ in WCS (setq ClosestPoint (vlax-curve-getclosestpointto Object P) ; In WCS ) (not (equal P ClosestPoint 1e-10)) ; in WCS (setq ClosestParam (vlax-curve-getparamatpoint Object ClosestPoint)) (setq ClosestPoint (trans ClosestPoint 0 1)) ; convert to UCS (setq End (vlax-curve-getEndparam Object)) (setq P1 0.0 P2 Sample Defl 0.0 ) (setq a1 (angle PIQ (trans Start 0 1))) ; in UCS (while (<= P2 End) (setq P2 (min P2 End)) (if (< P1 ClosestParam P2) (setq a2 (angle PIQ ClosestPoint) Defl (+ Defl (@delta a1 a2)) a1 a2 ) ) (while (not (setq P (vlax-curve-getPointAtParam Object P2))) (setq P2 (+ P2 Sample)) ) (setq a2 (angle PIQ (trans P 0 1)) ; in UCS Defl (+ Defl (@delta a1 a2)) a1 a2 P1 P2 P2 (+ P2 Sample) ) ) (> (abs Defl) 4) ) ) ;;;;;;************* (defun C:ITest (/ Object P) (if (setq Object (car (entsel "\nSelect curve: "))) (while (setq P (getpoint "\nPoint: ")) (prin1 (@Inside P Object)) ) ) (princ) )
- 1
-
Nếu bạn đã dùng quen Nova thì trong Nova ko thể bốc được kl bao đất sét, vai địa. toàn làm bằng thủ công trên cad thôi. Bạn nên nghiên cứu về phần mềm mới VN road thì sẽ làm được các việc trên dễ dàng. Bữa này người ta chuyển qua dùng VN nhiều rùi. Chúc bạn thành công. Thiết kế được đường MN thì sợ gì đường đồng bằng.
VNRoad cũng có cái hay và cái dỡ
Nó ứng dụng công nghệ quản lý đới tượng theo kiểu PROXY nên rất khó lấy được các dữ liệu mở rông của nó để viết những phần mềm tiện ích nhỏ theo ý tưởng của người thiết kế
;)
-
Bác mở công ty tư vấn đê xong cho e làm đệ theo chân với :D
hihi
Em với bác mở công ty mà không có cái ô nào to to thì em với bác đứng giang nắng, đội mưa à
:rolleyes:
-
Quả là một công trình công phu. Đây cũng là những mảng thuộc lĩnh vực của mình. Hy vọng được trao đổi với VUVUZELA thêm.
Được biết bác cũng là cao thủ có nhiều phần mềm trong diễn đàn CadViet
Rất mong được học hỏi thêm nhiều điều ở bác
-
to VUVUZELA : Ngạc nhiên thật đấy!
Chúc bạn thành công !
Đa tạ, đa tạ
Bữa nào chắc phải thỉnh giáo thêm bác cái ObjectARX và cái Visual Basic
-
Thanks bạn.mặc dù không thuộc lĩnh vực của mình nhưng thấy đây là thành quả khá công phu và có tính liên kết cao.Chúc bạn thành công :)
P/S : Lúc trước đọc những 2pic Autolisp cách đây 2 năm,mình thấy có kha khá câu hỏi ngô nghê của Vuzu về lisp, không ngờ bạn đã nghiên cứu được 10 năm,quả là Danh nhân bất lộ tướng, thật đáng nể.Một lần nữa chúc bạn thành công
Từ hồi xưa đến giờ chỉ toàn gặp chê bai không à, nhưng mình lấy đó là động lực phát triển
Cám ơn bạn đã động viên rất nhiều
Có cách nào mã hoá file *lsp 2 *fas ko?
trong AutoLisp
Đã đăng · Trả lời báo cáo
hehe
Từ ngày xài vlide đến giờ lại không để ý cái tính năng quản lý Project của nó
Xài AutoCad R14 quen rồi nên cổ hủ thật, thật là "ếch ngồi đáy giếng", xấu hổ quá :D
Hay, đúng là từ ngày vào trang www.cadviet.com lại học được nhiều chiêu thức mới lạ, gặp nhiều "cao thủ" để mở mang được tầm mắt, thấy trời cao đất rộng thế nào
Chân thành cảm ơn các bác !