Estimados colegas,
Trabajando con Fivewin 18 en una funci贸n Imprime() he notado que los archivos EMF (Enhanced meta file) generados por el preview de la impresi贸n no son borrados autom谩ticamente una vez que el dialogo de preview de la impresi贸n se cierra, los archivos emf permanecen el directorio "TEMP".
No logro entender que ha cambiado desde la versi贸n de Fivewin 10 en la cual se generaban archivos wmf que se borraban autom谩ticamente.
Ahora los arvhivos emf no se borran del directorio donde son generados por el preview en getenv('TEMP') y quedan linkeados a la aplicaci贸n de forma que tampoco puedo realizar un FERASE hasta que no cierre y termine la aplicaci贸n por completo.
FUNCTION Imprime()
Local cPath:=getenv('TEMP')+'\'
Local aFiles:={}
aFiles:=Directory(getenv('TEMP')+'\emf.*')
PRINT oPrn NAME 'impresi贸n' PREVIEW MODAL
aEval(aFiles,{|x,y| aAdd(oPrn:aMeta, cPath+x[1] ) })
ENDPRINT
aEval(aFiles,{|x,y| FERASE( cPath+x[1] ) })
RETU .T.
Informacion correspondiente a la clase printer.prg de las versiones 10 y 18 de Fivewin.
*************************
FWH 18 CLASS - printer.prg
*************************
function PrintEnd()
if oPrinter:lMeta
if Empty( oPrinter:cFile )
oPrinter:Preview()
elseif "pdf" $ Lower( oPrinter:cFile )
FWSavePreviewToPDF( oPrinter, If( Lower( cFileExt( oPrinter:cFile ) ) == "pdf", ;
oPrinter:cFile, nil ), oPrinter:lPreview )
oPrinter:End()
elseif "emf" $ Lower( oPrinter:cFile )
CopyFile( oPrinter:aMeta[ 1 ], oPrinter:cFile, 0 )
If oPrinter:lPreview
oPrinter:Preview()
else
oPrinter:End()
endif
endif
else
oPrinter:End()
endif
oPrinter := nil
return nil
*************************
FWH 10 CLASS - printer.prg
*************************
function PrintEnd()
if oPrinter:lMeta
oPrinter:Preview()
else
oPrinter:End()
endif
oPrinter := nil
return nil
Muchas gracias,
Cualquier aporte sera bienvenido.
Saludos Mariano
Trabajando con Fivewin 18 en una funci贸n Imprime() he notado que los archivos EMF (Enhanced meta file) generados por el preview de la impresi贸n no son borrados autom谩ticamente una vez que el dialogo de preview de la impresi贸n se cierra, los archivos emf permanecen el directorio "TEMP".
No logro entender que ha cambiado desde la versi贸n de Fivewin 10 en la cual se generaban archivos wmf que se borraban autom谩ticamente.
Ahora los arvhivos emf no se borran del directorio donde son generados por el preview en getenv('TEMP') y quedan linkeados a la aplicaci贸n de forma que tampoco puedo realizar un FERASE hasta que no cierre y termine la aplicaci贸n por completo.
FUNCTION Imprime()
Local cPath:=getenv('TEMP')+'\'
Local aFiles:={}
aFiles:=Directory(getenv('TEMP')+'\emf.*')
PRINT oPrn NAME 'impresi贸n' PREVIEW MODAL
aEval(aFiles,{|x,y| aAdd(oPrn:aMeta, cPath+x[1] ) })
ENDPRINT
aEval(aFiles,{|x,y| FERASE( cPath+x[1] ) })
RETU .T.
Informacion correspondiente a la clase printer.prg de las versiones 10 y 18 de Fivewin.
*************************
FWH 18 CLASS - printer.prg
*************************
function PrintEnd()
if oPrinter:lMeta
if Empty( oPrinter:cFile )
oPrinter:Preview()
elseif "pdf" $ Lower( oPrinter:cFile )
FWSavePreviewToPDF( oPrinter, If( Lower( cFileExt( oPrinter:cFile ) ) == "pdf", ;
oPrinter:cFile, nil ), oPrinter:lPreview )
oPrinter:End()
elseif "emf" $ Lower( oPrinter:cFile )
CopyFile( oPrinter:aMeta[ 1 ], oPrinter:cFile, 0 )
If oPrinter:lPreview
oPrinter:Preview()
else
oPrinter:End()
endif
endif
else
oPrinter:End()
endif
oPrinter := nil
return nil
*************************
FWH 10 CLASS - printer.prg
*************************
function PrintEnd()
if oPrinter:lMeta
oPrinter:Preview()
else
oPrinter:End()
endif
oPrinter := nil
return nil
Muchas gracias,
Cualquier aporte sera bienvenido.
Saludos Mariano