Minikery asynchroniczne w Internecie
Internet wymaga nowych metod projektowania aplikacji ze względu na powolny dostęp do sieci. Aplikacje powinny asynchronicznie wykonywać dostęp do sieci, aby uniknąć wstrzymania interfejsu użytkownika. Klasa MFC CAsyncMonikerFile zapewnia asynchroniczną obsługę pobierania plików.
Za pomocą asynchronicznych jednostek monikers można rozszerzyć aplikację COM, aby pobrać asynchronicznie przez Internet i zapewnić progresywne renderowanie dużych obiektów, takich jak mapy bitowe i obiekty VRML. Asynchroniczne elementy monikers umożliwiają pobieranie właściwości kontrolki ActiveX lub pliku w Internecie bez blokowania odpowiedzi interfejsu użytkownika.
Zalety asynchronicznych monikers
Możesz użyć asynchronicznych monikers do:
Pobierz kod i pliki bez blokowania.
Pobieranie właściwości w kontrolkach ActiveX bez blokowania.
Otrzymywanie powiadomień o postępie pobierania.
Śledzenie postępu i informacji o stanie gotowości.
Podaj użytkownikowi informacje o stanie dotyczące postępu.
Zezwalaj użytkownikowi na anulowanie pobierania w dowolnym momencie.
Klasy MFC dla asynchronicznych monikers
Plik CAsyncMonikerFile pochodzi z pliku CMonikerFile, który z kolei pochodzi z pliku COleStreamFile. COleStreamFile
Obiekt reprezentuje strumień danych; CMonikerFile
obiekt używa IMoniker
obiektu do uzyskania danych, a CAsyncMonikerFile
obiekt wykonuje to asynchronicznie.
Asynchroniczne elementy monikers są używane głównie w aplikacjach internetowych i kontrolkach ActiveX w celu zapewnienia dynamicznego interfejsu użytkownika podczas transferów plików. Doskonałym przykładem tego jest użycie właściwości CDataPathProperty w celu zapewnienia właściwości asynchronicznych dla kontrolek ActiveX.
Klasy MFC dla ścieżek danych w kontrolkach ActiveX
Klasy CDataPathProperty
MFC i CCachedDataPathProperty implementują właściwości kontrolek ActiveX, które można załadować asynchronicznie. Właściwości asynchroniczne są ładowane po synchronicznej inicjacji. Asynchroniczne kontrolki ActiveX wielokrotnie wywołują wywołanie zwrotne, aby wskazać dostępność nowych danych podczas długiego procesu wymiany właściwości.
CDataPathProperty
pochodzi z CAsyncMonikerFile
. CCachedDataPathProperty
pochodzi z CDataPathProperty
. Aby zaimplementować właściwości asynchroniczne w kontrolkach ActiveX, utwórz klasę z CDataPathProperty
klasy lub CCachedDataPathProperty
i zastąpij wartość OnDataAvailable i inne powiadomienia, które chcesz otrzymywać.
Aby pobrać plik przy użyciu asynchronicznych jednostek monikers
Zadeklaruj klasę pochodną CAsyncMonikerFile.
Zastąpij wartość OnDataAvailable , aby wyświetlić dane.
Przesłaniaj inne funkcje składowe, w tym OnProgress, OnStartBinding i OnStopBinding.
Zadeklaruj wystąpienie tej klasy i użyj go do otwierania adresów URL.
Aby uzyskać informacje na temat pobierania asynchronicznego w kontrolce ActiveX, zobacz Kontrolki ActiveX w Internecie.
Zobacz też
MFC — zadania związane z programowaniem Internetu
MFC — podstawy programowania Internetu