2009-10-27 24 views
17

Đối với một trong những dự án phụ, tôi cần phải viết một ứng dụng C# cần thiết để sử dụng đối tượng INPROC COM của bên thứ ba. Thật không may, C# không phải là ngôn ngữ lập trình chính của tôi, vì vậy kiến ​​thức của tôi có chút hạn chế. Có bất kỳ hướng dẫn tốt có sẵn về cách truy cập đối tượng COM từ C#? Việc sử dụng đối tượng COM của bên thứ ba này yêu cầu tôi tạo ra việc triển khai giao diện COM được chỉ định và cung cấp việc triển khai thực hiện đó vào đối tượng COM để nó hoạt động.Bất kỳ hướng dẫn tốt về cách sử dụng COM từ C#?

Trả lời

12

Có một cuốn sách tốt gọi .NET and COM: The Complete Interoperability Guide rằng tôi sắp bắt đầu đọc như tôi muốn hiểu rõ hơn về COM interop. Có lẽ nó sẽ hữu ích cho bạn quá, hãy kiểm tra xem nó ra.

Trọng tâm của cuốn sách là trên COM Khả năng cộng tác (vì nó là một nhiều chủ đề lớn hơn), và trung tâm của các cuộc thảo luận được chia thành bốn phần:

* Using COM Components Within the .NET Framework 
* Using .NET Framework Components from COM 
* Designing Good .NET Framework Components for COM Clients 
* Designing Good COM Components for .NET Framework Clients 

Phạm vi của cuốn sách chỉ là về mọi thứ liên quan đến việc sử dụng "không được quản lý mã" trong Khuôn khổ .NET. Technologies được xây dựng trên COM Khả năng cộng tác cũng che-Khả năng cộng tác của Windows Forms Controls và điều khiển ActiveX, Khả năng cộng tác với COM +, và Khả năng cộng tác với Distributed COM (DCOM). Mặc dù yêu cầu nền tảng Dịch vụ là một công nghệ riêng biệt từ Khả năng tương tác COM, có nhiều khu vực trùng lặp, vì vậy kể cả trong sách là sự phù hợp tự nhiên. Tất cả những công nghệ là một phần cốt lõi của Common Language Runtime và .NET Framework, và có khả năng sẽ được sử dụng không chỉ như là con đường di cư cho dự án phần mềm hiện có, nhưng đối với thương hiệu phát triển phần mềm mới cho vài năm tới

Ngoài ra, hãy xem ebook pdf miễn phí (hợp pháp) COM and .NET Interoperability mà bạn có thể tải xuống từ TheServerSide.com. Bạn phải đăng ký trước khi tải xuống, nhưng bạn chỉ có thể bugmenot nếu bạn không thích.

+0

Không phải là cuốn sách này một chút cũ? Đó là năm 2002, phiên bản đầu tiên của .net và C# vừa được phát hành vào thời điểm đó. – grigoryvp

+8

Vâng, tôi tự hỏi rằng quá, nhưng tôi không nghĩ rằng cách COM interop hoạt động đã thay đổi kể từ những ngày đầu của NET. –

+0

Yup, nó hoạt động tương tự, hoặc rất giống nhau do tính chất của mô hình. Hiểu COM là cực kỳ phức tạp khi bạn nhận được vào nó, nhưng vô cùng linh hoạt. –

2

Những điều cơ bản là khá đơn giản, và MSDN có thông tin tham khảo tốt.

Trong dự án C# của bạn, hãy sử dụng "Thêm tham chiếu" để thêm tham chiếu đến thành phần COM.

Nếu bạn cần phải thực hiện một giao diện COM, tạo một lớp kế thừa từ nó:

class MyClass : IMyComInterface 
{ 
    ... 
} 
31

Tôi có bộ sưu tập dấu trang .NET < -> COM lớn mà tôi đang đổ bên dưới.

Vấn đề là không có hướng dẫn/bài viết nào đề cập đến tất cả các khái niệm cơ bản và của gotacha. Vì vậy, bạn cần phải đi qua một vài người trong số họ và trộn và kết hợp, tùy thuộc vào những gì bạn muốn làm.

Đây là những gì tốt nhất của những gì tôi đã tìm thấy cho đến nay ...

chung NET COM Giới thiệu/Hướng dẫn

MSDN trên NET & COM

ActiveX trong .NET

+1

Cuộc sống tiết kiệm .... đây chính xác là những gì tôi đang tìm kiếm .... im không phải là một fan hâm mộ lớn về chủ đề này nhưng tôi cần phải sửa đổi chủ đề nhàm chán này !!! cảm ơn vì dấu trang dumP !!! – IbrarMumtaz

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