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

[ nhờ giúp ] hướng dẫn add file *.dll

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

e có môt số file của net và chỉ biết dùng lệnh NETLOAD để gọi nó ra dùng , rất mất công , mỗi lần mở cad lại phải gọi bằng lệnh đó .

các bác có thể hướng dẫn e add cứng nó như kiểu add lisp để dùng luôn ko phải gọi lại mỗi lần sau khi mở cad ko ?

chân thành cảm ơn các bác !

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

e có môt số file của net và chỉ biết dùng lệnh NETLOAD để gọi nó ra dùng , rất mất công , mỗi lần mở cad lại phải gọi bằng lệnh đó .

các bác có thể hướng dẫn e add cứng nó như kiểu add lisp để dùng luôn ko phải gọi lại mỗi lần sau khi mở cad ko ?

chân thành cảm ơn các bác !

Mình thường làm thế này, có thể load *.dll và thay đổi lệnh XDIT(trong dll) thành XD

 

 

(if (setq fil (findfile "C:\\XDIT\\XDIT.dll")) (command "_.netLoad" fil) )
(defun C:XD()
(command "netrun" "XDIT")
)

  • 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

cảm ơn bác , thế e muốn thêm một số file nữa thì phải làm sao bác nhỉ , đây chỉ là load 1 file , còn load nhiều file thì phải làm sao bác ?

bác hướng dẫn giúp e tí . e đã làm dc với 1 file , bác hướng dẫn giúp e tí , e hơi gà về líp

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

Thử chép tất cả *.dll vào 1 thư mục rồi dùng lisp này xem sao (cad tôi đang có vấn đề nên chưa test được).

(defun load-dll (path)
(foreach f (apply
  (function append)
  (mapcar (function (lambda (x) (vl-directory-files path x 1))) '("*.DLL")))
 (command "_.netLoad" (strcat path "\\" f))))
;EX: (load-dll "D:\Test")

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

Như thế này bạn

(if (setq fil (findfile "C:\\XDIT\\XDIT1.dll")) (command "_.netLoad" fil) )
(if (setq fil (findfile "C:\\XDIT\\XDIT2.dll")) (command "_.netLoad" fil) )

cảm ơn bác , thế e muốn thêm một số file nữa thì phải làm sao bác nhỉ , đây chỉ là load 1 file , còn load nhiều file thì phải làm sao bác ?

bác hướng dẫn giúp e tí . e đã làm dc với 1 file , bác hướng dẫn giúp e tí , e hơi gà về líp

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

Thử chép tất cả *.dll vào 1 thư mục rồi dùng lisp này xem sao (cad tôi đang có vấn đề nên chưa test được).

 

cái này dùng lệnh gì bác nhỉ hay là tải líp về rồi load nó lên là nó tự động phải ko bác .

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

Như thế này bạn

có phải như thế này o bác

(if (setq fil (findfile "C:\\XDIT\\XDIT1.dll")) (command "_.netLoad" fil) )
(if (setq fil (findfile "C:\\XDIT\\XDIT2.dll")) (command "_.netLoad" fil) )
(defun C:XD1()
(command "netrun" "XDIT1")
)
(defun C:XD2()
(command "netrun" "XDIT2")
)

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

Load tất cả file DLL trong 1 thư mục:

(defun C:DLL()
(setq path (vl-filename-directory (getfiled "Chon 1 file DLL bat ky trong thu muc" "" "dll" 2)))
(foreach f (apply
  (function append)
  (mapcar (function (lambda (x) (vl-directory-files path x 1))) '("*.DLL")))
 (command "_.netLoad" (strcat path "\\" f))))

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

Load tất cả file DLL trong 1 thư mục:

 

bác xem thử nó báo Command: nil

với lại cái này là nó load lên chứ ko add dc ( có thể e sai ) vì e đã thử .

2 là load lên nó vẫn phải đánh lệnh 1 lần nữa , bác có cách nào đánh lệnh của dll để thực thi luôn ko phải qua bước load ko bác 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

Muốn autoload khi mở cad thì bạn làm như sau:

1). Chép toàn bộ *.dll vào 1 thư mục, ví dụ đó là "D:\\File_DLL".

2). Add lisp này vào contents:

(defun load-dll (path)
(foreach f (apply (function append) (mapcar (function (lambda (x) (vl-directory-files path x 1))) '("*.DLL")))
 (command "_.netLoad" (strcat path "\\" f))))
(load-dll "D:\\File_DLL")	;Edit folder o dong nay!!!

  • 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
Vào lúc 9/9/2012 tại 07:46, Doan Van Ha đã nói:

Muốn autoload khi mở cad thì bạn làm như sau:

1). Chép toàn bộ *.dll vào 1 thư mục, ví dụ đó là "D:\\File_DLL".

2). Add lisp này vào contents:

 

  • cadvietlisp.lsp
    lisp help
  •  

(defun load-dll (path)
(foreach f (apply (function append) (mapcar (function (lambda (x) (vl-directory-files path x 1))) '("*.DLL")))
 (command "_.netLoad" (strcat path "\\" f))))
(load-dll "")	;Edit folder o dong nay!!!
 

 

 image.thumb.png.6e357ad067ac673d99d3227c8fc6eda8.pngimage.png.817176ada24424768ac1e6137a59c20b.png

e làm theo code của bác mà auto load vẫn lỗi nhỉ , bác giúp e với!

 

1.png

image.png

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  

×