bei einem Kunden ist Win7 32bit im einsatz - hat word starter 2010 - da klappt der ausdruck über word nicht
ich erhalte die Meldung "word nicht installiert"
gibt es hier etwas einzustellen.
Code: Alles auswählen
#include "Gra.ch"
#include "Xbp.ch"
#include "Appevent.ch"
#include "Font.ch"
#include "Inkey.ch"
#include "xbpdev.ch"
#include "activex.ch"
#include "xbpdev.ch"
#define wdPrintFromTo 3
#pragma Library( "XppUI2.lib" )
#pragma library( "ascom10.lib" )
Function Drucken( cDoc, cDrucker,oPrinter)
Local cActivePrinter, aSeite:={}, nCopie:=0
Local oWord
Local oDoc
oWord := CreateObject("Word.Application")
IF Empty( oWord )
MsgBox( "Microsoft Word ist nicht installiert" )
RETURN Nil
ENDIF
oWord:visible := .f. // Word unsichtbar!
cActivePrinter := oWord:Activeprinter // aktuellen Drucker feststellen
oWord:Activeprinter:= cDrucker // Neuen Drucker setzen
oWord:documents:Open(cDoc)
oDoc := oWord:ActiveDocument
Do Case
Case AT("filbestandliste.rtf",cDoc) > 0
aSeite:=oDlg:pageRangeSelected
oDoc:PrintOut(.f.,Nil,wdPrintFromTo,Nil,alltrim(str(aSeite[1])),alltrim(str(aSeite[2])),Nil,1 )
Case AT("maengel",cDoc) > 0
nCopie:=oPrinter:SetNumCopies()
oDoc:PrintOut(.f.,Nil,Nil,Nil,Nil,Nil,Nil,nCopie )
Otherwise
oDoc:PrintOut(.f.)
EndCase
oWord:Activeprinter:= cActivePrinter // alten Drucker setzen
oDoc:close()
oWord:Quit()
oWord:destroy()
oWord := NIL
Return ( NIL )