5

Tôi có một giải pháp bao gồm 3 dự án. Tôi đã tạo một dự án triển khai nó chỉ bao gồm các phụ thuộc từ một trong các dự án trong giải pháp của tôi.Làm cách nào để bao gồm các phụ thuộc trong Dự án thiết lập và triển khai?

Điều tôi đã làm cho đến thời điểm này là trong dự án Thiết lập và triển khai của tôi, tôi đã nhấp chuột phải vào "Thư mục ứng dụng" vào Add -> Project Output. Tiếp theo, tôi đã chọn dự án chính của mình từ danh sách thả xuống và được chọn "Primary Output". Tôi đã nhấn OK và các phụ thuộc của dự án đã được đưa vào triển khai thành công.

Tôi đã cố gắng lặp lại quy trình tương tự cho các DLL khác trong giải pháp của mình, nhưng nó không bao gồm các phụ thuộc của chúng.

Làm cách nào để bao gồm tất cả các phụ thuộc cho từng dự án?

Trả lời

0

Xin lưu ý rằng các phụ thuộc được phát hiện bởi dự án thiết lập Visual Studio giống như các đề xuất. Bạn không nên đặt quá nhiều niềm tin vào họ vì những kết quả dương tính giả là rất phổ biến.

Đối với trình cài đặt chuyên nghiệp, bạn nên tự xác định chính xác các phụ thuộc và thêm chúng vào dự án của bạn ở biểu mẫu thích hợp. Ví dụ, một số phụ thuộc có thể là một phần của một thời gian chạy hoặc khung công tác có thể được thêm vào như là một điều kiện tiên quyết cho trình cài đặt của bạn.

Nếu bạn không thể tìm ra những ứng dụng phụ thuộc của bạn, bạn có thể thử sử dụng dependency walker.

0

VS Các dự án thiết lập khả năng đi bộ phụ thuộc khá mạnh và thực sự là nơi tuyệt vời để kiểm tra sự phụ thuộc trực tiếp và đóng gói nhị phân sản phẩm. Với việc xây dựng độ chi tiết tăng lên, nó cho phép phân tích trực tiếp phiên bản của mỗi DLL được tham chiếu để bạn có thông tin cần cập nhật các tham chiếu xây dựng. Thật không may, các thông tin phiên bản được nướng vào các phụ thuộc và dự án thiết lập có thể không chọn những thứ lên nếu nó không tìm thấy một phiên bản thích hợp có sẵn trong đường dẫn tìm kiếm.

Liên quan đến sai tích cực, kinh nghiệm của tôi là nó sẽ mang lại bất kỳ tham chiếu nhị phân nào cho dù có đường dẫn mã thực tế lên cây đó hay không. Một giải pháp cho vấn đề đó là cấu trúc lại mã của bạn (làm cho các dự án trở nên tốt hơn một chút).

Nếu bạn không sử dụng tham chiếu dự án trực tiếp, các dự án thiết lập sẽ không mang lại những phụ thuộc đó. Đó có phải là vấn đề bạn đang gặp phải không? Nếu không, tôi sẽ bật lên độ dài nhật ký của nhật ký và tìm kiếm các tham chiếu bạn đang mong đợi. Nó sẽ nói phiên bản nó đang tìm kiếm và nó tìm kiếm ở đâu và tại sao nó không lấy bất cứ thứ gì.