Datei öffnen

04/02/2009 - 13:58 von andi rickenbach | Report spam
Hallo,

ich versuche eine Datei von vb.net aus zu öffnen und dann soll die
Applikation warten bis die Datei wieder geschlossen wird.

Ich habe das so gemacht:

Dim ExterneAnwendung As New System.Diagnostics.Process()
ExterneAnwendung.StartInfo.FileName = "C:\Temp\test.doc"
ExterneAnwendung.StartInfo.UseShellExecute = True
ExterneAnwendung.Start()
ExterneAnwendung.WaitForExit()

If ExterneAnwendung.HasExited Then
MessageBox.Show("Die gestartete Anwendung " & _
ExterneAnwendung.StartInfo.FileName & _
" wurde beendet.")
Else
MessageBox.Show("Die gestartete Anwendung " & _
ExterneAnwendung.StartInfo.FileName & _
" ist noch aktiv.")
End If

Das geht, aber nur solange kein anderes Word-Dokument sonst offen war. Wenn
ein anderes Dokument offen ist und der Code oben ausgeführt wird, kommt die
Meldung: No Process is associated with this object.

Was mache ich falsch? Oder geht das gar nicht?

Vielen Dank.
Gruss
 

Lesen sie die antworten

#1 Karsten Sosna
04/02/2009 - 15:07 | Warnen spam
Dim ExterneAnwendung As New System.Diagnostics.Process()
ExterneAnwendung.StartInfo.FileName = "C:\Temp\test.doc"
ExterneAnwendung.StartInfo.UseShellExecute = True
ExterneAnwendung.Start()
ExterneAnwendung.WaitForExit()

If ExterneAnwendung.HasExited Then
MessageBox.Show("Die gestartete Anwendung " & _
ExterneAnwendung.StartInfo.FileName & _
" wurde beendet.")
Else
MessageBox.Show("Die gestartete Anwendung " & _
ExterneAnwendung.StartInfo.FileName & _
" ist noch aktiv.")
End If

Das geht, aber nur solange kein anderes Word-Dokument sonst offen war.
Wenn
ein anderes Dokument offen ist und der Code oben ausgeführt wird, kommt
die
Meldung: No Process is associated with this object.

Was mache ich falsch? Oder geht das gar nicht?



Word ist eine typische MDI-Anwendung. Das "Word-Object" gibt es nur einmal
als Process. Ist Word also einmal gestartet und Du startest einen neuen
Process der ein Word-Document anzeigen soll, wird dieses in den bestehenden
Word-Process "geladen".
So wird bspw. Word auch gestartet wenn Du Outlook(nicht Outlook Express)
gestartet wird.
Gruß Scotty

Ähnliche fragen