Chuyển đến nội dung
Diễn đàn CADViet
Đăng nhập để thực hiện theo  
linhoreka

Khoá bản vẽ bằng block non-explodable

Các bài được khuyến nghị

Trước tiên tớ đưa ra file đã khóa để xem bạn nào có cách mở không: Locked Drawing

 

Đây là file dvb có macro để khóa: Drawing Lock.dvb

+ Alt + F8 chạy macro DrawingLock

+ Chọn đối tượng cần khóa

+ Enter ---> Khóa

 

Để cho chắc ăn, trước khi khóa, ta cứ Cắt vụn bản vẽ để không chỉnh sửa được nữa :undecided: cho vui. Nhưng nhớ là cắt vụn khoảng dưới 5 mảnh là được rồi. Cắt vụn ra 1000 mảnh bản vẽ tăng dung lượng gấp 1000 đấy :wub:

 

Đính chính: không phải là khóa mà bị block không edit được :)

 

Chỉnh sửa ngày 05-01-2011:

Chủ đề này được tiếp nối ở đây: Khóa bản vẽ. Công cụ khóa bản vẽ đã được phát triển khá hoàn hảo. Mời các bạn sang xem !

  • Vote tăng 1

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
Mình chạy file thì bị lỗi, mong ban xen lại giúp

Tớ sử dụng bình thường trong AutoCAD 2007, 2008.

Bạn dùng CAD gì ? Lỗi thế nào bạn post thông báo lỗi lên được không ? Lỗi trong file Drawing hay file Dvb ?

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
Bạn ơi,cái file đầu có kèm khóa đâu^^

Đính chính: Khóa là ở file dvb dưới, còn file đầu là file kết quả chạy thử, đã bị khóa

(Mình viết lách văn vẻ cũng cẩn thận không đến nỗi mà sao mọi người không hiểu nhỉ :undecided:)

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Ớ không,mình hiểu ngay là như thế,thì bạn bảo file đấy đã khóa r,n mình chạy thử thì vẫn bình thường,move copy..k bị khóa j cả,chỉ thấy bị băm ra.Hay nó chặn chức năng j mà mình chưa tést nhỉ

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
Ớ không,mình hiểu ngay là như thế,thì bạn bảo file đấy đã khóa r,n mình chạy thử thì vẫn bình thường,move copy..k bị khóa j cả,chỉ thấy bị băm ra.Hay nó chặn chức năng j mà mình chưa tést nhỉ

Đính chính: Không phải bị khóa mà bị block không edit được.

Còn copy, move ... thì làm sao khóa được AutoCAD ?

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

À quả thật vậy.Hay nhỉ ^^ Tks bạn.Mình thấy bạn luôn tìm tòi các ý kiến mới :undecided:

PS : mặc dù vậy,file đã khóa vẫn có thể dùng Flatten trong bộ Express để xử nó :">

PS2 : Chỉ nguyên việc băm bản vẽ ra đã khiến đối tác khó ở lắm r ^^

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
À quả thật vậy.Hay nhỉ ^^ Tks bạn.Mình thấy bạn luôn tìm tòi các ý kiến mới :wub:

PS : mặc dù vậy,file đã khóa vẫn có thể dùng Flatten trong bộ Express để xử nó :">

PS2 : Chỉ nguyên việc băm bản vẽ ra đã khiến đối tác khó ở lắm r ^^

1. File tớ gứi có bị băm đâu

2. Tớ thử rồi. Flatten không xử lý được những block này. Hay bạn có bộ Express mới (2011 ?) xử lý được non-explodable block ?

 

:undecided: Vẫn chờ ai đó có cách nào tháo được những hình vẽ bị block này (mà không dùng VBA ...) để biết chương trình có hiệu quả hay không

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

PS3 Mình đã thử Flatten của Express 07,xử lý được n thời gian rất rất lâu.Nếu dùng thì chọn vài block 1 thôi :undecided:

P/S 4 : Có thể dùng đoạn lisp xinh tươi sau để enable thuộc tính Explodeable của các block,sau đó quét 1 phát mà x thoải mái :"> Nhanh mà mượt hơn phương án trước rất rất nhiều :">

(defun c:fix (/ adoc)
 (vl-load-com)
 (vla-startundomark
   (setq adoc (vla-get-activedocument (vlax-get-acad-object)))
   ) ;_ end of vla-startundomark
 (vlax-for blk_def (vla-get-blocks adoc)
   (if (and (equal (vla-get-isxref blk_def) :vlax-false)
            (equal (vla-get-islayout blk_def) :vlax-false)
            ) ;_ end of and
     (vl-catch-all-apply '(lambda () (vla-put-explodable blk_def :vlax-true)))
     ) ;_ end of if
   ) ;_ end of vlax-for
 (vla-endundomark adoc)
 (princ)
 ) ;_ end of defun

  • Vote tăng 2

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

:wub: không chơi với những người bẻ khóa bằng VBA, Visual Lisp mà ! Đề nghị ketxu xóa đoạn code kia đi, lưu hành nội bộ, anh em biết với nhau thôi :undecided:

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Ấy, lại như cái bạn j hồi trước băm ra r k lưu bản gốc ấy thì a e đến khổ ^^.N nói chung cách này là ổn đó.Mong bạn tiếp tục đào xới các phương án để mình mót :">

PS : về vấn đề chống trộm,mình đang nghĩ đến hook đọc Machine HDD Number gắn kèm bản vẽ,mang sang máy khác check k phải máy mình -> tự động xóa hết ^^

P/S phụ : trên này k biết tuổi tác thế nào,nhiều khi xưng hô ngài ngại ^^

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

:undecided: ketxu lấy cái gì đọc HDD Number và xóa bản vẽ ? Nếu lấy Lisp hay VBA thì người ta chỉ cần disable Lisp hay VBA đi là xong.

Ai biết về lập trình ARX để tạo đối tượng mới không nhỉ ? Đối tượng mới tạo ra có explode được không ? Nếu explode được hết thì bài toán khóa bản vẽ = pó tay với người biết lập trình rồi

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Mình đã viết và dùng VBA,n khóa kiểu này thì k khác như khóa cái cửa ở giữa hàng rào hoa.Mình vẫn đang thắc mắc tại sao máy mình chẳng có thông báo j khi bản vẽ kèm mã VBA cả,nên khi mọi người nói disable VBA mình cũng hok hiểu ntn ^^

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Tạo một tài khoản hoặc đăng nhập để nhận xét

Bạn cần phải là một thành viên để lại một bình luận

Tạo tài khoản

Đăng ký một tài khoản mới trong cộng đồng của chúng tôi. Điều đó dễ mà.

Đăng ký tài khoản mới

Đăng nhập

Bạn có sẵn sàng để tạo một tài khoản ? Đăng nhập tại đây.

Đăng nhập ngay
Đăng nhập để thực hiện theo  

×