No seu PRG coloque apos (PEOpenPrintJob )
PrinterSetup()
cPrinter := PrnGetName()
cDriver := PrnGetDrive()
cPort := PrnGetPort()
oCrw:SetPrinter32( cDriver, cPrinter, cPort)
No tCRW.PRg coloque isto:
MESSAGE SetPrinter32 METHOD SetPrinter32_
+
Method SetPrinter32_( cDriver, cPrinter, cPort)
LOCAL nRet
LOCAL cFarProc := "PESelectPrinter"
cFarProc := GetProcAdd( ::hDll, cFarProc,.T.,_INT,LONG,LPSTR ,LPSTR,LPSTR,LONG)
nRet := CallDll( cFarProc, ::nJobHandle, cDriver , cPrinter , cPort ,0 )
/ Coloque isto antes do imprimicrystal()
PrinterSetup()
cPrinter := PrnGetName()
cDriver := PrnGetDrive()
cPort := PrnGetPort()
Memvar->oCrw:SetPrinter32( cDriver, cPrinter, cPort)
/
RETURN self