Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Podczas tworzenia nowych aplikacji lub składników najlepiej jest tworzyć zestawy programu .NET Framework. Jednak program Visual Basic ułatwia również udostępnienie komponentu .NET Framework w modelu COM. Dzięki temu można udostępniać nowe składniki dla wcześniejszych pakietów aplikacji, które wymagają składników COM. W tym przewodniku pokazano, jak używać języka Visual Basic do uwidaczniania obiektów programu .NET Framework jako obiektów COM, zarówno z szablonem klasy COM, jak i bez niego.
Najprostszym sposobem uwidocznienia obiektów COM jest użycie szablonu klasy COM. Ten szablon tworzy nową klasę, a następnie konfiguruje projekt w celu wygenerowania klasy z warstwą współdziałania jako obiektu COM i zarejestrowania go w systemie operacyjnym.
Uwaga / Notatka
Mimo że można również uwidocznić klasę utworzoną w języku Visual Basic jako obiekt COM dla niezarządzanego kodu do użycia, nie jest to prawdziwy obiekt COM i nie może być używany przez visual basic. Aby uzyskać więcej informacji, zobacz Interoperacyjność COM w aplikacjach .NET Framework.
Uwaga / Notatka
Na komputerze mogą być wyświetlane różne nazwy lub lokalizacje niektórych elementów interfejsu użytkownika programu Visual Studio w poniższych instrukcjach. Wersja programu Visual Studio i ustawienia, których używasz, określają te elementy. Aby uzyskać więcej informacji, zobacz Personalizowanie środowiska IDE.
Aby utworzyć obiekt COM przy użyciu szablonu klasy COM
Otwórz nowy projekt aplikacji systemu Windows z menu Plik , klikając pozycję Nowy projekt.
W oknie dialogowym Nowy projekt w polu Typy projektów sprawdź, czy jest zaznaczony system Windows. Wybierz pozycję Biblioteka klas z listy Szablony , a następnie kliknij przycisk OK. Zostanie wyświetlony nowy projekt.
Wybierz pozycję Dodaj nowy element z menu Projekt . Zostanie wyświetlone okno dialogowe Dodawanie nowego elementu .
Wybierz pozycję Klasa COM z listy Szablony , a następnie kliknij przycisk Dodaj. Visual Basic dodaje nową klasę i konfiguruje nowy projekt dla interopera typu COM.
Dodaj kod, taki jak właściwości, metody i zdarzenia do klasy COM.
Wybierz Skompiluj ClassLibrary1 z menu Buduj. Visual Basic kompiluje zestaw i rejestruje obiekt COM w systemie operacyjnym.
Tworzenie obiektów COM bez szablonu klasy COM
Możesz również ręcznie utworzyć klasę COM zamiast używać szablonu klasy COM. Ta procedura jest przydatna podczas pracy z poziomu wiersza polecenia lub gdy chcesz mieć większą kontrolę nad sposobem definiowania obiektów COM.
Aby skonfigurować projekt w celu wygenerowania obiektu COM
Otwórz nowy projekt aplikacji systemu Windows z menu Plik , klikając pozycję NowyProjekt.
W oknie dialogowym Nowy projekt w polu Typy projektów sprawdź, czy jest zaznaczony system Windows. Wybierz pozycję Biblioteka klas z listy Szablony , a następnie kliknij przycisk OK. Zostanie wyświetlony nowy projekt.
W Eksploratorze rozwiązań kliknij prawym przyciskiem myszy projekt, a następnie kliknij polecenie Właściwości. Zostanie wyświetlony projektant projektu .
Kliknij kartę Kompiluj.
Zaznacz pole wyboru Zarejestruj dla interopercji COM.
Aby skonfigurować kod w swojej klasie i stworzyć obiekt COM
W Eksploratorze rozwiązań kliknij dwukrotnie Class1.vb , aby wyświetlić jego kod.
Zmień nazwę klasy na
ComClass1.Dodaj następujące stałe do
ComClass1. Będą przechowywać stałe globalnie unikalne identyfikatory (GUID), które obiekty COM muszą mieć.Public Const ClassId As String = "" Public Const InterfaceId As String = "" Public Const EventsId As String = ""W menu Narzędzia kliknij pozycję Utwórz identyfikator Globalny Unikalny (GUID). W oknie dialogowym Tworzenie identyfikatora GUID kliknij opcję Format rejestru, a następnie kliknij przycisk Kopiuj. Kliknij Zakończ.
Zastąp pusty ciąg
ClassIdidentyfikatorem GUID, usuwając nawiasy klamrowe z przodu i z tyłu. Jeśli na przykład identyfikator GUID dostarczony przez Guidgen to ""{2C8B0AEE-02C9-486e-B809-C780A11530FE}"", to Twój kod powinien być wyświetlany w następujący sposób.Public Const ClassId As String = "2C8B0AEE-02C9-486e-B809-C780A11530FE"Powtórz poprzednie kroki dla stałych
InterfaceIdiEventsId, jak w poniższym przykładzie.Public Const InterfaceId As String = "3D8B5BA4-FB8C-5ff8-8468-11BF6BD5CF91" Public Const EventsId As String = "2B691787-6ED7-401e-90A4-B3B9C0360E31"Uwaga / Notatka
Upewnij się, że GUID-y są nowe i unikatowe; w przeciwnym razie składnik COM może konfliktować z innymi składnikami COM.
ComClassDodaj atrybut doComClass1, określając identyfikatory GUID dla identyfikatora klasy, identyfikatora interfejsu i identyfikatora zdarzeń, jak w poniższym przykładzie:<ComClass(ComClass1.ClassId, ComClass1.InterfaceId, ComClass1.EventsId)> Public Class ComClass1Klasy COM muszą mieć konstruktor bez
Public Sub New()parametrów lub klasa nie zarejestruje się poprawnie. Dodaj konstruktor bez parametrów do klasy:Public Sub New() MyBase.New() End SubDodaj właściwości, metody i zdarzenia do klasy, kończąc ją instrukcją
End Class. Wybierz pozycję Kompiluj rozwiązanie z menu Kompilacja . Visual Basic kompiluje zestaw i rejestruje obiekt COM w systemie operacyjnym.Uwaga / Notatka
Obiekty COM generowane za pomocą języka Visual Basic nie mogą być używane przez inne aplikacje Języka Visual Basic, ponieważ nie są to obiekty COM. Próby dodania odwołań do takich obiektów COM spowodują wystąpienie błędu. Aby uzyskać szczegółowe informacje, zobacz Współdziałanie COM w aplikacjach .NET Framework.