Wprowadzenie do COM Interop (Visual Basic)

Model obiektów składników (COM) umożliwia obiektowi uwidacznianie jego funkcji innym składnikom i hostowanie aplikacji. Chociaż obiekty COM są fundamentalne dla programowania systemu Windows od wielu lat, aplikacje przeznaczone dla środowiska uruchomieniowego języka wspólnego (CLR) oferują wiele zalet.

Aplikacje .NET Framework ostatecznie zastąpią te opracowane za pomocą modelu COM. Do tego czasu może być konieczne użycie lub utworzenie obiektów COM przy użyciu programu Visual Studio. Współdziałanie z międzyoperacyjności modelu COM lub MODELU COM umożliwia korzystanie z istniejących obiektów COM podczas przechodzenia do programu .NET Framework we własnym tempie.

Korzystając z programu .NET Framework do tworzenia składników COM, można użyć bezpłatnej rejestracji międzyoperajności modelu COM. Dzięki temu można kontrolować, która wersja biblioteki DLL jest włączona, gdy na komputerze jest zainstalowana więcej niż jedna wersja, i umożliwia użytkownikom końcowym kopiowanie aplikacji do odpowiedniego katalogu na komputerze, na którym można go uruchomić. Aby uzyskać więcej informacji, zobacz Rejestracja bezpłatna międzyoperajnikowa COM.

Kod zarządzany i dane

Kod opracowany dla programu .NET Framework jest określany jako kod zarządzany i zawiera metadane używane przez clR. Dane używane przez aplikacje .NET Framework są nazywane danymi zarządzanymi, ponieważ środowisko uruchomieniowe zarządza zadaniami związanymi z danymi, takimi jak przydzielanie i odzyskiwanie pamięci oraz przeprowadzanie sprawdzania typów. Domyślnie platforma .NET w języku Visual Basic używa zarządzanego kodu i danych, ale możesz uzyskać dostęp do niezarządzanego kodu i danych obiektów COM przy użyciu zestawów międzyoperacyjnych (opisanych w dalszej części tej strony).

Zestawy

Zestaw jest podstawowym blokiem konstrukcyjnym aplikacji .NET Framework. Jest to kolekcja funkcji, która jest kompilowana, wersjonowana i wdrażana jako pojedyncza jednostka implementacji zawierająca co najmniej jeden plik. Każdy zestaw zawiera manifest zestawu.

Biblioteki typów i manifesty zestawów

Biblioteki typów opisują charakterystykę obiektów COM, takich jak nazwy składowych i typy danych. Manifesty zestawów wykonują tę samą funkcję dla aplikacji .NET Framework. Zawierają one informacje o następujących kwestiach:

  • Tożsamość zestawu, wersja, kultura i podpis cyfrowy.

  • Pliki tworzące implementację zestawu.

  • Typy i zasoby tworzące zestaw. Obejmuje to te, które są z niego eksportowane.

  • Zależności czasu kompilacji dla innych zestawów.

  • Uprawnienia wymagane do poprawnego uruchomienia zestawu.

Aby uzyskać więcej informacji na temat zestawów i manifestów zestawów, zobacz Zestawy na platformie .NET.

Importowanie i eksportowanie bibliotek typów

Program Visual Studio zawiera narzędzie Tlbimp, które umożliwia importowanie informacji z biblioteki typów do aplikacji .NET Framework. Biblioteki typów można wygenerować na podstawie zestawów przy użyciu narzędzia Tlbexp.

Aby uzyskać informacje o tlbimp i Tlbexp, zobacz Tlbimp.exe (Importer biblioteki typów) i Tlbexp.exe (eksporter biblioteki typów).

Międzyoperacyjne

Zestawy międzyoperaciowe to zestawy programu .NET Framework, które łączą się między kodem zarządzanym i niezarządzanym, mapowaniem elementów członkowskich obiektów COM na równoważne elementy członkowskie zarządzane przez program .NET Framework. Zestawy międzyoperacyjne utworzone przez program Visual Basic .NET obsługują wiele szczegółów dotyczących pracy z obiektami COM, takimi jak marshalling współdziałania.

Marshalling współdziałania

Wszystkie aplikacje .NET Framework współdzielą zestaw typowych typów, które umożliwiają współdziałanie obiektów, niezależnie od używanego języka programowania. Parametry i zwracane wartości obiektów COM czasami używają typów danych, które różnią się od tych używanych w kodzie zarządzanym. Marshalling współdziałania to proces pakowania parametrów i zwracania wartości do równoważnych typów danych podczas przechodzenia do obiektów COM i z nich. Aby uzyskać więcej informacji, zobacz Interop Marshaling (Interop Marshaling).

Zobacz też