Cách đặt "Thư mục/Điều kiện" trong Tùy chọn Dự án và đường dẫn "Thư viện" trong Tùy chọn Môi trường? Trợ giúp Delphi không nói nhiều về những cài đặt rất quan trọng này. Tôi có tất cả các loại lỗi lạ vì sự phụ thuộc sai giữa các VCL của tôi.Cách đặt đường dẫn "Thư mục/Điều kiện" và "Thư viện" chính xác
1.
Tôi đã hợp nhất một nhóm lớn các kiểm soát của bên thứ 3 trong gói có tên ThirdPartyPackages_D7.dpk. Điều này rất hữu ích khi tôi cài đặt lại Delphi vì tôi không phải cài đặt lại tất cả các VCL của bên thứ ba đó một cách thường xuyên.
Sau đó, tôi có các điều khiển của riêng mình trong MyControls_D7.dpk phụ thuộc vào VCP ThirdPartyPackages. Tôi cũng có một gói BlgPackage.dpk phụ thuộc vào MyControls.
Vào cuối chuỗi là ứng dụng của tôi (dự án DPR) đang sử dụng các điều khiển trong BlgPackage.
ThirdPartyPackages.dpk -> MyControls.dpk -> BlgPackage.dpk -> MyApplication.dpr
Khi tôi thay đổi/chỉnh sửa cái gì đó để gói thứ hai (MyControls.dpk) và xây dựng ứng dụng DPR, nó hoạt động. Trình biên dịch thấy các thay đổi được thực hiện trong gói đó. Tuy nhiên, nếu tôi đóng dự án và tải và biên dịch BlgPackage, nó sẽ gửi một thông điệp khó chịu có chức năng xyz không thể tìm thấy trong MyControls vì tôi xóa nó (tôi đã nạp đơn vị MyControls vào IDE song song với các đơn vị của ứng dụng). Dường như việc xây dựng ứng dụng chỉ làm mới các tệp DCU cho tất cả các gói đã sử dụng chứ không phải các tệp DCP/BLP.
Làm cách nào để viết và biên dịch mã trong các gói mà không tải các gói một cách rõ ràng vào IDE và tạo chúng? (Lưu ý: Tôi có một lỗi khó chịu rằng không cho phép tôi để chuyển đổi giữa các dự án mà không cần khởi động lại IDE hoặc tải một nhóm các dự án/gói (* .bpg) cùng một lúc.)
2.
Một vấn đề khác là tôi muốn lưu trữ các tệp được biên dịch (DCP/BPL/DCU) của một gói trong thư mục của nó (ví dụ c: \ MyProjects \ Blg).
Nếu tôi đặt hộp thư "Thư mục đầu ra", "Thư mục đầu ra đơn vị" và "Thư mục đầu ra DCP" của gói BlgPackage vào thư mục của nó, không chỉ các tệp BPL/DCU/DCP của nó sẽ được lưu trữ ở đó mà còn các tệp BPL/DCP của MyControls sẽ được lưu trữ ở đó. Làm cách nào để có các tệp nhị phân của từng gói trong một thư mục riêng biệt?
Delphi 7, Win XP, tất cả các dự án thiết lập để "xây dựng lại khi cần thiết"
@ Serg-Tôi không nghĩ rằng No2 sẽ hoạt động.Trợ giúp Delphi 7 nói rằng: "Nếu bạn cố gắng xây dựng gói của mình bằng một tệp không có trên đường dẫn thư viện, bạn sẽ nhận được lỗi trình biên dịch". Vì vậy, tôi sẽ không thể biên dịch gói của mình nếu tôi xóa đường dẫn của nó khỏi Thư viện. – Ampere
Tôi đã làm điều đó và bây giờ tôi không thể biên dịch dự án. Tôi không thể tìm thấy một trong các DCU. DCU đó thuộc về MyControls. Nó nằm trong cùng thư mục chứa các tệp MyControls PAS. – Ampere
@Altar - lưu trữ .dcu trong cùng một thư mục với .pas là một thực hành không tốt và nên tránh. DCU sẽ có sẵn thông qua đường dẫn "Thư viện", trong khi các nguồn (.pas) bình thường thì không. Trong mọi trường hợp, bạn có thể sao chép DCU gây ra sự cố cho thư mục có sẵn thông qua đường dẫn "Thư viện" theo cách thủ công, nếu vì một lý do nào đó bạn không muốn đặt đường dẫn DCU trong tùy chọn gói. – kludg