Ok I've solved my problem. I modified the reportbuilder.app and changed the ReportBuilder.ProcessEvent include in frxbuilder.prg to check if the value of the m.iEventType is 8 (which happen when I close the report) then I put a Alt-F4 in the keyboard buffer.Good grief, man, why didn't you define a custom builder event handler or filter for this? You don't need to hack the poor, defenseless ReportBuilder application.
All about the Report Builder Event Handler Registry Tabledefine class xxx as custom
AllowToContinue = .T.
procedure Execute( oEvent )
if oEvent.EventType = FRX_BLDR_EVENT_REPORTCLOSE
keyboard {Alt-F4}
endif
endproc
enddefine