Pergunta

Eu tenho um aplicativo de teste VB.net que clica em um link que abre a janela do aplicativo Microsoft Word e exibe o documento.Como localizo a janela do aplicativo Word para poder obter algum texto dela?

Foi útil?

Solução

Você pode usar o objeto Word COM para abrir o documento de trabalho e manipulá-lo.Certifique-se de adicionar primeiro uma referência para o 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

O objeto doc é um identificador para a instância do Word que você criou e você pode usar todas as opções normais (salvar, imprimir etc.).Você pode fazer o mesmo com o wordapp.Um truque é usar o editor de macro do Word para registrar o que você deseja fazer.Você pode então visualizar isso no Editor de Macro.Isso é um excelente ponto de partida para seu código VB.

Além disso, certifique-se de descartar os objetos Word COM no final.

Outras dicas

Fiz algo semelhante com uma caixa de diálogo SourceSafe, que publiquei em meu blog.Basicamente, usei Spy++ ou Winspector para descobrir o nome da classe da janela e fazer chamadas Win32 para fazer coisas com a janela.Coloquei a fonte no meu blog: http://harriyott.com/2006/07/sourcesafe-cant-leave-well-alone.aspx

Você está tentando ativar a palavra aplicativo?Se quiser controle total, você precisa automatizar o Word em seu aplicativo vb.net.Confira aqui alguns exemplos: 1, 2

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top