Tôi muốn tạo tệp CustomAction C# DLL phụ thuộc vào bên thứ ba .NET DLL (trong trường hợp cụ thể này là MySql.Data.dll
). Tôi có tập tin DLL hành động tùy chỉnh C# làm việc với đoạn WiX dưới đây. Tôi chỉ cố gắng tìm ra cách để thêm phụ thuộc vào hành động tùy chỉnh một cách an toàn. Lưu ý: Tôi không thực sự cần tệp tệp DLL của bên thứ ba này cho ứng dụng đã cài đặt để chạy.Làm thế nào để thực thi tệp DLL hành động tùy chỉnh WiX với các phụ thuộc
<Binary Id="MyCustomAction.dll" SourceFile="MyCustomAction.CA.dll" />
<CustomAction Id="FixupConfigForMysql" Return="check" />
<InstallExecuteSequence>
<Custom Action='FixupConfigForMysql' After='InstallFiles'>NOT Installed</Custom>
</InstallExecuteSequence>
Tôi có cần cài đặt tệp DLL của bên thứ ba (MySql.Data.dll
) để có được hành động tùy chỉnh để chạy không?
Tôi có thể thêm một thẻ nhị phân khác với tệp DLL của bên thứ ba không?
Điều này dường như chỉ hoạt động, có thể do quy trình tạo hành động tùy chỉnh xử lý việc thêm các phụ thuộc này. Nếu tôi hiểu nó một cách chính xác, chúng sẽ trở thành một phần của .CA.dll được tạo ra bởi công cụ Custom Action build. http://blogs.msdn.com/jasongin/archive/2008/05/23/custom-action-project-templates.aspx –
@AdamTegen Cảm ơn bạn đã đăng bài viết đó, đã lưu tôi một tuần nữa đập đầu tôi vào bức tường! Dòng quan trọng là "Quá trình xây dựng hành động tùy chỉnh sẽ tự động đóng gói bất kỳ hội đồng không phải GAC nào mà CA của bạn phụ thuộc vào" Tôi có tất cả các hội đồng phụ thuộc của tôi trong GAC trên hộp phát triển của tôi và không thể hiểu tại sao họ không làm như vậy ' t dường như có mặt trên hộp kiểm tra. Cảm ơn! –
Như một lưu ý cho những người khác, hãy chắc chắn rằng phần tử 'Binary' trỏ đến tệp' .CA.dll' mà WiX tạo ra và không phải là tệp DLL gốc. – Cocowalla