Я работаю над приложением, которое должно запускать Microsoft Word, а затем возобновлять работу, когда пользователь закрывает Word. Код ниже должен работать, но это не так. Я получаю «объект не установлен в экземпляр объекта»
1 Dim pInfo As New ProcessStartInfo
2 Dim P As New Process
3 pInfo.FileName = "C:\test\LLR.doc"
4 P = Process.Start(pInfo)
5 ''# Here is where it goes bad
6 P.WaitForInputIdle()
7 P.WaitForExit()
Я помещаю p
в окно просмотра, и он показывает system.diagnostics.process
в часах после строки 2, но после строки 4 он возвращается к НИЧЕГО. Процесс запускается, но я больше не могу отслеживать его со строками 6 и 7. Является ли это «ограничением» Visual Studio 2010 или я делаю ошибку оператора? Справка MS не показывает процесс, доступный в версии 2010 (он есть в Visual Studio 2005 и Visual Studio 2008).
--Редактировать на основе отзывов - окончательное решение
Private Function StartWord(ByVal NewFileName As String) As Boolean
MessageBox.Show("When you have finished editing the report, save and close word to complete operation")
Dim wapp As Application
wapp = New Microsoft.Office.Interop.Word.Application
wapp.Documents.Open(NewFileName)
wapp.Visible = True
wapp.WindowState = WdWindowState.wdWindowStateMaximize
wapp.Caption = "Large Loss Report"
Try
While wapp.Documents.Count > 0
System.Windows.Forms.Application.DoEvents()
End While
wapp.Quit()
Catch ex As Exception
End Try
Return True
End Function