Identificativo articolo: 302295 - Ultima modifica: mercoledì 31 gennaio 2007 - Revisione: 8.2 Ottenere l'handle di finestra per un server di automazione di Office con Visual C# .NETQuesto articolo è stato precedentemente pubblicato con il codice di riferimento I302295 Sommario In questo articolo viene illustrato come ottenere l'handle
di finestra di un'applicazione di Microsoft Office mentre si automatizza tale
applicazione da Microsoft Visual C# .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 FindWindow con il nome di classe della finestra superiore dell'applicazione.
Se è possibile eseguire più istanze dell'applicazione contemporaneamente, sarà
necessario tenere conto di tale aspetto 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 di 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 97 e versioni successive, poiché queste applicazioni di Office consentono di recuperare l'handle di finestra dell'applicazione mediante i rispettivi modelli di oggetti, l'approccio FindWindow discusso in questo articolo non è necessario. Individuazione dell'handle di finestra per un'applicazione a istanza singolaNella procedura descritta di seguito viene illustrato come utilizzare la funzione FindWindow con un client di automazione di Visual C# al fine di determinare l'handle di finestra per un server di automazione out-of-process che consente l'esecuzione di una sola istanza. Questa è la tecnica che viene impiegata utilizzando Microsoft PowerPoint come server di automazione.Procedura di esempio
Individuazione dell'handle di finestra per un'applicazione a istanze multipleAlcune applicazioni, ad esempio Microsoft Excel o Microsoft Word, consentono l'esecuzione di 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
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 Basic .NET, fare clic sul seguente numero dell'articolo della Microsoft
Knowledge Base: http://msdn2.microsoft.com/en-us/library/aa188489(office.10).aspx (http://msdn2.microsoft.com/en-us/library/aa188489(office.10).aspx) 302281
(http://support.microsoft.com/kb/302281/
)
How to Ottenere l'handle di finestra per un server di automazione di Office con Visual Basic .NET
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
