define class myprint olepublic as custom ... procedure PrintThis _screen.visible=.t. _screen... {more code to make VFP invisible but to make it think it is - make it small and off the visible area, i.e. negative coordinates} report form ... endproc enddefineNow build this as an executable, say printing.exe. If it runs on the same server, it will self-register when built, else you have to register it (only once, if you don't change the component GUIDs).
oPrint=createobject("printing.myprint") oPrint.PrintThis()Of course, you may want to pass it some parameters, hide the _screen when done etc.