Giao diện đàm phán là khả năng để yêu cầu một đối tượng COM trong thời gian chạy giao diện khác mà nó hỗ trợ. Bởi vì tất cả các đối tượng COM phải thực hiện giao diện IUnknown, tất cả các đối tượng COM hỗ trợ giao diện đàm phán. Vì vậy khách hàng có thể truy cập bất kỳ COM đối tượng COM và sử dụng QueryInterface để xác định giao diện hỗ trợ các đối tượng COM. Khả năng truy vấn hỗ trợ giao diện COM cho phép khách hàng để quyết định trong thời gian chạy mà giao diện sử dụng.
QueryInterface cho phép các đối tượng COM để vượt qua một con trỏ giao diện đến các đối tượng COM khác mà thậm chí không phải là trên cùng một máy. COM sử dụng QueryInterface để tổng hợp nhiều đối tượng COM. Nó cho phép các thành phần phát triển theo thời gian nhưng vẫn tương thích ngược với các khách hàng lớn tuổi, trong khi các khách hàng mới được phép truy cập các tính năng mới thông qua giao diện mới.
tính năng đàm phán giao diện này cho phép COM hấp dẫn kiến trúc. Các đối tượng COM mô tả tính năng của họ ở một mức độ trừu tượng cao. Điều này cho phép khách hàng COM khả năng truy vấn các đối tượng COM để xem liệu nó hỗ trợ một giao diện cụ thể (một bộ tính năng). So sánh với mô hình giao diện duy nhất một đối tượng CORBA. Khả năng của một khách hàng COM để yêu cầu tính năng thiết lập của một đối tượng COM cho phép sự linh hoạt mà bạn mong đợi từ một mô hình đối tượng thành phần. Nói cách khác, các đối tượng COM nên được cho phép để trưởng thành và phát triển các tính năng mới mà không vi phạm các khách hàng cũ, nhưng cho phép các khách hàng mới truy cập vào các tính năng.
đang được dịch, vui lòng đợi..
