Moniker asincroni in Internet
Internet richiede nuovi approcci a progetto di applicazione a causa del relativo accesso alla rete lenta. Le applicazioni devono eseguire l'accesso alla rete in modo asincrono per evitare il blocco dell'interfaccia utente. La classe MFC CAsyncMonikerFile fornisce supporto asincrono di scaricare i file.
Con i moniker asincroni, è possibile estendere l'applicazione COM scaricare in modo asincrono tramite internet e fornire il rendering progressivo di oggetti grandi quali bitmap e oggetti di VRML. I moniker asincroni consentono una proprietà del controllo ActiveX o un file in internet venga scaricato senza bloccare la risposta dell'interfaccia utente.
Vantaggi dei moniker asincroni
È possibile utilizzare i moniker asincroni:
Codice e file scaricati senza blocco.
Proprietà di download in controlli ActiveX senza blocco.
Ricezione di notifiche dello stato di avanzamento di download.
Lo stato di avanzamento e informazioni sullo stato pronta.
Immettere le informazioni sullo stato all'utente sullo stato di avanzamento.
Consente di annullare un download in qualsiasi momento.
Classi MFC per i moniker asincroni
CAsyncMonikerFile è derivato da CMonikerFile, che a sua volta deriva da COleStreamFile. Un oggetto di COleStreamFile rappresenta un flusso di dati; un oggetto di CMonikerFile utilizza IMoniker per ottenere i dati e un oggetto di CAsyncMonikerFile esegue questa operazione in modo asincrono.
I moniker asincroni vengono utilizzati principalmente in applicazioni e controlli ActiveX ma abilitati fornire un'interfaccia utente inalterata i trasferimenti di file. Un esempio tipico è rappresentato dall'utilizzo di CDataPathProperty fornire proprietà asincrone per i controlli ActiveX.
Classi MFC per i percorsi di dati nei controlli ActiveX
Le classi MFC CDataPathProperty e CCachedDataPathProperty implementano proprietà del controllo ActiveX che possono essere caricati in modo asincrono. Le proprietà asincrone vengono caricati dopo l'avvio sincrono. I controlli ActiveX asincroni avviano ripetutamente un callback per indicare la disponibilità di nuovi dati durante il processo lungo di scambio di proprietà.
CDataPathProperty è derivata da CAsyncMonikerFile. CCachedDataPathProperty è derivata da CDataPathProperty. Per implementare le proprietà asincrone nei controlli ActiveX, derivare una classe da CDataPathProperty o da CCachedDataPathProperty ed eseguire l'override di OnDataAvailable e altre notifiche che si desidera ricevere.
Per scaricare un file utilizzando i moniker asincroni
Dichiarare una classe derivata da CAsyncMonikerFile.
Override OnDataAvailable per visualizzare i dati.
Eseguire l'override di altre funzioni membro, inclusi OnProgress, OnStartBinding e OnStopBinding.
Dichiarare un'istanza di questa classe e utilizzarlo per aprire gli URL.
Per informazioni sul download in modo asincrono in un controllo ActiveX, vedere Controlli ActiveX in internet.