HOWTO: Risoluzione dei problemi "Impossibile trovato il membro" 0x80020003 errore

Traduzione articoli Traduzione articoli
Identificativo articolo: 172108 - Visualizza i prodotti a cui si riferisce l?articolo.
Espandi tutto | Chiudi tutto

In questa pagina

Sommario

In questo articolo vengono descritte alcune cause comuni dell'errore di automazione OLE - 2147352573 (80020003 esadecimale) e vengono suggerite procedure per la risoluzione dei problemi.

L'errore pu˛ essere visualizzato come DISP_E_MEMBERNOTFOUND.

Informazioni

Causa 1

Si sta chiamando IDispatch::Invoke() con wFlags impostato solo su DISPATCH_METHOD e il dispid identifica una proprietÓ.

Risoluzione 1

La documentazione SDK IDispatch::Invoke() indica che se il dispid rappresenta una proprietÓ, Ŕ inoltre necessario impostare il flag DISPATCH_PROPERTYGET. Questo problema si verifica comunemente quando si utilizza Microsoft Visual c ++ per generare wrapper di classe dalle librerie dei tipi Microsoft Office 95. ╚ necessario modificare in modo esplicito il file cpp generato per qualsiasi chiamata InvokeHelper() che recupera una proprietÓ per utilizzare il flag DISPATCH_PROPERTGET. Se si utilizzano le librerie dei tipi Microsoft Office 97, questo avviene automaticamente tramite la creazione guidata classe Microsoft di Visual c ++.

Causa 2

Si sta utilizzando il puntatore IDispatch non valido.

Risoluzione 2

Ci˛ si verifica in genere quando si utilizza l'automazione con le applicazioni di Microsoft Office 97, o qualsiasi applicazione che dispone di un modello oggetto gerarchico. Si potrebbe essere inizializzata una classe COleDispatchDriver, che rappresenta un oggetto X, con il puntatore IDispatch per un oggetto Y. Questo errore pu˛ o non pu˛ verificarsi con Microsoft Office 95 o altre applicazioni con solo un'implementazione di IDispatch. Infatti, oggetto X e Y di oggetto possono entrambi essere implementate attraverso un'interfaccia IDispatch e pertanto si verificherÓ alcun conflitto.

Causa 3

Si sta utilizzando un dispid non valido.

Risoluzione 3

Il server non riconosce il dispid che Ŕ stato specificato nella chiamata a IDispatch::Invoke(). Verificare che questo sia il dispid corretto, probabilmente tramite IDispatch::GetIDsOfNames().

Riferimenti

Per ulteriori informazioni su IDispatch o di automazione, vedere Nota Tech TN039 "Implementazione di automazione OLE di MFC /".

Per ulteriori informazioni sulle librerie dei tipi e su come utilizzarli con Microsoft Visual c ++, vedere:

Guida in linea di Microsoft Win32 Software Development Kit; cercare in: "digitare le librerie di importazione con la classe".

Per ulteriori informazioni, vedere il seguente articolo della Microsoft Knowledge Base riportato di seguito:

165273BUG: XL97 errori utilizzando l'automazione OLE

ProprietÓ

Identificativo articolo: 172108 - Ultima modifica: lunedý 11 luglio 2005 - Revisione: 1.3
Le informazioni in questo articolo si applicano a:
  • Microsoft Platform Software Development Kit-edizione gennaio 2000
Chiavi:á
kbmt kbfaq kbhowto KB172108 KbMtit
Traduzione automatica articoli
Il presente articolo Ŕ stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell?utente. Tuttavia, un articolo tradotto in modo automatico non Ŕ sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, pi¨ o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non Ŕ la sua. Microsoft non Ŕ responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell?utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.
Clicca qui per visualizzare la versione originale in inglese dell?articolo: 172108
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.

Invia suggerimenti

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com