Cấu trúc thư mục mặc định cho các file chương trình và hỗ trợ được thiết kế nhằm sắp xếp chúng hiệu quả theo nhóm phù hợp.
Nếu cơ cấu file chương trình, hỗ trợ mặc định không đáp ứng nhu cầu, bạn có thể thay đổi nó. Tuy nhiên, một số ứng dụng tìm các tập tin nhất định ở vị trí cụ thể. Vì thế, bạn nên xác thực thay đổi không xung đột với yêu cầu của những ứng dụng đó. Nếu drive, thư mục không có đường dẫn đầy đủ, AutoCAD có thể xác định vị trí file trong các đường dẫn tìm kiếm thư viện của nó.
AutoCAD tham chiếu hồ sơ hệ điều hành của người dùng để nhận diện file cục bộ có tùy biến & di chuyển được lưu trữ. Truy cập vị trí những file này bằng cách sử dụng các biến hệ thống sau:
- LOCALROOTPREFIX - Chứa đường dẫn đầy đủ cho thư mục root nơi file tùy biến cục bộ được cài đặt.
- ROAMABLEROOTPREFIX - Chứa đường dẫn đầy đủ cho thư mục root nơi file tùy biến có thể di chuyển được cài đặt.
Bắt đầu bằng AutoCAD 2013 SP1 trên Windows & AutoCAD 2014 cho Mac, tải file lưu trữ acad.lsp và acaddoc.lsp cùng các file kế thừa chúng chỉ từ thư mục cài đặt mặc định của sản phẩm. Tùy theo cài đặt tham biến hệ thống SECURELOAD, tham biến TRUSTEDPATHS chỉ định các thư mục từ nơi những sản phẩm dựa trên AutoCAD có thể tải và chạy file chứa code. Ngoài ra, điều khiển tham biến hệ thống LEGACYCODESEARCH trong thư mục Start In sẽ được tìm kiếm trong file .exe.
Code sample AutoLISP sau xác định lệnh CUSTFILES và mở Windows Explorer hoặc File Explorer tại vị trí cài đặt file tùy biến có thể di chuyển.
Lưu ý: Lệnh SHELL chỉ có sẵn trên Windows và AutoLISP không hỗ trợ AutoCAD LT.
Đường dẫn tìm kiếm thư viện
Đường dẫn tìm kiếm thư viện chỉ định nơi chương trình tìm kiếm file khi bạn không có tên đường dẫn đầy đủ như sau:
- Thư mục Start In: Thư mục này được xác định bởi thuộc tính Start In của icon phím tắt trên desktop hoặc thư mục trong file được click đúp để mở (tham biến hệ thống STARTINFOLDER).
- Thư mục chứa file vẽ hiện tại (tham biến hệ thống DWGPREFIX).
- Thư mục tên dự án cho file tham chiếu ngoài như ảnh, xref hoặc lớp nền (tham biến hệ thống PROJECTNAME).
- Thư mục được liệt kê trong các đường dẫn Support File Search (tham biến hệ thống ACADPREFIX).
- Thư mục chứa file đã cài cho chương trình.
Phụ thuộc vào môi trường hiện tại, hai hoặc nhiều thư mục hơn có thể giống nhau.
Quan trọng: Từ AutoCAD 2016, tham biến hệ thống LEGACYCODESEARCH điều khiển thư mục Start In hay Drawing sẽ được tìm kiếm cho file thực thi (.exe). Vì thư mục Start In và bản vẽ thường là mục tiêu của malware, vì thế, khuyến khích bạn tắt thiết lập LEGACYCODESEARCH (đặt nó bằng 0).
Nếu file không nằm trong đường dẫn tìm kiếm này, bạn phải chỉ định tên đường dẫn đầy đủ hoặc tương đối của nó và tên file trước khi chương trình tìm thấy nó. Ví dụ, nếu muốn chèn file part5.dwg thành bản vẽ hiện tại và nó không nằm trong đường dẫn tìm kiếm ở thư viện, bạn phải chọn tên đường dẫn đầy đủ hoặc tương đối dựa trên đường dẫn hợp lệ trong thư viện. Tên đường dẫn tương đối được hiển thị như sau:
- Lệnh: -insert
- Nhập tên khối hoặ [?]: /files2/olddwgs/part5
Cấu trúc thư mục
AutoCAD sử dụng thư mục chính và phụ theo cấu trúc dạng cây, khuyến khích người dùng giữ các file bổ sung, như các ứng dụng AutoLISP (không nằm trong AutoCAD LT), file tùy biến hoặc công cụ bên thứ ba, tách biệt chương trình đã cài và file hỗ trợ. Nhờ đó, phần mềm dễ dàng theo dõi xung đột có thể xảy ra hơn và nâng cấp ứng dụng mà không ảnh hưởng tới các thành phần khác.
Sản phẩm AutoCAD mặc định nằm trong thư mục Program File trên Windows và Applications trên Mac OS. Bạn có thể tạo thư mục mới cùng cấp (ví dụ, /AcadApps) và lưu các chương trình tùy biến, file tùy chỉnh và ứng dụng bên thứ ba khác trong thư mục phụ ở cấp tiếp theo. Nếu muốn duy trì nhiều thư mục bản vẽ (cho từng file công việc), bạn có thể tạo thư mục như /AcadJobs cùng thư mục phụ cho mỗi công việc.
Quá trình tìm kiếm lệnh
Khi nhập một lệnh, AutoCAD sẽ tiến hành một loạt bước để đánh giá tính hợp lệ của tên lệnh đó. Một lệnh có thể là:
- Lệnh tích hợp hoặc tham biến hệ thống.
- Lệnh hoặc bí danh ngoài được xác định file acad.pgp ( acadlt.pgp ở AutoCAD LT).
- Một entry AutoCorrect cho lệnh trong file autoCorrectUserDB.pgp.
- Một entry đồng nghĩa cho lệnh trong file acadSynonymsGlobalDB.pgp.
- Lệnh AutoLISP do người dùng xác định.
- Lệnh người dùng chọn bằng ứng dụng ObjectARX hoặc Managed .NET.
- Lệnh driver thiết bị.
Lưu ý: AutoCAD LT không hỗ trợ AutoLISP, ObjectARX, Managed .NET. Các ứng dụng Managed .NET không có trên Mac OS.
Bạn có thể nhập một lệnh ở gợi ý Command hoặc bắt đầu nó từ giao diện người dùng. Các lệnh cũng có thể thực hiện ở file script hoặc bằng ứng dụng AutoLISP, ObjectARX, Managed .NET.
Danh sách sau mô tả thứ tự tìm kiếm để xác thực tên lệnh:
- Nếu input là một phản hồi giá trị null (Space hoặc Enter), AutoCAD sử dụng tên của lệnh phát sinh cuối cùng. Mặc định là HELP.
- Kiểm tra lệnh này dựa vào danh sách các lệnh có sẵn. Nếu lệnh nằm trong danh sách và không bắt đầu bằng một dấu chấm, chương trình sẽ kiểm tra lệnh dựa trên danh sách lệnh chưa xác định. Nếu chưa xác định được lệnh đó, tìm kiếm vẫn tiếp tục. Nếu không, lệnh đó sẽ chạy trừ khi có nguyên nhân khác ngăn cản nó. Không thể chạy lệnh ở chế độ minh bạch hay ẩn trên hệ thống.
- Kiểm tra lệnh dựa trên các tên lệnh được xác định bằng driver thiết bị, sau đó, là bằng driver hiển thị.
- Lệnh được kiểm tra dựa trên các lệnh ngoài được xác dịnh trong file tham số chương trình. Nếu tên lệnh tương ứng lệnh ngoài đã chọn, lệnh đó sẽ chạy và tìm kiếm hoàn tất.
- Lệnh này được kiểm tra dựa trên danh sách lệnh được xác định bằng AutoLISP, ObjectARX, Managed .NET. Tại thời điểm này, phần mềm sẽ tải lệnh autoload (không có sẵn ở AutoCAD LT).
Chương trình kiểm tra tên lệnh dựa trên danh sách tham biến hệ thống. Nếu tên lệnh nằm trong danh sách, lệnh SETVAR chạy, sử dụng thông tin vào làm tên biến.
Nếu tên lệnh tương ứng một lệnh Alias, tên AutoCorrect hoặc đồng nghĩa được xác định trong file tham số chương trình kết hợp, AutoCAD sử dụng tên lệnh mở rộng và quá trình tìm kiếm bắt đầu bằng danh sách xác lệnh tích hợp.
Nếu tất cả các bước trước đó đều thất bại, tìm kiếm kết thúc bằng một thông báo về các tên lệnh không hợp lệ.
Hi vọng bài viết hữu ích với các bạn!