*** First, in the Load or Init code of your form, enter the following set printer to name "WinFax" DDESETOPTION("TIMEOUT",30000) DDESETOPTION("SAFETY",.F.) ****** then whenever you want to send a fax, use something like this local FaxChan, RetVar, lcRecipient, tmpFaxNo, tmpSubj FaxChan = DDEInitiate("FAXMNG32","CONTROL") retvar = DDEExecute(FaxChan,"GoIdle") FaxChan = DDEInitiate("FAXMNG32","TRANSMIT") if FaxChan >= 0 *** Fax channel opened successfully! tmpFaxNo = "7951011" &&& fax number tmpSubj = "Sending Faxes with Winfax" lcRecipient = 'recipient("' + ; tmpFaxNo + ; '","","","' + ; "From Variable or string" + ; '","' + ; "Recipient Name" + ; '","' + ; rtrim("Subject: "+tmpSubj) + ; '"," "," ")' retvar = DDEPOKE(FaxChan,"SendFAX",(lcrecipient)) retvar = DDEPoke(FaxChan,"Sendfax",'resolution("HIGH")') report form YourReport to printer noconsole retvar=DDEExecute(FaxChan,"GoActive") retvar=DDETerminate(FaxChan) tmpHold = inkey( 20 ) && wait for a while, you can use less endifCheers,