2013-09-27 46 views
6

Tôi đã thực hiện C# BHO đang sử dụng Microsoft.mshtml.dll trong nội bộ. Bây giờ để đóng gói BHO này tôi cần phải cũng phân phối Microsoft.mshtml.dll. Là nó tốt để thêm dll này với dlls của tôi? Bất kỳ vấn đề pháp lý nào? BHO này hoạt động tốt trên môi trường dev như Microsoft.mshtml.dll có mặt trong phòng thu trực quan (C: \ Windows \ assembly \ GAC \ Microsoft.mshtml \ 7.0.3300.0__b03f5f7f11d50a3a \ Microsoft.mshtml.dll) đoán, mà sẽ không trường hợp trên mỗi máy. Xin đề nghị.Sự cố phân phối lại Microsoft.mshtml.dll

+4

Tôi đang bỏ phiếu để đóng câu hỏi này là không có chủ đề vì đó là về cấp phép hoặc các vấn đề pháp lý, chứ không phải lập trình hoặc phát triển phần mềm. [Xem tại đây] (http://meta.stackoverflow.com/questions/274963/questions-about-licensing/274964#274964) và [tại đây] (http://meta.stackexchange.com/questions/139804/can- cấp phép-câu hỏi-bao giờ-được-về-chủ đề) để biết chi tiết, và [trợ giúp] để biết thêm. – JasonMArcher

Trả lời

6

Đây là một lắp ráp interop, nó không chứa bất kỳ mã nào. Chỉ cần khai báo, được tạo tự động từ thư viện kiểu COM. Phân phối lại là như vậy tốt. Lý do duy nhất nó được cài đặt trong GAC ở tất cả là vì nó là một PIA, một hội đồng interop chính. Bạn chỉ cần một PIA khi bạn viết một thư viện lớp cho thấy bất kỳ giao diện nào trong các phương thức công khai của riêng bạn. Khách hàng của một thư viện như vậy cũng cần một tham chiếu đến lắp ráp interop để có thể sử dụng các phương thức của bạn và nó phải chính xác giống như bạn sử dụng. Điều này hiếm khi nói chung, đặc biệt là trong BHO.

Nếu bạn sử dụng phiên bản Visual Studio trước VS2010 thì chỉ cần đặt thuộc tính Sao chép cục bộ thành True cho tham chiếu lắp ráp. Xây dựng lại và bạn sẽ nhận được một bản sao của DLL mà bạn có thể triển khai cùng với các tệp thi hành của riêng bạn.

Đối với VS2010 trở lên, bạn thực sự muốn ưu tiên tính năng Loại tương tác nhúng. Mà nhúng các khai báo giao diện trong hội đồng của riêng bạn, chỉ những cái bạn thực sự sử dụng. Điều này giúp ích rất nhiều trong việc giữ kích thước phân phối BHO của bạn nhỏ hơn. Và tránh sự cần thiết phải triển khai lắp ráp interop đó. Khuyến khích mạnh mẽ.

+0

Ok vì vậy tôi sẽ kiểm tra với Vstudio2010 tùy chọn khác cũng nên làm việc tốt tôi có thể gói nó với bho dll. Hans, Cảm ơn bạn đã trả lời! – Jackie

Các vấn đề liên quan