oShell = CreateObject("WScript.Shell") Ltimer=createobject("TmpTimer") ?sys(1037) Ltimer=.NUll. oShell=.Null. Return *---------------------------------------- Define class TmpTimer as Timer Interval = 1000 Name = "TmpTimer" timeoutdef = 10000 Procedure Init this.addproperty("starttime",SECONDS()) EndProc Procedure Timer if oShell.AppActivate("Print Setup") oShell.SendKeys("%p") this.interval=0 ENDIF IF SECONDS() - this.starttime >= this.timeoutdef/1000 this.interval=0 ENDIF Endproc Enddefine>Hi, I've adapted the ReportFormPrompt sample from microsoft, so that now it works in my app similarly to getPrinter().