FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin for Harbour/xHarbour PRINTER CLASS
Posts: 6983
Joined: Fri Oct 07, 2005 07:07 PM
PRINTER CLASS
Posted: Sat Jan 06, 2007 03:03 PM

To Antonio,

As I sometimes have problems with a white sheet in preview I thought of changing printer.prg. This occurs if the program breaks and the wmf-file is not destroyed by the calling program. You have to cancel wowoexec and then delete the temp-wmf file in windows/temp or - as a user - restart the system.

I inserted:

aDirTMP := directory(::cDir+"\*.wmf", "D")

and changed
AAdd(::aMeta,::cDir+"\T"+ALLTRIM(STR(len(aDirTMP)+1))+Padl(::nPage,4,"0")+".wmf")

So every wmf-file gets a new filename.

Could someone of the advanced Fivewinners check this code, please.

Thanks in advance
Otto

METHOD _StartPage() CLASS TPrinter

LOCAL lSetFixed
LOCAL aDirTMP := {}

If ::hDC = 0
Return NIL
endif

lSetFixed := Set(_SET_FIXED,.F.)

if !::lMeta .AND. !::lStarted
::lStarted := .T.
StartDoc( ::hDC, ::cDocument )
endif

::nPage++

aDirTMP := directory(::cDir+"\*.wmf", "D")

if ::lMeta
AAdd(::aMeta,::cDir+"\T"+ALLTRIM(STR(len(aDirTMP)+1))+Padl(::nPage,4,"0")+".wmf")
::hDCOut := CreateMetaFile(Atail(::aMeta))
else
StartPage(::hDC)
endif

Set(_SET_FIXED,lSetFixed )

Return NIL

Posts: 9020
Joined: Thu Oct 06, 2005 08:17 PM
Re: PRINTER CLASS
Posted: Sat Jan 06, 2007 03:58 PM
Otto wrote:You have to cancel wowoexec


WowExec is for 16 bit only. Did you post in the wrong forum?

EMG
Posts: 6983
Joined: Fri Oct 07, 2005 07:07 PM
PRINTER CLASS
Posted: Sat Jan 06, 2007 04:17 PM

Yes, you are right. It should be for the FW forum.

I had a look into FWH code and I saw that FWH does it with
cTempFile(). So the problem does not exist anymore.

AAdd( ::aMeta, ::cDir + cTempFile( "\", "wmf" ) )

It is time for me to say goodby to clipper - as I still use 1.9 (rock solid ).

Otto

Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
PRINTER CLASS
Posted: Sat Jan 06, 2007 07:41 PM

Otto,

Yes, you should move to 32 bits using FWH

regards, saludos

Antonio Linares
www.fivetechsoft.com

Continue the discussion