Hallo,
also eine Textmarke in einem Dokument ist ja eindeutig. Habe mit Interop nicht viel Erfahrung.
Ist auch ziemlich ätzend, sich mit COM-Objekten rumschlagen zu müssen. Da ist ja ein Debugging nahezu unmöglich.
Aber habe mich mal ein bisschen auf diversen Seiten schlau gemacht, und es müsste dann so in etwa aussehen:
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20:
| object oMissing = Missing.Value; object oTrue = true; object oFalse = false; object fileName = "c:\\test2.doc"; Microsoft.Office.Interop.Word._Application oWord = new Microsoft.Office.Interop.Word.Application(); oWord.Visible = true; Microsoft.Office.Interop.Word._Document oDoc = oWord.Documents.Open(ref fileName, ref oMissing, ref oTrue, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oFalse, ref oFalse, ref oMissing, ref oMissing, ref oMissing);
object bookmark = "Test"; if (oDoc.Bookmarks.Exists(bookmark.ToString())) { string bookmarkContent = oDoc.Bookmarks.get_Item(ref bookmark).Range.Text; } oDoc.Close(ref oMissing, ref oMissing, ref oMissing); oWord.Quit(ref oMissing, ref oMissing, ref oMissing); |
Bei mir hat sich Word immer mit geöffnet, und manchmal auch nicht so richtig beendet.
Weiß nicht, woran das liegt, musst Du einfach mal schauen.
LG, Marko