2014-04-03 14 views
7

Để bắt đầu với: Tôi là người mới bắt đầu hoàn chỉnh. Tôi có hai dự án trong một giải pháp. Một dự án là một ứng dụng giao diện điều khiển, được gọi từ ứng dụng biểu mẫu windows. Bây giờ tôi muốn thêm chúng vào một tệp thực thi. Tôi đã nói rằng nó có thể với Fody/Costura. Tôi đã tải xuống và thêm mã IncludeAssemblies vào tệp xml. Tuy nhiên, nếu tôi đi đến thư mục gỡ lỗi, ther vẫn là hai thực thi riêng biệt (ngoài một số tập tin mới tạo ra) Có thực thi lưu ở một nơi khác hoặc tôi đã làm điều gì sai?Các vấn đề với Fody/Costura

Trả lời

4

Có thể là Fody/Costura đã hợp nhất các tệp DLL riêng biệt (các hội đồng .NET) vào EXE. Nó không chăm sóc xóa những người cho bạn. Bạn có thể dễ dàng kiểm tra xem đây có phải là trường hợp đơn giản bằng cách sao chép tệp thực thi ra khỏi thư mục đầu ra cùng với bất kỳ phụ thuộc nào khác ngoài các assembly và xem nó có chạy hay không.

+0

Ngoài ra, tất nhiên, bạn có thể sử dụng một thanh tra lắp ráp như Reflector để nhìn thấy trong Copy địa phương tham khảo lắp ráp đã được nhúng như các nguồn lực vào exe cuối cùng của bạn/dll. – kkahl

1
<Target 
    AfterTargets="AfterBuild;NonWinFodyTarget" 
    Name="CleanReferenceCopyLocalPaths" > 
    <Delete Files="@(ReferenceCopyLocalPaths->'$(OutDir)%(DestinationSubDirectory)%(Filename)%(Extension)')" /> 
</Target> 

trong hồ sơ dự án cũng nên làm việc để dọn dẹp các bản sao