Imprimir PDF en Win XP

HMG en Español

Moderator: Rathinagiri

Post Reply
User avatar
edufloriv
Posts: 238
Joined: Thu Nov 08, 2012 3:42 am
DBs Used: DBF, MariaDB, MySQL, MSSQL, MariaDB
Location: PERU

Imprimir PDF en Win XP

Post by edufloriv »

Saludos amigos,

Tengo un problema super urgente, por favor ayuda. Este código estaba trabajando sin problema alguno :

Code: Select all

   cPDFFilex := cPDFTipo+'-'+cPDFDocu+'.PDF'
   cPDFPrint := cOrigen+cPDFFilex
   cPrinterx := GetDefaultPrinter()

   IF FILE(cPDFPrint)
      FOR nCpy = 1 TO 2
         MsgInfo(CHR( 34 ) + cPDFPrint + CHR( 34 ))
         ShellExecute( 0 , "Printto" , CHR( 34 ) + cPDFPrint + CHR( 34 ) , nil , nil , 0 ) //CHR( 34 ) + cPrinterx + CHR( 34 )
      NEXT
      lImpreso  := .T.
   ENDIF
Pero ahora solo me funciona en computadoras con 7 o superior. Las que tienen XP no imprimen nada. Por favor alguna alternativa para imprimir los .PDF es urgente. Agradezco de antemanos su gentil ayuda. Compilo con HMG 3.0.42


Mil gracias y saludos a todos.

Eduardo Flores Rivas


LIMA - PERU
User avatar
Pablo César
Posts: 4059
Joined: Wed Sep 08, 2010 1:18 pm
Location: Curitiba - Brasil

Imprimir PDF en Win XP

Post by Pablo César »

edufloriv wrote:Compilo con HMG 3.0.42
Por qué razón con esta version ???

Cuando ejecutas algo con ShellExecute, quieres decir que ejecutas algo atravez del sistema operativo, osea: atravez de aplicativos registrado en el Window de la PC. Por lo tanto no es nada con respecto a HMG.

Ese "Printto" debe estar relacionado con el Adobe o algo similar. Actualiza-lo puede ser eso o cambia de Adobe para otro PDF reader.

Sobre otra opcion de impresion: HMG_HPDF sin dudas y hace desde 2012 que está funcionando sinó me engaño. No entiendo como puedes todavia usar una version tan antigua... :?

No entiendo por qué.
HMGing a better world
"Matter tells space how to curve, space tells matter how to move."
Albert Einstein
EduardoLuis
Posts: 683
Joined: Tue Jun 04, 2013 6:33 pm
Location: Argentina

Re: Imprimir PDF en Win XP

Post by EduardoLuis »

Hi Edufloriv:

First i must agree with Pablo.- These days have's no sense using such and old version of HMG.-
Also i agree what Pablo mention about using ShellExecute.- As he said, Shell invoques principal app that trigger your file, in your case Adobe or any other app that opens PDF files, f. example EXECUTE FILE 'sample.pdf'.- This is enough to open files with specific app pre-installed.- Other example EXECUTE FILE 'maximus.docx', etc. etc.-

My suggestion is migrate inmediately to latest HMG version, which is compatible with all Win Os versions from XP to 10.-
This migration don't means you must re-write all your code, perhaps an small part of it (because of new commands and functions introduced).-

If you please me, using such and old version is a fullish, with last HMG version you don't loose anything.-
With regards.
Eduardo

Hola Edufloriv:

En principio debo asentir con lo que te escribió Pablo. En estos días no tiene sentido utilizar una versión tan vieja de Hmg.
Tambien acuerdo con Pablo en lo que te mencionó respecto del uso de Shellexecute.- Como el te explico, Shell llama a la aplición principal que dispare o abra tu archivo, en tu caso Adobe o cualquier otra aplicación que permita la apertura automática de archivos PDF, por ejemplo EXECUTE FILE 'sample.pdf'.- Esto es suficiente para abrir archivos relacionados con aplicativos especificos pre-instalados.- Otros ejemplos EXECUTE FILE 'maximus.docx', etc. etc.

Mi recomendación es que migres inmediatamente a la ultima version de HMG, la cual es compatible con todas las versiones del SO Windows desde su version XP hasta la 10.- Esta migración no necesariamente implicará que tengas que reescribir todo tu código, probablemente solo necesites retocar una pequeña parte del mismo (por los nuevos comandos y funciones introducidas).-
Cordialmente
Eduardo
User avatar
edufloriv
Posts: 238
Joined: Thu Nov 08, 2012 3:42 am
DBs Used: DBF, MariaDB, MySQL, MSSQL, MariaDB
Location: PERU

Re: Imprimir PDF en Win XP

Post by edufloriv »

Saludos amigos,

Gracias por sus oportunas respuestas. Efectivamente logré compilar mi programa para imprimir PDFs con la nueva versión, SIN CAMBIAR NINGUNA LINEA DE CODIGO !!, lo cual me parece genial.

Ahora si, olvidemos que dije 3.0.43. Mi código quedó así ahora:

Code: Select all

   cPDFFilex := cPDFTipo+'-'+cPDFDocu+'.PDF'
   cPDFPrint := cOrigen+cPDFFilex
   cPrinterx := GetDefaultPrinter()

   IF FILE(cPDFPrint)
      FOR nCpy = 1 TO 2
         EXECUTE FILE (cPDFPrint)
      NEXT
      lImpreso  := .T.
   ENDIF
Pero este comando abre el .PDF y lo muestra en el acrobat. Necesito imprimirlo directamente a la impresora. La idea es poder imprimir un lote de 100 PDFS aproximadamente. Por favor que parametro me falta para realizar esto.

Agradeciendo nuevamente su gentil atención y tiempo, reciban mis cordiales saludos.


Atentamente

Eduardo Flores Rivas


LIMA - PERU
User avatar
Pablo César
Posts: 4059
Joined: Wed Sep 08, 2010 1:18 pm
Location: Curitiba - Brasil

Imprimir PDF en Win XP

Post by Pablo César »

Fijate en ..\SAMPLES\Controls\Print\Print_to_PDF\demo.prg

En la primera opcion del menu, imprimirá directo en la impresora default.
edufloriv wrote:Ahora si, olvidemos que dije 3.0.43
Peor, dejiste que usabas HMG 3.0.42 :mrgreen:

Bueno lo importante que te des cuenta que no vale, ni sirve de nada quedarse en el tiempo.

A veces parece insitente de nuestra parte, pero es asi. Encuanto consigamos reunir más adeptos a la nueva version, más capacitados estaremos de TODOS evolucionar para mejor SIEMPRE. Sabes por qué? Porque somos todos los que colaboramos, a veces con solo decir... esto no funciona... o en presentar nuevas ideas, o en reparar algo con defecto... lo importante es participar. Y cuando nos quedamos en el tiempo... es como omitir, quedarse quieto con algo que poderia estar mejor... Por eso dije que sinceramente, no entendia el por qué ? Y trabajar en UNICODE, para mi es lo mejor que hay, principalmente para nosotros que tenemos caracteres diferenciados al ingles. Y más con la WEB que está alli tomando cuenta cada vez más con aplicaciones.

Claudio nos brindó una preciosa oportunidad de usar UNICODE por primera vez en la história del lenguaje xBase en Windows. Somos los primeros. :D

Por qué desperdiciar tiempo y oportunidad. Piensalo con calma, invertir en uno mismo, es lo que todos debemos hacer...
HMGing a better world
"Matter tells space how to curve, space tells matter how to move."
Albert Einstein
User avatar
edufloriv
Posts: 238
Joined: Thu Nov 08, 2012 3:42 am
DBs Used: DBF, MariaDB, MySQL, MSSQL, MariaDB
Location: PERU

Re: Imprimir PDF en Win XP

Post by edufloriv »

Tienes toda la razón amigo. Ahora más bien quiero ver que hay de nuevo en la nueva versión ja ja ja ja. Gracias por tus consejos. Un abrazo fraterno.

Eduardo Flores Rivas


LIMA - PERU
Post Reply