Text von Word-Dokument lesen

30/03/2009 - 03:34 von Juergen Thuemmler | Report spam
Hi *.*,

ich versuche unter Verwendung von "disphelper.c"
(http://disphelper.sourceforge.net/) eine C-Dll für VB zu schreiben, in der
ich mit einer Funktion den kompletten Text eines Word-Dokuments auslesen
möchte. Allerdings habe ich im Objektkatalog keine diesbezügliche
Eigenschaft von "Document" gefunden. Mit

INT WINAPI WDOCUMENT_GetText(char * dummy)
{
if (wSts==TRUE) // Dokument ist geöffnet
{
HRESULT result;
LPWSTR name=NULL;
char *namePtr=NULL;
result=dhGetValue(L"%S",&name,wdApp,L".ActiveDocument.Range.Text"); //
disphelper-Funktion
namePtr=UnicodeToAnsi(name);
lstrcpy(dummy,namePtr);
if (FAILED(result))
return -1;
if (lstrcmp(dummy,"")==0)
return 0;
return lstrlen(dummy);
}
return -1;
}

erhalte ich zwar Text, aber der enthàlt nur 257 Zeichen.
"ActiveDocument.Text" gibt es nicht. Bisher behelfe ich mir sinngemàß mit
"SelectAll" und "CopyToClipboard", aber das kann's ja wohl nicht sein...
Und noch eine Frage: Kann man ein Word-Dokument per COM unsichtbar öffnen?
Bei Excel geht das.

Danke für jede Hilfe!

Jürgen.
 

Lesen sie die antworten

#1 Hartwig Constien
31/03/2009 - 11:28 | Warnen spam
Hi Jürgen,

ich versuche unter Verwendung von "disphelper.c"
(http://disphelper.sourceforge.net/) eine C-Dll für VB zu schreiben, in der
ich mit einer Funktion den kompletten Text eines Word-Dokuments auslesen
möchte. Allerdings habe ich im Objektkatalog keine diesbezügliche
Eigenschaft von "Document" gefunden. ...



Die Gruppe passt wohl nicht so recht (nicht C, .NET, VBA für Word) aber
vielleicht kann ich doch etwas helfen:

"ActiveDocument.Text" gibt es nicht.



Das hast Du richtig erkannt. ActiveDocument.Content enthàlt den gesuchten
Text.

Kann man ein Word-Dokument per COM unsichtbar öffnen?



Ich denke schon. Das Word.Application-Objekt hat auch eine
Visible-Eigenschaft.

Hang loose, Hartwig

Ähnliche fragen