Đến nội dung


Hình ảnh
- - - - -

[Yêu cầu]Tự động load .DCL khi dùng lisp


  • Please log in to reply
13 replies to this topic

#1 amateurday

amateurday

    biết lệnh break

  • Members
  • PipPipPipPip
  • 228 Bài viết
Điểm đánh giá: 4 (bình thường)

Đã gửi 09 December 2011 - 02:44 PM

Em có vấn đề là khi đang mở rất nhiều bản vẽ, muốn dùng lisp chứa file .dcl, nhưng copy vào Support rồi tắt đi mở lại thì bất tiện quá. Vậy có cách nào load trực tiếp không các bác???
  • 0

#2 ketxu

ketxu

    Copier - Paster - Editor

  • Moderator
  • PipPipPipPipPipPipPip
  • 5685 Bài viết
Điểm đánh giá: 2606 (tuyệt vời)

Đã gửi 09 December 2011 - 02:47 PM

File DCL copy vào support là được, k phải tắt đi mở lại. Nó là load trực tiếp chứ còn gián tiếp nào nữa
  • 1

Thành viên nhóm CadMagic.
Mời bạn ghé thăm facebook nhóm - Page viết lisp theo yêu cầu  :
CAD MAGIC


#3 amateurday

amateurday

    biết lệnh break

  • Members
  • PipPipPipPip
  • 228 Bài viết
Điểm đánh giá: 4 (bình thường)

Đã gửi 09 December 2011 - 03:54 PM

Thanks bác, thế có cách nào tích hợp thành 1 file hoặc tự động load mà không cần phải copy vào support không bác. Mỗi lần chuyển máy là em lại hay quên copy lắm.
  • 0

#4 ketxu

ketxu

    Copier - Paster - Editor

  • Moderator
  • PipPipPipPipPipPipPip
  • 5685 Bài viết
Điểm đánh giá: 2606 (tuyệt vời)

Đã gửi 09 December 2011 - 04:18 PM

Dùng Vlide -> Make Application để tạo thành file vlx để có thể mang đi mọi nơi, hoặc viết code tự động add support tại vị trí file DCL, hoặc viết code tạo file DCL tạm ở vị trí cố định bạn ạ :)
  • 0

Thành viên nhóm CadMagic.
Mời bạn ghé thăm facebook nhóm - Page viết lisp theo yêu cầu  :
CAD MAGIC


#5 amateurday

amateurday

    biết lệnh break

  • Members
  • PipPipPipPip
  • 228 Bài viết
Điểm đánh giá: 4 (bình thường)

Đã gửi 09 December 2011 - 04:37 PM

Bác cho em hỏi code nào để lấy được đường dẫn để load file dcl nằm cùng thư mục với lsp được không???
  • 0

#6 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5454 Bài viết
Điểm đánh giá: 2626 (tuyệt vời)

Đã gửi 09 December 2011 - 04:54 PM

Bác cho em hỏi code nào để lấy được đường dẫn để load file dcl nằm cùng thư mục với lsp được không???


Nếu Win7, Vista

(defun LAST_LOAD1()
(setq path (vl-registry-read (strcat "HKEY_CURRENT_USER\\" (vlax-product-key) "\\Profiles\\" (vla-get-activeprofile (vla-get-profiles (vla-get-preferences (vlax-get-acad-object)))) "\\Dialogs\\Appload") "MainDialog"))
(if path (setq path (substr path 1 (- (strlen path) 1)))))
Nếu Win XP, 95, 98

(defun LAST_LOAD2( / K)
(setq K (strcat "HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\" "CurrentVersion\\Explorer\\ComDlg32\\OpenSaveMRU\\*"))
(setq path (vl-registry-read K (substr (vl-registry-read K "MRUList") 1 1))))
Bạn test lại thử đúng không nhé!
  • 1

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.


#7 amateurday

amateurday

    biết lệnh break

  • Members
  • PipPipPipPip
  • 228 Bài viết
Điểm đánh giá: 4 (bình thường)

Đã gửi 09 December 2011 - 05:19 PM

Cái này dùng để lấy đường dẫn vừa mới load file lisp, không lấy được đường dẫn chứa file lisp thực hiện lệnh bác nhỉ. Thế này thì phải chuyển qua vlx rồi. Thanks các bác nhiều.
  • 0

#8 ketxu

ketxu

    Copier - Paster - Editor

  • Moderator
  • PipPipPipPipPipPipPip
  • 5685 Bài viết
Điểm đánh giá: 2606 (tuyệt vời)

Đã gửi 09 December 2011 - 05:37 PM

Cái này dùng để lấy đường dẫn vừa mới load file lisp, không lấy được đường dẫn chứa file lisp thực hiện lệnh bác nhỉ. Thế này thì phải chuyển qua vlx rồi. Thanks các bác nhiều.


:)) Kết hợp với các hàm add support path trên 4room có post rồi đó. Khi file lisp được load thì nó add thêm vô, và đương nhiên như thế file DCL nằm cùng vị trí sẽ được CAD ngó tới. Bạn cũng phải nhớ là cách này chỉ có tác dụng khi file được load bằng Lệnh AP ,
  • 0

Thành viên nhóm CadMagic.
Mời bạn ghé thăm facebook nhóm - Page viết lisp theo yêu cầu  :
CAD MAGIC


#9 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5454 Bài viết
Điểm đánh giá: 2626 (tuyệt vời)

Đã gửi 09 December 2011 - 10:55 PM

Cái này dùng để lấy đường dẫn vừa mới load file lisp, không lấy được đường dẫn chứa file lisp thực hiện lệnh bác nhỉ. Thế này thì phải chuyển qua vlx rồi. Thanks các bác nhiều.


"không lấy được đường dẫn chứa file lisp thực hiện lệnh". Câu này tôi không hiểu. Tôi nghĩ không cần phải chuyển qua vlx vẫn có thể load được.
  • 0

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.


#10 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

  • Moderator
  • PipPipPipPipPipPipPip
  • 4296 Bài viết
Điểm đánh giá: 3804 (đỉnh cao)

Đã gửi 10 December 2011 - 08:30 AM


"không lấy được đường dẫn chứa file lisp thực hiện lệnh". Câu này tôi không hiểu. Tôi nghĩ không cần phải chuyển qua vlx vẫn có thể load được.

Mình nghĩ ý của bạn amateur là : các file Lisp đã được Load lên rồi. Giờ muốn tìm file Lisp có chứa lệnh đó ở đâu??
  • 0

#11 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5454 Bài viết
Điểm đánh giá: 2626 (tuyệt vời)

Đã gửi 10 December 2011 - 09:20 AM

Mình nghĩ ý của bạn amateur là : các file Lisp đã được Load lên rồi. Giờ muốn tìm file Lisp có chứa lệnh đó ở đâu??


Chắc không phải như ý bác đâu. Bởi câu hỏi nguyên thuỷ của bạn ấy là:
Bác cho em hỏi code nào để lấy được đường dẫn để load file dcl nằm cùng thư mục với lsp được không???
Tôi nghĩ, với câu hỏi này và với code lấy path của file vừa load mà tôi post ở trên thì vấn đề này giải quyết được rồi. Chỉ cần viết thêm 1 đoạn code nữa là load được tất cả file nằm cùng thư mục với 1 file lisp và được load. Nhưng bạn ấy nói không phải vậy, thành ra tôi cũng không hiểu ý bạn ấy là sao bác à.
  • 0

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.


#12 amateurday

amateurday

    biết lệnh break

  • Members
  • PipPipPipPip
  • 228 Bài viết
Điểm đánh giá: 4 (bình thường)

Đã gửi 10 December 2011 - 10:02 AM

Vâng, cách của bác Doan Van Ha cũng được, đó cũng là 1 cách, thêm 1 chút nữa thì OK hơn.
Ý bác Tue_NV đúng ý em rồi đó, em tìm rồi nhưng hình như là không làm được. Hình như giới hạn của lisp là ở đây thì phải.!!!
  • 0

#13 ketxu

ketxu

    Copier - Paster - Editor

  • Moderator
  • PipPipPipPipPipPipPip
  • 5685 Bài viết
Điểm đánh giá: 2606 (tuyệt vời)

Đã gửi 10 December 2011 - 10:06 AM

Vâng, ý bác Tue_NV đúng ý em rồi đó, em tìm rồi nhưng hình như là không làm được. Hình như giới hạn của lisp là ở đây thì phải.!!!

:blush:
Không phù hợp với việc giải quyết yêu cầu của bạn
  • 0

Thành viên nhóm CadMagic.
Mời bạn ghé thăm facebook nhóm - Page viết lisp theo yêu cầu  :
CAD MAGIC


#14 amateurday

amateurday

    biết lệnh break

  • Members
  • PipPipPipPip
  • 228 Bài viết
Điểm đánh giá: 4 (bình thường)

Đã gửi 10 December 2011 - 10:13 AM

Bác ketxu nói quá rồi, em không thạo về lisp, em cũng tìm cái này nhưng chưa tìm ra, em cũng nghe nói lisp có một số giới hạn, nên em nghĩ thế thôi. Bác thông cảm em nhé!!!
  • 0