FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Imprimir con shellexecute a una impresora
Posts: 234
Joined: Tue Sep 01, 2009 07:55 AM
Imprimir con shellexecute a una impresora
Posted: Sat Apr 17, 2010 03:59 PM

En una aplicaci贸n que genera un listado en formato rtf, para que pueda ser manipulado por el usuario uso la siguiente l铆nea de c贸digo, para que nos abra el word (o comptible), y visualizar el documento:
word:=shellexecute(GetHWnd32(oWnd:hWnd ),"open",CFICHERO,,"",)

Ahora quiero ir m谩s lejos, quisiera imprimir, usando la misma funci贸n, pero cambiando el "open" por "print", 驴hay alguna forma de hacerlo, enviando la impresi贸n a una impresora en particular?

Muchas gracias y un saludo

Jos茅 Luis

Posts: 234
Joined: Tue Sep 01, 2009 07:55 AM
Re: Imprimir con shellexecute a una impresora
Posted: Tue Apr 20, 2010 11:43 AM
Me respondo yo mismo por el momento y a falta de conseguir hacerlo de una forma m谩s elegante, y a ser posible sin abrir dos veces el word:

Code (fw): Select all Collapse
 聽if adobe
聽 聽 聽 nhandle:=treg32():new(2147483649,"SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders")
聽 聽 聽 ruta:=nhandle:get("Personal")
聽 聽 聽 impresora:=PrnGetName()
聽 聽 聽 setprintdefault("Adobe PDF")
聽 聽 聽 oword:=shellexecute(GetHWnd32(oWnd:hWnd ),"print",CFICHERO,,,.f.)
聽 聽 聽 setprintdefault(impresora)
聽 聽 聽 聽 聽 endif
聽 聽 聽 聽 聽 oword:=shellexecute(GetHWnd32(oWnd:hWnd ),"open",CFICHERO,,,.t.)


Seguir茅 d谩ndole vueltas.
Un saludo
Jos茅 Luis

Continue the discussion