如何找到Word应用程序窗口?

时间:2020-03-05 18:52:58  来源:igfitidea点击:

我有一个VB.net测试应用程序,单击该链接会打开Microsoft Word应用程序窗口并显示文档。如何找到Word应用程序窗口,以便可以从中获取一些文本?

解决方案

回答

我已经在Blog上发布了SourceSafe对话框,并做了类似的操作。基本上,我使用Spy ++或者Winspector找出窗口类名称,并进行Win32调用以对窗口进行处理。我已将源代码放在我的博客上:http://harriyott.com/2006/07/sourcesafe-cant-leave-well-alone.aspx

回答

我们是否要激活单词app?如果要完全控制,则需要从vb.net应用程序自动化单词。在这里检查一些样本:1、2

回答

我们可以使用Word COM对象打开工作文档,然后对其进行操作。确保首先添加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

doc对象是我们创建的Word实例的句柄,我们可以使用所有常规选项(保存,打印等)。我们也可以使用wordapp进行操作。一种技巧是在Word中使用宏编辑器来记录我们要执行的操作。然后,我们可以在宏编辑器中查看它。这为VB代码提供了一个很好的起点。

另外,请确保最后处理Word COM对象。