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. |