Identificativo articolo: 302281 - Ultima modifica: venerdì 29 giugno 2007 - Revisione: 5.2 How to Ottenere l'handle di finestra per un server di automazione di Office con Visual Basic .NETQuesto articolo è stato precedentemente pubblicato con il codice di riferimento I302281 Sommario
In questo articolo viene spiegato come ottenere l'handle di finestra di un'applicazione di Microsoft Office mentre si automatizza tale applicazione da Visual Basic .NET.
Informazioni
I modelli di oggetti per la maggior parte delle applicazioni di Microsoft Office non espongono proprietà per recuperare gli handle di finestra delle applicazioni. Per determinare l'handle di finestra di un'applicazione di Office che si sta automatizzando, è possibile utilizzare la funzione API
FindWindow
con il nome di classe della finestra superiore dell'applicazione. Se l'applicazione consente di eseguire più istanze contemporaneamente, sarà necessario tenerne conto per poter recuperare l'handle di finestra corretto. Nelle sezioni seguenti sono illustrate le tecniche per recuperare l'handle di finestra per applicazioni a istanza singola o multipla.
NOTA: il modello oggetti di Microsoft Access espone la proprietà hWndAccessApp per l'oggetto Application che consente di determinare l'handle di finestra dell'applicazione. È inoltre possibile utilizzare la proprietà hWnd di maschere e report per recuperare gli handle specifici di tali finestre. In Excel 2002 è stata inoltre introdotta per la prima volta una proprietà hWnd per l'oggetto Application. Per quanto riguarda Excel 2002 e Access versioni 97 e successive, poiché queste applicazioni di Office consentono di recuperare l'handle di finestra per l'applicazione attraverso i rispettivi modelli di oggetti, l'approccio FindWindow discusso in questo articolo non è necessario. Trovare l'handle di finestra per un'applicazione che consente di eseguire una sola istanzaLa procedura descritta di seguito illustra come utilizzare la funzione API FindWindow con un client di automazione di Visual Basic al fine di determinare l'handle di finestra per un server di automazione non in funzione che consente l'esecuzione di una sola istanza. Questa è la tecnica che viene impiegata utilizzando Microsoft PowerPoint come server di automazione.Procedura di esempio
Trovare l'handle di finestra per un'applicazione che consente istanze multipleAlcune applicazioni, come Excel o Word, consentono di eseguire più istanze contemporaneamente. Per recuperare l'handle di finestra dell'istanza dell'applicazione che si sta automatizzando, è possibile innanzitutto utilizzare l'automazione per cambiare il titolo all'applicazione specificando un valore univoco e quindi utilizzare la funzione API FindWindow per recuperare l'handle di finestra corretto. La procedura descritta di seguito illustra questa tecnica utilizzando Excel come server di automazione.Procedura di esempio
Riferimenti
Per ulteriori informazioni, visitare il seguente sito Web Microsoft Developer Network (MSDN)(informazioni in lingua inglese):
Microsoft Office Development with Visual Studio
Per ulteriori informazioni sul recupero dell'handle di finestra per un server di automazione di Office con versioni precedenti di Visual Studio, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito (gli articoli con prefisso "Q" contengono informazioni in inglese):
http://msdn2.microsoft.com/en-us/library/aa188489(office.10).aspx (http://msdn2.microsoft.com/en-us/library/aa188489(office.10).aspx) 258511
(http://support.microsoft.com/kb/258511/
)
How to Obtain the Window Handle for an Office Automation Server
Le informazioni in questo articolo si applicano a
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. | Traduzione articoli
|
Torna all'inizio
