Вопрос

У меня есть VB.net тестовое приложение, которое нажимает на ссылку, которая открывает окно приложения Microsoft Word и отображает документ.Как мне найти окно приложения Word, чтобы я мог извлечь из него какой-нибудь текст?

Это было полезно?

Решение

Вы можете использовать COM-объект Word для открытия рабочего документа, а затем манипулировать им.Обязательно сначала добавьте ссылку на 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-кода.

Кроме того, не забудьте удалить слово COM objects в конце.

Другие советы

Я сделал нечто подобное с диалогом SourceSafe, который я разместил в своем блоге.По сути, я использовал либо Spy ++, либо Winspector, чтобы узнать имя класса window, и выполнял вызовы Win32, чтобы что-то делать с window.Я разместил источник в своем блоге: http://harriyott.com/2006/07/sourcesafe-cant-leave-well-alone.aspx

Ты пытаешься активировать слово "приложение"?Если вы хотите получить полный контроль, вам нужно автоматизировать Word из вашего приложения vb.net.Ознакомьтесь здесь с некоторыми образцами: 1, 2

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top