Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Często jest to przydatne dla klienta obiektu w celu zbadania informacji o typie obiektu. Biorąc pod uwagę identyfikator CLSID obiektu, klient może zlokalizować bibliotekę typów obiektu przy użyciu wpisów rejestru, a następnie może skanować bibliotekę typów dla wpisu coclass w bibliotece zgodnej z CLSID.
Jednak nie wszystkie obiekty mają identyfikator CLSID, chociaż nadal muszą podać informacje o typie. Ponadto jest dla klienta wygodne, aby mógł po prostu poprosić obiekt o informacje o jego typie, zamiast tracić czas na wyodrębnianie tych samych informacji z wpisów rejestru. Ta funkcja jest ważna podczas pracy z interfejsami wychodzącymi w obiektach z możliwością łączenia. (Zobacz Using IProvideClassInfo ,aby uzyskać więcej informacji na temat sposobu zapewniania tej możliwości przez obiekty połączone).
W takich przypadkach klient może wysłać zapytanie do obiektu IProvideClassInfo lub IProvideClassInfo2. Jeśli te interfejsy istnieją, klient wywołuje metodę GetClassInfo, aby uzyskać informacje o typie interfejsu.
Implementując IProvideClassInfo lub IProvideClassInfo2, obiekt określa, że może udostępniać informacje o typie dla całej klasy; oznacza to, co zostałoby opisane w sekcji wspólnej klasy biblioteki typów, jeśli ma ją. GetClassInfo zwraca wskaźnik ITypeInfo odpowiadający informacji o coklasie obiektu. Za pomocą tego wskaźnika ITypeInfo klient może przeanalizować wszystkie definicje interfejsów wejściowych i wyjściowych obiektu.
Obiekt może również udostępnić IProvideClassInfo2. Interfejs IProvideClassInfo2 to proste rozszerzenie do IProvideClassInfo, które ułatwia szybkie i łatwe pobieranie identyfikatorów interfejsu wychodzącego obiektu dla domyślnego zestawu zdarzeń. IProvideClassInfo2 pochodzi z IProvideClassInfo.
Tematy pokrewne