Udostępnij za pośrednictwem


Interfejsy (COM)

Następujące interfejsy są dostarczane przez com.

Interfejs Opis
IAccessControl Umożliwia zarządzanie dostępem do obiektów i właściwości obiektów.
IAgileObject Oznacza interfejs jako zwinny w mieszkaniach.
IBindCtx Zapewnia dostęp do kontekstu powiązania, który jest obiektem, który przechowuje informacje o określonej operacji powiązania moniker.
IBlockingLock Udostępnia semafor, który może służyć do tymczasowego wyłącznego dostępu do udostępnionego zasobu, takiego jak plik.
ICallFactory Tworzy obiekt wywołania do przetwarzania wywołań do metod interfejsu asynchronicznego.
ICallFrame Umożliwia manipulowanie ramkami wywołań, takimi jak ramki stosu. Ramka wywołania to treść informacji, które procedura musi zapisać, aby umożliwić jej prawidłowe powrót do obiektu wywołującego. Ramka wywołania może istnieć na stosie lub w rejestrach. Ramka stosu przechowuje informacje kontekstowe obiektu wywołującego na stosie.
ICallFrameEvents Dostarcza powiadomienia o wywołaniu metody.
ICallFrameWalker Przedstawia ramkę stosu, która szuka interesujących wartości.
ICallIndirect Wywołuje obiekt z pośrednim odwołaniem do argumentów wywołań zamiast tradycyjnego wywołania bezpośredniego.
ICallInterceptor Obsługuje rejestrację i wyrejestrowywanie ujść zdarzeń, które chcą otrzymywać powiadomienia o wywołaniach wykonanych bezpośrednio w interfejsie. Ponadto ten interfejs zapewnia metodę, za pomocą której można przeprowadzić wywołanie z pośrednim odwołaniem do argumentów wywołań.
ICallUnmarshal Jest używany po stronie serwera (odbierania) wywołania zdalnego. Odpowiednie wystąpienie ICallUnmarshal może służyć do przekształcania się z powrotem w ramkę wywołania metody, która została wcześniej marshalowana przez wywołanie ICallFrame::Marshal po stronie klienta (wysyłanie).
ICancelMethodCalls Zarządza żądaniami anulowania w wywołaniu metody wychodzącej i monitoruje bieżący stan wywołania tej metody w wątku serwera.
ICatInformation Uzyskuje informacje o kategoriach zaimplementowanych lub wymaganych przez określoną klasę, a także informacje o kategoriach zarejestrowanych na określonym komputerze.
ICatRegister Udostępnia metody rejestrowania i wyrejestrowania informacji o kategorii składników w rejestrze. Obejmuje to zarówno czytelne dla człowieka nazwy kategorii, jak i kategorie zaimplementowane/wymagane przez dany składnik lub klasę.
IClassActivator Określa metodę, która pobiera obiekt klasy.
IClassFactory Umożliwia utworzenie klasy obiektów.
IClassFactory2 Umożliwia obiekt fabryki klas w dowolnym rodzaju serwera obiektów do kontrolowania tworzenia obiektów za pomocą licencjonowania.
IClientSecurity Zapewnia klientowi kontrolę nad ustawieniami zabezpieczeń dla każdego pojedynczego serwera proxy interfejsu obiektu.
IComThreadingInfo Umożliwia uzyskanie następujących informacji o mieszkaniu i wątku wykonywanym przez obiekt wywołujący: typ mieszkania, typ wątku i identyfikator GUID wątku. Umożliwia również określenie identyfikatora GUID wątku.
IConnectionPoint Obsługuje punkty połączenia dla połączonych obiektów.
IConnectionPointContainer Obsługuje punkty połączenia dla połączonych obiektów.
IContext Obsługuje ustawianie właściwości kontekstu COM+.
IContextCallback Udostępnia mechanizm wykonywania funkcji wewnątrz określonego kontekstu obiektu COM+.
IContinueCallback Udostępnia ogólny mechanizm wywołania zwrotnego dla procesów przerywanych, które powinny okresowo pytać obiekt, czy kontynuować.
IEnumCATID Wylicza identyfikatory kategorii.
IEnumCLSID Wylicza identyfikatory klas.
IEnumCATEGORYINFO Wylicza kategorie składników zarejestrowane w systemie.
IEnumConnectionPoints Wylicza punkty połączenia.
IEnumConnections Wylicza bieżące połączenia dla obiektu, który można połączyć.
IEnumContextProps Udostępnia mechanizm wyliczania właściwości kontekstu skojarzonych z kontekstem obiektu COM+.
IEnumGUID Umożliwia klientom wyliczanie za pomocą kolekcji identyfikatorów klas dla klas COM.
IEnumString Wyliczanie ciągów. LPWSTR jest typem wskazującym wskaźnik na ciąg o zerowej długości lub unicode.
IEnumUnknown Wylicza obiekty za pomocą interfejsu IUnknown. Może służyć do wyliczania za pomocą obiektów w składniku zawierającym wiele obiektów.
IEventProperty Kojarzy nazwaną właściwość zdarzenia z jego wartością.
IEventPublisher Rejestruje, modyfikuje, usuwa i dostarcza informacje o wydawcy zdarzeń.
IExternalConnection Zarządza liczbą marshalowanych lub zewnętrznych połączeń obiektu serwera. Serwer, który utrzymuje taką liczbę, może wykryć, kiedy nie ma żadnych połączeń zewnętrznych i zamknąć się w uporządkowany sposób.
IFastRundown Oznacza interfejs jako kwalifikujący się do szybkiego zachowania rundown.
IFileBasedLogInit Inicjuje wystąpienie implementacji pliku ILog.
IForegroundTransfer Przenosi okno pierwszego planu do procesu hostowania serwera COM.
IGlobalInterfaceTable Umożliwia każdemu mieszkaniu w procesie uzyskiwanie dostępu do interfejsu zaimplementowanego na obiekcie w dowolnym innym mieszkaniu w procesie.
IGlobalOptions Ustawia i odpytuje pewne globalne właściwości środowiska uruchomieniowego COM.
IInitializeSpy Wykonuje inicjowanie lub oczyszczanie podczas wprowadzania lub zamykania mieszkania COM.
IInternalUnknown Używane wyłącznie w uproszczonych programach obsługi po stronie klienta, które wymagają dostępu do niektórych interfejsów wewnętrznych na serwerze proxy.
ILog Zapewnia ogólne funkcje rejestrowania niskiego poziomu.
IMalloc Przydziela, zwalnia pamięć i zarządza nią.
IMallocSpy Umożliwia deweloperom aplikacji monitorowanie (szpiegowanie) alokacji pamięci, wykrywanie przecieków pamięci i symulowanie awarii pamięci w wywołaniach metody IMalloc.
IMarshal Umożliwia obiektowi COM definiowanie wskaźników interfejsu i zarządzanie nimi.
IMarshalingStream Zawiera dodatkowe informacje na temat kontekstu marshalingu do obiektów niestandardowych i obiektów bezmarszyli.
IMessageFilter Zapewnia serwerom i aplikacjom COM możliwość selektywnego obsługi przychodzących i wychodzących komunikatów COM podczas oczekiwania na odpowiedzi z wywołań synchronicznych. Filtrowanie komunikatów pomaga zapewnić obsługę wywołań w sposób, który poprawia wydajność i pozwala uniknąć zakleszczenia. Komunikaty COM mogą być synchroniczne, asynchroniczne lub zsynchronizowane z danymi wejściowymi; większość wywołań interfejsu jest synchroniczna.
IMoniker Umożliwia użycie obiektu moniker, który zawiera informacje, które jednoznacznie identyfikują obiekt COM. Obiekt, który ma wskaźnik do obiektu moniker interfejsu IMoniker, może zlokalizować, aktywować i uzyskać dostęp do zidentyfikowanego obiektu bez żadnych innych informacji o tym, gdzie obiekt jest rzeczywiście zlokalizowany w systemie rozproszonym.
IMultiQI Umożliwia klientowi wykonywanie zapytań względem serwera proxy obiektu lub procedury obsługi dla wielu interfejsów przy użyciu jednego wywołania RPC. Korzystając z tego interfejsu, zamiast polegać na oddzielnych wywołaniach do IUnknown::QueryInterface, klienci mogą zmniejszyć liczbę wywołań RPC, które muszą przekraczać wątki, procesy lub granice maszyny, a zatem ilość czasu wymaganego do uzyskania żądanych wskaźników interfejsu.
IObjContext Wykonuje różne operacje na kontekstach.
IOleItemContainer Używane przez elementy monikers, gdy są one powiązane z obiektami, które identyfikują.
IOrpcDebugNotify Udostępnia funkcje zdalnego debugowania.
IParseDisplayName Analizuje ciąg nazwy wyświetlanej, aby przekonwertować go na moniker dla niestandardowych implementacji moniker.
IPersist Udostępnia identyfikator CLSID obiektu, który można przechowywać trwale w systemie. Umożliwia obiektowi określenie, która procedura obsługi obiektów ma być używana w procesie klienta, ponieważ jest używana w domyślnej implementacji marshalingu.
IPersistFile Umożliwia załadowanie obiektu z lub zapisanie go do pliku dysku, a nie obiektu magazynu lub strumienia.
IPersistStorage Umożliwia aplikacji kontenera przekazanie obiektu magazynu do jednego z zawartych w nim obiektów oraz załadowanie i zapisanie obiektu magazynu.
IPersistStream Umożliwia zapisywanie i ładowanie obiektów korzystających z prostego strumienia szeregowego na potrzeby ich magazynowania.
IPersistStreamInit Zastąpienie IPersistStream, które dodaje metodę inicjowania.
IPipeByte Przesyła dane typu bajtu (który ma szerokość 8 bitów).
IPipeDouble Przesyła dane o podwójnym typie (o szerokości 64 bitów).
IPipeLong Przesyła dane typu długiej liczby całkowitej (czyli 32 bity szerokości).
IProcessInitControl Określa interwał limitu czasu inicjowania procesu.
IProcessLock Używany przez ISurrogateService, aby zapobiec zakończeniu procesu z powodu przekroczenia limitu czasu.
IProgressNotify Umożliwia aplikacjom i innym obiektom odbieranie powiadomień o zmianach w toku operacji pobierania.
IProvideClassInfo Zapewnia dostęp do informacji o typie dla wpisu coclass obiektu w bibliotece typów.
IProvideClassInfo2 Rozszerzenie IProvideClassInfo, które przyspiesza i ułatwia pobieranie identyfikatora IID interfejsu wychodzącego obiektu dla domyślnego zestawu zdarzeń.
IProvideMultipleClassInfo Rozszerzenie do IProvideClassInfo2, które ułatwia szybsze i łatwiejsze pobieranie informacji o typie z składnika, który może mieć wiele coclasss, które określają jego zachowanie.
IPSFactoryBuffer Udostępnia niestandardowe metody tworzenia serwerów proxy obiektów COM i wycinków. Ten interfejs nie jest marshalable.
IROTData Zaimplementowane przez monikers, aby umożliwić uruchamianie tabeli obiektów (ROT) do porównywania monikers ze sobą.
IRpcChannelBuffer Przeprowadzanie marshalingu danych między serwerem proxy klienta COM i wycinką serwera COM.
IRpcOptions Umożliwia obiektom wywołującym ustawianie lub wykonywanie zapytań dotyczących wartości różnych właściwości, które kontrolują sposób obsługi zdalnych wywołań procedur (RPC, Remote Procedure Call).
IRpcProxyBuffer Steruje serwerem proxy RPC używanym do marshalingu danych między składnikami MODELU COM.
IRpcStubBuffer Steruje wycinką RPC używaną do marshalingu danych między składnikami MODELU COM.
IRunnableObject Umożliwia kontenerowi kontrolowanie uruchamiania jego obiektów osadzonych. W przypadku obiektu zaimplementowanego przy użyciu serwera lokalnego wywołanie metody Run uruchamia plik .EXE serwera. W przypadku obiektu zaimplementowanego przy użyciu serwera przetwarzania wywołanie Uruchom powoduje przejście obiektu .DLL pliku do stanu uruchomienia.
IRunningObjectTable Zarządza dostępem do uruchomionej tabeli obiektów (ROT), globalnie dostępnej tabeli odnośników na każdej stacji roboczej. Rot stacji roboczej śledzi te obiekty, które mogą być identyfikowane przez pseudonim i które są obecnie uruchomione na stacji roboczej. Gdy klient próbuje powiązać moniker z obiektem, pseudonim sprawdza rot, aby sprawdzić, czy obiekt jest już uruchomiony; dzięki temu moniker może powiązać z bieżącym wystąpieniem zamiast ładować nowe.
IServerSecurity Używany przez serwer do uwierzytelniania klienta i zarządzania personifikacją klienta.
IStdMarshalInfo Pobiera identyfikator CLSID identyfikujący procedurę obsługi do użycia w procesie docelowym podczas marshalingu standardowego.
ISurrogate Służy do dynamicznego ładowania nowych serwerów DLL do istniejącego zastępczego i zwalniania zastępczego, gdy nie jest już potrzebny.
ISurrogateService Służy do inicjowania, uruchamiania i wydawania aplikacji COM+. Możesz również odświeżyć katalog i zamknąć proces.
ISynchronize Zapewnia asynchroniczną komunikację między obiektami dotyczącymi wystąpienia zdarzenia. Obiekty implementujące ISynchronize mogą odbierać sygnały o wystąpieniu zdarzenia i mogą odpowiadać na zapytania dotyczące zdarzenia. W ten sposób klienci mogą upewnić się, że jedno żądanie zostało przetworzone przed przesłaniem kolejnego żądania, które zależy od ukończenia pierwszego żądania.
ISynchronizeContainer Zarządza grupą niepodpisanych obiektów synchronizacji.
ISynchronizeEvent Przypisuje dojście zdarzeń do obiektu synchronizacji.
ISynchronizeHandle Pobiera uchwyt skojarzony z obiektem synchronizacji.
IUnknown Umożliwia klientom pobieranie wskaźników do innych interfejsów dla danego obiektu za pośrednictwem metody QueryInterface oraz zarządzania istnieniem obiektu za pomocą metod AddRef i Release. Wszystkie inne interfejsy COM są dziedziczone bezpośrednio lub pośrednio z IUnknown. W związku z tym trzy metody w narzędziu IUnknown są pierwszymi wpisami w tabeli VTable dla każdego interfejsu.