Domanda

Ho un'applicazione di test VB.net che fa clic su un collegamento che apre la finestra dell'applicazione Microsoft Word e visualizza il documento.Come posso individuare la finestra dell'applicazione Word in modo da poter prendere del testo da essa?

È stato utile?

Soluzione

È possibile utilizzare l'oggetto COM di Word per aprire il documento di lavoro e quindi manipolarlo.Assicurati di aggiungere prima un riferimento per Microsoft Word.

Imports System.Runtime.InteropServices
Imports Microsoft.Office.Interop.Word

Public Class Form1

Inherits System.Windows.Forms.Form

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Dim strFileName As String
Dim wordapp As New Microsoft.Office.Interop.Word.Application
Dim doc As Microsoft.Office.Interop.Word.Document

Try
    doc = wordapp.Documents.Open("c:\testdoc.doc")
    doc.Activate()

Catch ex As COMException

    MessageBox.Show("Error accessing Word document.")

End Try

End Sub

End Class

L'oggetto doc è un handle per l'istanza di Word che hai creato e puoi utilizzare tutte le normali opzioni (salva, stampa, ecc.).Puoi fare lo stesso con wordapp.Un trucco è utilizzare l'editor di macro in Word per registrare ciò che vuoi fare.È quindi possibile visualizzarlo nell'editor macro.Questo ti offre un ottimo punto di partenza per il tuo codice VB.

Inoltre, assicurati di eliminare gli oggetti COM di Word alla fine.

Altri suggerimenti

Ho fatto qualcosa di simile con una finestra di dialogo SourceSafe, che ho pubblicato sul mio blog.Fondamentalmente, ho utilizzato Spy++ o Winspector per scoprire il nome della classe della finestra ed effettuare chiamate Win32 per eseguire operazioni con la finestra.Ho messo la fonte sul mio blog: http://harriyott.com/2006/07/sourcesafe-cant-leave-well-alone.aspx

Ci stai provando? attivare la parola app?Se desideri il controllo completo, devi automatizzare Word dalla tua app vb.net.Controlla qui per alcuni esempi: 1, 2

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top