Obiekty połączone i Monikers
Połączone obiekty, takie jak obiekty osadzone, polegają na procedurze obsługi obiektów w celu komunikowania się z aplikacjami serwera. Sam połączony obiekt zarządza jednak nazewnictwem i śledzeniem źródeł linków. Obiekt połączony działa jak serwer przetwarzania. Na przykład po aktywowaniu połączony obiekt lokalizuje i uruchamia aplikację serwera OLE, która jest źródłem linku.
Procedura obsługi połączonego obiektu składa się z dwóch głównych składników: składnika obsługi i składnika łączenia. Składnik programu obsługi zawiera elementy sterujące i komunikacji zdalnie oraz funkcje podobne do procedury obsługi dla obiektu osadzonego. Składnik łączenia ma własny kontroler i pamięć podręczną oraz zapewnia dostęp do magazynu strukturalnego obiektu. Kontroler składników łączenia obsługuje nazewnictwo źródła za pomocą elementów monikers i powiązania, procesu lokalizowania i uruchamiania źródła linku. (Aby uzyskać więcej informacji na temat elementów monikers i powiązań, zobacz Model obiektów składników.)
Gdy użytkownik początkowo tworzy połączony obiekt lub ładuje istniejący obiekt z magazynu, kontener ładuje wystąpienie składnika łączenia z pamięcią wraz z procedurą obsługi obiektów. Składnik łączenia dostarcza interfejsy — w szczególności IOleLink— które identyfikują obiekt jako link i umożliwiają zarządzanie nazewnictwem, śledzeniem i aktualizowaniem źródła łącza.
Implementując interfejs IOleLink, połączony obiekt udostępnia kontener z funkcjami obsługującymi łączenie. Tylko połączone obiekty implementują IOleLinki wysyłając zapytanie dotyczące tego interfejsu, kontener może określić, czy dany obiekt jest osadzony, czy połączony. Najważniejsza funkcja udostępniana przez IOleLink umożliwia kontenerowi powiązanie ze źródłem połączonego obiektu, czyli aktywowanie połączenia z dokumentem, który przechowuje dane natywne połączonego obiektu. IOleLink również definiuje funkcje do zarządzania informacjami o połączonym obiekcie, takimi jak buforowane dane prezentacji i lokalizacja źródła łącza.
Gdy dokument złożony zawierający połączony obiekt jest zapisywany, dane łącza są zapisywane ze źródłem linku, a nie z kontenerem. Tylko informacje o jego nazwie i lokalizacji są zapisywane wraz z dokumentem złożonym. To zachowanie jest w przeciwieństwie do tego obiektu osadzonego, którego dane są przechowywane wraz z kontenerem.
Aplikacje kontenerów mogą udostępniać informacje o swoich obiektach osadzonych, tak aby te ostatnie lub ich części mogły działać jako źródła linków. Implementując obsługę łączenia z osadzonymi obiektami kontenera, możliwe jest osadzanie zagnieżdżone, co ułatwia użytkownikowi śledzenie oryginałów każdego obiektu osadzania, do którego jest wymagane łącze. Jeśli na przykład użytkownik chce osadzić arkusz programu Microsoft Excel w programie Microsoft Word, a arkusz zawiera mapę bitową utworzoną w narzędziu Paintbrush, użytkownik może połączyć się z kopią mapy bitowej zawartej w arkuszu, a nie oryginalną.
Tematy pokrewne
-
serwerówIn-Process