Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / lazarus-es / 2013-08

impresion en red

42 messages · 9 people · –

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Paola Bruccoleri

Hola todos..
estoy usando para imprimir en una tickeadora de matriz la forma raw (unidad Printers).
El sistema tiene en una tabla los nombres de las impresoras donde debe imprimir, porque seg�n sea un comprobante u otro, son diferentes tickeadoras.

       cImpresora:= qryImpresoras.FieldByName('path').AsString;
       SeleccionarImpresora(cImpresora);
       Printer.RawMode := True;
       Printer.BeginDoc;
       .......
       Printer.EndDoc;
       Printer.RawMode := false;
procedure SeleccionarImpresora(Nombre: String);
var
   Index: Integer;
begin
   Index := Printer.Printers.IndexOf(Nombre);
   if Index  -1 then
     Printer.PrinterIndex := Index;
end;

En la pc de prueba donde tengo instalada f�sicamente la tickeadora, instal� una gen�rica solo texto y la compart�. El nombre es \\pc1\prueba y ese es el nombre (campo path) que tengo en la tabla. Desde otra pc instalo esa impresora.. todo como siempre vamos....

Si mando a imprimir desde la pc de la red, imprime correctamente, PERO, si imprimo desde la impresora donde est� f�sicamente conectada no.

Quiz�s no est� funcionando esto de "seleccionar impresora"...

Prob� poner en la tabla en el path: "prueba" (o sea, solo el nombre de la impresora)
Y ahora pasa exactamente al rev�s... solo imprime desde la pc donde est� conectada f�sicamente y desde la otra obviamente no.

Deber�a imprimir siempre con el nombre \\pc1\prueba, sea de donde sea....

Alguna forma de solucionarlo???
muchas gracias!
byeeeeeeeeee

Reply by email

Martin Gomez
to Paola Bruccoleri

No se si es la mejor soluci�n, pero desde una ventana de comandos puedes probar hacer un NET USE \\PC1\PRUEBA LPT1: e imprimir en LPT1:

2013/8/26 Paola Bruccoleri <pbruccoleri en adinet.com.uy>

Show quoted text 58 lines
Hola todos.. estoy usando para imprimir en una tickeadora de matriz la forma raw (unidad Printers). El sistema tiene en una tabla los nombres de las impresoras donde debe imprimir, porque seg�n sea un comprobante u otro, son diferentes tickeadoras. cImpresora:= qryImpresoras.FieldByName('**path').AsString; SeleccionarImpresora(**cImpresora); Printer.RawMode := True; Printer.BeginDoc; ....... Printer.EndDoc; Printer.RawMode := false; procedure SeleccionarImpresora(Nombre: String); var Index: Integer; begin Index := Printer.Printers.IndexOf(**Nombre); if Index -1 then Printer.PrinterIndex := Index; end; En la pc de prueba donde tengo instalada f�sicamente la tickeadora, instal� una gen�rica solo texto y la compart�. El nombre es \\pc1\prueba y ese es el nombre (campo path) que tengo en la tabla. Desde otra pc instalo esa impresora.. todo como siempre vamos.... Si mando a imprimir desde la pc de la red, imprime correctamente, PERO, si imprimo desde la impresora donde est� f�sicamente conectada no. Quiz�s no est� funcionando esto de "seleccionar impresora"... Prob� poner en la tabla en el path: "prueba" (o sea, solo el nombre de la impresora) Y ahora pasa exactamente al rev�s... solo imprime desde la pc donde est� conectada f�sicamente y desde la otra obviamente no. Deber�a imprimir siempre con el nombre \\pc1\prueba, sea de donde sea.... Alguna forma de solucionarlo??? muchas gracias! byeeeeeeeeee ______________________________**_________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.**freepascal.org<Lazarus-es en lists.lazarus.freepascal.org> http://lists.lazarus.**freepascal.org/mailman/**listinfo/lazarus-es<http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es>
Try not to become a man of success but rather to become a man of value. *Albert Einstein* ------------ pr�xima parte ------------ Se ha borrado un adjunto en formato HTML... URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20130826/17e06482/attachment.html>

Reply by email

Paola Bruccoleri
to Martin Gomez

El 26/08/2013 16:18, Martin Gomez escribi�:

No se si es la mejor soluci�n, pero desde una ventana de comandos puedes probar hacer un NET USE \\PC1\PRUEBA LPT1: e imprimir en LPT1:

Hola Mart�n..

es que quer�a evitar eso... y adem�s, xq no me funciona! :) esas tickeadoras son seriales...la conecto al COM1.

el comando mode com1: = lpt1: no me funciona como lo hac�a antes en xp y anteriores... (uso win7 y 8)
no recuerdo ahora el mensaje de error... no estoy en casa ahora para hacer esa prueba nuevamente.

------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20130826/1f293633/attachment.html>

Reply by email

Claudio Romero
to Martin Gomez: No se si es la mejor soluci�n, pero desde una ventana de comandos puedes probar hacer…

Para el objeto printer la impresora siempre debe estar instalada (en Windows en el panel de control) en Linux (en cups), no se fija en los puertos lpt.

Yo probaria una aplicacion sencilla con PrintDialog1 a ver si ves listada las impresoras de cada m�quina

Saludos

El d�a 26 de agosto de 2013 16:18, Martin Gomez <mmgomez en gmail.com> escribi�:

Show quoted text 76 lines
No se si es la mejor soluci�n, pero desde una ventana de comandos puedes probar hacer un NET USE \\PC1\PRUEBA LPT1: e imprimir en LPT1: 2013/8/26 Paola Bruccoleri <pbruccoleri en adinet.com.uy> > > Hola todos.. > estoy usando para imprimir en una tickeadora de matriz la forma raw > (unidad Printers). > El sistema tiene en una tabla los nombres de las impresoras donde debe > imprimir, porque seg�n sea un comprobante u otro, son diferentes > tickeadoras. > > cImpresora:= qryImpresoras.FieldByName('path').AsString; > SeleccionarImpresora(cImpresora); > > Printer.RawMode := True; > Printer.BeginDoc; > ....... > Printer.EndDoc; > Printer.RawMode := false; > > > procedure SeleccionarImpresora(Nombre: String); > var > Index: Integer; > begin > Index := Printer.Printers.IndexOf(Nombre); > > if Index -1 then > Printer.PrinterIndex := Index; > end; > > > En la pc de prueba donde tengo instalada f�sicamente la tickeadora, > instal� una gen�rica solo texto y la compart�. El nombre es \\pc1\prueba y > ese es el nombre (campo path) que tengo en la tabla. Desde otra pc instalo > esa impresora.. todo como siempre vamos.... > > Si mando a imprimir desde la pc de la red, imprime correctamente, PERO, si > imprimo desde la impresora donde est� f�sicamente conectada no. > > Quiz�s no est� funcionando esto de "seleccionar impresora"... > > Prob� poner en la tabla en el path: "prueba" (o sea, solo el nombre de la > impresora) > Y ahora pasa exactamente al rev�s... solo imprime desde la pc donde est� > conectada f�sicamente y desde la otra obviamente no. > > Deber�a imprimir siempre con el nombre \\pc1\prueba, sea de donde sea.... > > Alguna forma de solucionarlo??? > muchas gracias! > byeeeeeeeeee > > > > > > _______________________________________________ > Lazarus-es mailing list > Lazarus-es en lists.lazarus.freepascal.org > http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es -- Try not to become a man of success but rather to become a man of value. Albert Einstein _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es

Reply by email

Paola Bruccoleri
to Claudio Romero

El 26/08/2013 16:26, Claudio Romero escribi�:

Show quoted text 8 lines
Para el objeto printer la impresora siempre debe estar instalada (en Windows en el panel de control) en Linux (en cups), no se fija en los puertos lpt. Yo probaria una aplicacion sencilla con PrintDialog1 a ver si ves listada las impresoras de cada m�quina

Hola Claudio
si, la impresora est� instalada en windows en ambas m�quinas como cq impresora...
probar� lo que me dices a ver...

Reply by email

Paola Bruccoleri
to Claudio Romero: Para el objeto printer la impresora siempre debe estar instalada (en Windows en el panel…

El 26/08/2013 16:26, Claudio Romero escribi�:

Show quoted text 8 lines
Para el objeto printer la impresora siempre debe estar instalada (en Windows en el panel de control) en Linux (en cups), no se fija en los puertos lpt. Yo probaria una aplicacion sencilla con PrintDialog1 a ver si ves listada las impresoras de cada m�quina

Hola Claudio..
si, estoy probando ahora en ambas m�quinas:
en la pc de la red, en la lista de impresoras veo \\pc1\prueba.. ejecuto el mismo programa en la pc donde est� conectada f�sicamente la impresora, y en la lista de ellas veo "prueba"

igual no entiendo porqu� all� Printers no imprime a \\pc1\prueba siendo PC1 el nombre de la misma PC...

si no existe otra forma de resolver esto, tendre q inventar algo como un ini en cada m�quina con el nombre verdadero de la impresora..

byeeeeeeeeeeeee

Reply by email

Claudio Romero
to Paola Bruccoleri

Creo que es algo de Windows, \\pc1\prueba es el recurso de red, y la m�quina local nunca la va a poner asi. Lo mejor es un archivo .ini donde guardes los parametros locales de cada m�quina, ahi cambias el nombre de la impresora facilmente.
Se puede chequear si el nombre de una impresora existe, y si no existe te sale dialogo para elegirla o configurarla, y la dejas grabada en el .ini. Sino la escribis directamente, y listo

El d�a 27 de agosto de 2013 15:55, Paola Bruccoleri <pbruccoleri en adinet.com.uy> escribi�:

Show quoted text 32 lines
El 26/08/2013 16:26, Claudio Romero escribi�: > > Para el objeto printer la impresora siempre debe estar instalada (en > > Windows en el panel de control) en Linux (en cups), no se fija en los > puertos lpt. > > Yo probaria una aplicacion sencilla con PrintDialog1 a ver si ves > listada las impresoras de cada m�quina > > Hola Claudio.. si, estoy probando ahora en ambas m�quinas: en la pc de la red, en la lista de impresoras veo \\pc1\prueba.. ejecuto el mismo programa en la pc donde est� conectada f�sicamente la impresora, y en la lista de ellas veo "prueba" igual no entiendo porqu� all� Printers no imprime a \\pc1\prueba siendo PC1 el nombre de la misma PC... si no existe otra forma de resolver esto, tendre q inventar algo como un ini en cada m�quina con el nombre verdadero de la impresora.. byeeeeeeeeeeeee _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es

Reply by email

Paola Bruccoleri
to Claudio Romero

El 27/08/2013 16:00, Claudio Romero escribi�:

Show quoted text 9 lines
Creo que es algo de Windows, \\pc1\prueba es el recurso de red, y la m�quina local nunca la va a poner asi. Lo mejor es un archivo .ini donde guardes los parametros locales de cada m�quina, ahi cambias el nombre de la impresora facilmente. Se puede chequear si el nombre de una impresora existe, y si no existe te sale dialogo para elegirla o configurarla, y la dejas grabada en el .ini. Sino la escribis directamente, y listo

si, si no hay m�s remedio! :(
es que usando por ejemplo harbour, que tiene forma de imprimir en formato raw (son funciones nuevas q no exist�an en clipper), pod�s sencillamente poner el nombre del recurso de red de la forma \\pc1\prueba e imprime desde cualquier lado, sea impresora de red o local...por eso siempre imagin� que aqu� no pasaba nada y el otro d�a fue la primera vez que imprim� desde la m�quina donde est� la impresora local.

byeeeeeeeeeeeee

Reply by email

Martin Gomez
to Paola Bruccoleri

2013/8/27 Paola Bruccoleri <pbruccoleri en adinet.com.uy>

Show quoted text 8 lines
si, si no hay m�s remedio! :( es que usando por ejemplo harbour, que tiene forma de imprimir en formato raw (son funciones nuevas q no exist�an en clipper), pod�s sencillamente poner el nombre del recurso de red de la forma \\pc1\prueba e imprime desde cualquier lado, sea impresora de red o local...por eso siempre imagin� que aqu� no pasaba nada y el otro d�a fue la primera vez que imprim� desde la m�quina donde est� la impresora local.

?Quizas puedas idear una rutina que busque la impresora y el nombre de la PC y si coinciden use solo el nombre de la impresora local?

En vez del INI, estar�as automatizando... no se que tan sencillo ser�a, para m� el INI es m�s vers�til.

Try not to become a man of success but rather to become a man of value. *Albert Einstein* ------------ pr�xima parte ------------ Se ha borrado un adjunto en formato HTML... URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20130827/93431f4b/attachment.html>

Reply by email

Paola Bruccoleri
to Martin Gomez

El 27/08/2013 16:16, Martin Gomez escribi�:

Show quoted text 20 lines
2013/8/27 Paola Bruccoleri <pbruccoleri en adinet.com.uy <mailto:pbruccoleri en adinet.com.uy>> si, si no hay m�s remedio! :( es que usando por ejemplo harbour, que tiene forma de imprimir en formato raw (son funciones nuevas q no exist�an en clipper), pod�s sencillamente poner el nombre del recurso de red de la forma \\pc1\prueba e imprime desde cualquier lado, sea impresora de red o local...por eso siempre imagin� que aqu� no pasaba nada y el otro d�a fue la primera vez que imprim� desde la m�quina donde est� la impresora local. ?Quizas puedas idear una rutina que busque la impresora y el nombre de la PC y si coinciden use solo el nombre de la impresora local? En vez del INI, estar�as automatizando... no se que tan sencillo ser�a, para m� el INI es m�s vers�til.

si, en eso tienes raz�n...
�y c�mo hacen los que usan Printers para imprimir en red? o ya nadie lo usa?? :)

------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20130827/85c4f01d/attachment-0001.html>

Reply by email

Claudio Romero
to Paola Bruccoleri

Para imprimir en red, con Printers debes tener la impresora instalada en Windows o Linux. En DOS, Delphi se puede imprimir directo al puerto LPT1 o \\pc1\prueba.
Esto en DOS funciona copy /b ejem.txt \\pc1\prueba. Pero por empezar eso no es multiplataforma, ya las impresoras dependen del sistema operativo, a su vez linux puede usar cups, lpr.
El paquete lazreport usa el objeto printers.

El d�a 27 de agosto de 2013 16:19, Paola Bruccoleri <pbruccoleri en adinet.com.uy> escribi�:

Show quoted text 30 lines
El 27/08/2013 16:16, Martin Gomez escribi�: 2013/8/27 Paola Bruccoleri <pbruccoleri en adinet.com.uy> > > si, si no hay m�s remedio! :( > es que usando por ejemplo harbour, que tiene forma de imprimir en formato > raw (son funciones nuevas q no exist�an en clipper), pod�s sencillamente > poner el nombre del recurso de red de la forma \\pc1\prueba e imprime desde > cualquier lado, sea impresora de red o local...por eso siempre imagin� que > aqu� no pasaba nada y el otro d�a fue la primera vez que imprim� desde la > m�quina donde est� la impresora local. Quizas puedas idear una rutina que busque la impresora y el nombre de la PC y si coinciden use solo el nombre de la impresora local? En vez del INI, estar�as automatizando... no se que tan sencillo ser�a, para m� el INI es m�s vers�til. si, en eso tienes raz�n... �y c�mo hacen los que usan Printers para imprimir en red? o ya nadie lo usa?? :) _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es

Reply by email

Maxi
to Claudio Romero

para mas facil deberias tener instalada la impresora como predeterminada, y tomar la primera impresora. Eso en delphi y lazarus lo hace.

El d�a 27 de agosto de 2013 16:28, Claudio Romero <clauslack en gmail.com> escribi�:

Show quoted text 45 lines
Para imprimir en red, con Printers debes tener la impresora instalada en Windows o Linux. En DOS, Delphi se puede imprimir directo al puerto LPT1 o \\pc1\prueba. Esto en DOS funciona copy /b ejem.txt \\pc1\prueba. Pero por empezar eso no es multiplataforma, ya las impresoras dependen del sistema operativo, a su vez linux puede usar cups, lpr. El paquete lazreport usa el objeto printers. El d�a 27 de agosto de 2013 16:19, Paola Bruccoleri <pbruccoleri en adinet.com.uy> escribi�: > El 27/08/2013 16:16, Martin Gomez escribi�: > > > 2013/8/27 Paola Bruccoleri <pbruccoleri en adinet.com.uy> >> >> si, si no hay m�s remedio! :( >> es que usando por ejemplo harbour, que tiene forma de imprimir en formato >> raw (son funciones nuevas q no exist�an en clipper), pod�s sencillamente >> poner el nombre del recurso de red de la forma \\pc1\prueba e imprime desde >> cualquier lado, sea impresora de red o local...por eso siempre imagin� que >> aqu� no pasaba nada y el otro d�a fue la primera vez que imprim� desde la >> m�quina donde est� la impresora local. > > > Quizas puedas idear una rutina que busque la impresora y el nombre de la PC > y si coinciden use solo el nombre de la impresora local? > > En vez del INI, estar�as automatizando... no se que tan sencillo ser�a, para > m� el INI es m�s vers�til. > > si, en eso tienes raz�n... > �y c�mo hacen los que usan Printers para imprimir en red? o ya nadie lo > usa?? :) > > > _______________________________________________ > Lazarus-es mailing list > Lazarus-es en lists.lazarus.freepascal.org > http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es > _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es
El que pregunta aprende, y el que contesta aprende a responder. No a la obsolecencia programada: http://www.rtve.es/noticias/20110104/productos-consumo-duran-cada-vez-menos/392498.shtml Linux User #495070 http://domonetic.com/blog

Reply by email

Paola Bruccoleri
to Maxi

El 27/08/2013 16:35, Maxi escribi�:

para mas facil deberias tener instalada la impresora como predeterminada, y tomar la primera impresora. Eso en delphi y lazarus lo hace.

si, pero el tema es que son 3 impresoras de tickets, q se usan para imprimir diferentes cosas...

Reply by email

Martin Gomez
to Paola Bruccoleri

2013/8/27 Paola Bruccoleri <pbruccoleri en adinet.com.uy>

si, pero el tema es que son 3 impresoras de tickets, q se usan para imprimir diferentes cosas...

Lo que no entiendo es porque tenes que poner \\PC\Impresora si al instalarla en el "otro" Windows la podes acceder por nombre como si fuese una impresora local (y que de la red se encarguen los duendes de Microsoft, me explico?)

?El truco ser�a que todas las impresoras se instalen con el mismo nombre en todas las PC... configuraci�n en vez de programaci�n.?

Try not to become a man of success but rather to become a man of value. *Albert Einstein* ------------ pr�xima parte ------------ Se ha borrado un adjunto en formato HTML... URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20130827/1deb06f6/attachment.html>

Reply by email

Paola Bruccoleri
to Martin Gomez

El 27/08/2013 17:22, Martin Gomez escribi�:

Show quoted text 16 lines
2013/8/27 Paola Bruccoleri <pbruccoleri en adinet.com.uy <mailto:pbruccoleri en adinet.com.uy>> si, pero el tema es que son 3 impresoras de tickets, q se usan para imprimir diferentes cosas... Lo que no entiendo es porque tenes que poner \\PC\Impresora si al instalarla en el "otro" Windows la podes acceder por nombre como si fuese una impresora local (y que de la red se encarguen los duendes de Microsoft, me explico?) ?El truco ser�a que todas las impresoras se instalen con el mismo nombre en todas las PC... configuraci�n en vez de programaci�n.?

Hola MArt�n..
si, te entiendo, pero con Printers esa idea no funciona!

Vuelvo a explicar: tengo un archivo de configuraci�n, donde guardo en que impresora se imprime que cosa.
El sistema, a la hora de imprimir sabe que es lo que va a imprimir, busca la impresora correspondiente en la tabla y manda a imprimir. El usuario NO puede andar eligiendo la impresora, debe ser autom�tico.

En mi m�quina (donde NO est� esa impresora conectada) la tengo instalada y se llama "prueba". En la m�quina donde est� conectada tambi�n se llama "prueba"
Pero si estoy en mi m�quina, NO imprime si tengo en la tabla como nombre de impresora "prueba".. imprime si se llama "\\pc1\prueba"

Claro que si uso por ejemplo el bloc de notas, no tengo problemas de imprimir a "prueba"
se entiende ahora?

------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20130827/1f9dbc7b/attachment.html>

Reply by email

José Mejuto
to Paola Bruccoleri

El 27/08/2013 22:57, Paola Bruccoleri escribi�:

Show quoted text 5 lines
En mi m�quina (donde NO est� esa impresora conectada) la tengo instalada y se llama "prueba". En la m�quina donde est� conectada tambi�n se llama "prueba" Pero si estoy en mi m�quina, NO imprime si tengo en la tabla como nombre de impresora "prueba".. imprime si se llama "\\pc1\prueba"

Hola,

� Has probado a ver si con la IP funciona ?

\\127.0.0.1\prueba

Lo digo por si el problema es de nombres. Sea en local o en remoto "\\pc1\prueba" deber�a de funcionar tal y como dices ya que es un recurso compartido para toda la red.

� Que sistema operativo usas en las m�quinas ? � Eres usuario o administrador ? � Hay firewall instalado ?

Reply by email

Paola Bruccoleri
to José Mejuto

El 27/08/2013 19:04, Jos� Mejuto escribi�:

Show quoted text 20 lines
El 27/08/2013 22:57, Paola Bruccoleri escribi�: > En mi m�quina (donde NO est� esa impresora conectada) la tengo instalada > y se llama "prueba". En la m�quina donde est� conectada tambi�n se llama > "prueba" > Pero si estoy en mi m�quina, NO imprime si tengo en la tabla como nombre > de impresora "prueba".. imprime si se llama "\\pc1\prueba" Hola, � Has probado a ver si con la IP funciona ? \\127.0.0.1\prueba Lo digo por si el problema es de nombres. Sea en local o en remoto "\\pc1\prueba" deber�a de funcionar tal y como dices ya que es un recurso compartido para toda la red. � Que sistema operativo usas en las m�quinas ? � Eres usuario o administrador ? � Hay firewall instalado ?

Hola Jos�..
uso win8 y win7 (donde est� conectada la impresora)

si uso \\192.168.0.2\prueba en vez de \\pc1\prueba (esa es la ip de PC1), NO imprime nada desde la maq de la red
desde la maq con la impre local.. me la imprime x la predeterminada que es OTRA impresora q nada tiene que ver (es de matriz)

me logueo como administrador en ambas m�quinas; el firewall est� desactivado tb en ambas (para probar..)

me parece que a Printers le gusta solo que le coloquen el NOMbre de la impresora, xq yo hago esto:

   Index := Printer.Printers.IndexOf(Nombre);
   if Index  -1 then
      begin
        Printer.PrinterIndex := Index;
      end;

Encontr� esto de un foro de delphi:
http://www.clubdelphi.com/foros/showthread.php?t=77737 voy a ver si pruebo algo con esto:

if not OpenPrinter(PChar('\\ethan-PC\caja'), Handle,nil)then begin

byeeee

Reply by email

Jorge M. Martinez Saez
to Paola Bruccoleri: El 26/08/2013 16:26, Claudio Romero escribi�: Hola Claudio si, la impresora est�…

El 26-08-2013 15:28, Paola Bruccoleri escribi�:

Show quoted text 11 lines
El 26/08/2013 16:26, Claudio Romero escribi�: > Para el objeto printer la impresora siempre debe estar instalada (en > Windows en el panel de control) en Linux (en cups), no se fija en los > puertos lpt. > > Yo probaria una aplicacion sencilla con PrintDialog1 a ver si ves > listada las impresoras de cada m�quina > s > Hola Claudio si, la impresora est� instalada en windows en ambas m�quinas como cq

impresora...

Show quoted text 9 lines
probar� lo que me dices a ver... _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es

Hola Paola:

No hace mucho tiempo tuve exactamente el mismo problema al compartir una impresora matricial en lpt1, la soluci�n te la comento:

En el pc en donde tienes instalada la impresora, revisa si tienes el archivo "hosts" que se encuentra en c:\windows\system32\drivers\etc

En este archivo deber�a aparecer el nombre del pc, si NO aparece, lo agregas con direccion de loopback 127.0.1.1 y luego pruebas haciendo ping a este nombre.

Esto me sirvi� para poder imprimir usando el argumento :

\\nombre_de_pc\impresora

desde cualquier pc, obviamente tambi�n desde el mismo en el que est� instalada...

Lo mismo us� para compartir una base de datos mysql..... pero eso ya es harina de otro costal....

Saludos.

Reply by email

Paola Bruccoleri
to Jorge M. Martinez Saez
Show quoted text 23 lines
> Hola Paola: No hace mucho tiempo tuve exactamente el mismo problema al compartir una impresora matricial en lpt1, la soluci�n te la comento: En el pc en donde tienes instalada la impresora, revisa si tienes el archivo "hosts" que se encuentra en c:\windows\system32\drivers\etc En este archivo deber�a aparecer el nombre del pc, si NO aparece, lo agregas con direccion de loopback 127.0.1.1 y luego pruebas haciendo ping a este nombre. Esto me sirvi� para poder imprimir usando el argumento : \\nombre_de_pc\impresora desde cualquier pc, obviamente tambi�n desde el mismo en el que est� instalada... Lo mismo us� para compartir una base de datos mysql..... pero eso ya es harina de otro costal....

Hola Jorge..
termino de hacer la prueba! :( snif.... (puse 127.0.0.1, NO 127.0.1.1) y no funcion�... por las dudas reinici� las 2 m�q. y lo mismo.. En la m�q donde est� instalada la impresora, me sale por la predeterminada... (q no es la correcta)
igual muchas gracias.. ma�ana seguir� investigando m�s.. byeeeeeeeeeeeeeee

Reply by email

Maxi
to Paola Bruccoleri

El 27/08/2013 21:08, "Paola Bruccoleri" <pbruccoleri en adinet.com.uy> escribi�:

Show quoted text 28 lines
> > > Hola Paola: > > No hace mucho tiempo tuve exactamente el mismo problema al compartir una > impresora matricial en lpt1, la soluci�n te la comento: > > En el pc en donde tienes instalada la impresora, revisa si tienes el > archivo "hosts" que se encuentra en c:\windows\system32\drivers\etc > > En este archivo deber�a aparecer el nombre del pc, si NO aparece, lo > agregas con direccion de loopback 127.0.1.1 y luego pruebas > haciendo ping a este nombre. > > Esto me sirvi� para poder imprimir usando el argumento : > > \\nombre_de_pc\impresora > > desde cualquier pc, obviamente tambi�n desde el mismo en el que est� > instalada... > > Lo mismo us� para compartir una base de datos mysql..... pero eso ya es > harina de otro costal.... > Hola Jorge.. termino de hacer la prueba! :( snif.... (puse 127.0.0.1, NO 127.0.1.1) y no funcion�... por las dudas reinici� las 2 m�q. y lo mismo.. En la

m�q donde est� instalada la impresora, me sale por la predeterminada... (q no es la correcta)

Show quoted text 11 lines
igual muchas gracias.. ma�ana seguir� investigando m�s.. byeeeeeeeeeeeeeee _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es

Me parece que la soluci�n estaba como coment� alguien antes. Cundo instalas una impresora local o remota para tu software es local. Si usas un di�logo de cualquier software o reporteador ver�s que aparecen la que tengas.
Al hacer \\pc1\prueba estas tratando de acceder a un recurso compartido mediante pippe.
Haz la prueba con algo simple que habr� un di�logo que elija la impresora y juega con los valores devueltos
------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20130827/e69e2b01/attachment.html>

Reply by email

Maxi
to Maxi

El d�a 27 de agosto de 2013 21:21, Maxi <maximiliano.duarte en gmail.com> escribi�:

Show quoted text 55 lines
El 27/08/2013 21:08, "Paola Bruccoleri" <pbruccoleri en adinet.com.uy> escribi�: > > >> > >> Hola Paola: >> >> No hace mucho tiempo tuve exactamente el mismo problema al compartir una >> impresora matricial en lpt1, la soluci�n te la comento: >> >> En el pc en donde tienes instalada la impresora, revisa si tienes el >> archivo "hosts" que se encuentra en c:\windows\system32\drivers\etc >> >> En este archivo deber�a aparecer el nombre del pc, si NO aparece, lo >> agregas con direccion de loopback 127.0.1.1 y luego pruebas >> haciendo ping a este nombre. >> >> Esto me sirvi� para poder imprimir usando el argumento : >> >> \\nombre_de_pc\impresora >> >> desde cualquier pc, obviamente tambi�n desde el mismo en el que est� >> instalada... >> >> Lo mismo us� para compartir una base de datos mysql..... pero eso ya es >> harina de otro costal.... >> > Hola Jorge.. > termino de hacer la prueba! :( snif.... (puse 127.0.0.1, NO 127.0.1.1) > y no funcion�... por las dudas reinici� las 2 m�q. y lo mismo.. En la m�q > donde est� instalada la impresora, me sale por la predeterminada... (q no es > la correcta) > igual muchas gracias.. ma�ana seguir� investigando m�s.. > byeeeeeeeeeeeeeee > > > > > > _______________________________________________ > Lazarus-es mailing list > Lazarus-es en lists.lazarus.freepascal.org > http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es Me parece que la soluci�n estaba como coment� alguien antes. Cundo instalas una impresora local o remota para tu software es local. Si usas un di�logo de cualquier software o reporteador ver�s que aparecen la que tengas. Al hacer \\pc1\prueba estas tratando de acceder a un recurso compartido mediante pippe. Haz la prueba con algo simple que habr� un di�logo que elija la impresora y juega con los valores devueltos

prueba hacer esto en un fromulario y un memo

  Memo1.lines.Assign(Printer.Printers);
El que pregunta aprende, y el que contesta aprende a responder. No a la obsolecencia programada: http://www.rtve.es/noticias/20110104/productos-consumo-duran-cada-vez-menos/392498.shtml Linux User #495070 http://domonetic.com/blog

Reply by email

Martin Gomez
to Maxi

Ahora que mencionas Windows 8 y Windows 7... est�s usando un Workgroup o un HomeGroup?
Por otro lado, en las propiedades de la impresora que se comparte hay una solapa "Compartir con...", quiz�s te falte el permiso para que se comparta con la misma PC que la tiene conectada?

Lo que dijo Maxi es una buena idea, no sea que el Windows te reporte la impresora remota como "Prueba en PC1" o algo por el estilo.

2013/8/27 Maxi <maximiliano.duarte en gmail.com>

Show quoted text 83 lines
El d�a 27 de agosto de 2013 21:21, Maxi <maximiliano.duarte en gmail.com> escribi�: > > El 27/08/2013 21:08, "Paola Bruccoleri" <pbruccoleri en adinet.com.uy> > escribi�: > > >> >> >>> > >>> Hola Paola: >>> >>> No hace mucho tiempo tuve exactamente el mismo problema al compartir una >>> impresora matricial en lpt1, la soluci�n te la comento: >>> >>> En el pc en donde tienes instalada la impresora, revisa si tienes el >>> archivo "hosts" que se encuentra en c:\windows\system32\drivers\etc >>> >>> En este archivo deber�a aparecer el nombre del pc, si NO aparece, lo >>> agregas con direccion de loopback 127.0.1.1 y luego pruebas >>> haciendo ping a este nombre. >>> >>> Esto me sirvi� para poder imprimir usando el argumento : >>> >>> \\nombre_de_pc\impresora >>> >>> desde cualquier pc, obviamente tambi�n desde el mismo en el que est� >>> instalada... >>> >>> Lo mismo us� para compartir una base de datos mysql..... pero eso ya es >>> harina de otro costal.... >>> >> Hola Jorge.. >> termino de hacer la prueba! :( snif.... (puse 127.0.0.1, NO 127.0.1.1) >> y no funcion�... por las dudas reinici� las 2 m�q. y lo mismo.. En la m�q >> donde est� instalada la impresora, me sale por la predeterminada... (q no es >> la correcta) >> igual muchas gracias.. ma�ana seguir� investigando m�s.. >> byeeeeeeeeeeeeeee >> >> >> >> >> >> _______________________________________________ >> Lazarus-es mailing list >> Lazarus-es en lists.lazarus.freepascal.org >> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es > > Me parece que la soluci�n estaba como coment� alguien antes. > Cundo instalas una impresora local o remota para tu software es local. > Si usas un di�logo de cualquier software o reporteador ver�s que aparecen la > que tengas. > Al hacer \\pc1\prueba estas tratando de acceder a un recurso compartido > mediante pippe. > Haz la prueba con algo simple que habr� un di�logo que elija la impresora y > juega con los valores devueltos prueba hacer esto en un fromulario y un memo Memo1.lines.Assign(Printer.Printers); -- El que pregunta aprende, y el que contesta aprende a responder. No a la obsolecencia programada: http://www.rtve.es/noticias/20110104/productos-consumo-duran-cada-vez-menos/392498.shtml Linux User #495070 http://domonetic.com/blog _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es
Try not to become a man of success but rather to become a man of value. *Albert Einstein* ------------ pr�xima parte ------------ Se ha borrado un adjunto en formato HTML... URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20130827/2a8f73a5/attachment-0001.html>

Reply by email

Rafael Bidegain
to Paola Bruccoleri: Hola todos.. estoy usando para imprimir en una tickeadora de matriz la forma raw (unidad…

Hola Paola

El 26 de agosto de 2013 16:04, Paola Bruccoleri
<pbruccoleri en adinet.com.uy>escribi�:

...

Deber�a imprimir siempre con el nombre \\pc1\prueba, sea de donde sea....

yo para salir del paso leer�a el nombre del host donde se est� ejecutando el programa
si el host es pc1 entonces imprimo en prueba
si no imprimo en \\pc1\prueba

eso deber�a funcionar seg�n las pruebas que hiciste.

nota: si con harbour funciona tambien deber�a funcionar con lazarus. quizas sea una tontera pero probaste con el nombre del host en mayusculas?

saludos

Rafael Bidegain Ya que los cuerdos no hablan, hablar� el loco. (The Fool, Padraic Pearse) # yo quiero educaci�n libre. �YA! ------------ pr�xima parte ------------ Se ha borrado un adjunto en formato HTML... URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20130827/744c8d1a/attachment.html>

Reply by email

Paola Bruccoleri
to Maxi: El d�a 27 de agosto de 2013 21:21, Maxi <maximiliano.duarte en gmail.com> escribi�:…

El 27/08/2013 21:54, Maxi escribi�:

Show quoted text 13 lines
> Me parece que la soluci�n estaba como coment� alguien antes. > Cundo instalas una impresora local o remota para tu software es local. > Si usas un di�logo de cualquier software o reporteador ver�s que aparecen la > que tengas. > Al hacer \\pc1\prueba estas tratando de acceder a un recurso compartido > mediante pippe. > Haz la prueba con algo simple que habr� un di�logo que elija la impresora y > juega con los valores devueltos prueba hacer esto en un fromulario y un memo Memo1.lines.Assign(Printer.Printers);

Hola todos..
el asunto est� en qu� nombre te devuelve Printers.. eso ya lo hab�a probado, vean:
hice un programita de prueba con la sugerencia de MAxi. Si lo ejecuto en mi m�quina:

Button1 abre el di�logo de las impresoras: (PrintDialog1.Execute;)

Si lo ejecuto donde est� f�sicamente conectada "prueba":

No es una red configurada como dominio, sino como grupo de trabajo. La imresora est� compartida como cualquier otra.
Reci�n hice una prueba desde otro programa y no tengo dramas.

El asunto es la automatizaci�n de las impresiones en red.. generalmente hay muchos listados donde simplemente hacemos el preview y el usuario al querer imprimir elige la impresora desde el di�logo.. pero cuando hay facturaci�n, cobros, etc, no se puede hacer eso.. No me quedar� m�s remedio que poner esa info en el ini... andar haciendo una funci�n para ver si es host o no para sacarle el nombre de la PC ya no me gusta
No se si hay m�s info sobre Printers por ah� para leer.... byeeeeeeeeeeee

------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20130828/a5f7f03b/attachment-0001.html> ------------ pr�xima parte ------------
A non-text attachment was scrubbed...
Name: dcaghcci.png
Type: image/png
Size: 4682 bytes
Desc: no disponible
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20130828/a5f7f03b/attachment-0004.png> ------------ pr�xima parte ------------
A non-text attachment was scrubbed...
Name: heaiedgd.png
Type: image/png
Size: 11786 bytes
Desc: no disponible
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20130828/a5f7f03b/attachment-0005.png> ------------ pr�xima parte ------------
A non-text attachment was scrubbed...
Name: hjfadccj.png
Type: image/png
Size: 6984 bytes
Desc: no disponible
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20130828/a5f7f03b/attachment-0006.png> ------------ pr�xima parte ------------
A non-text attachment was scrubbed...
Name: jghjechc.png
Type: image/png
Size: 14150 bytes
Desc: no disponible
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20130828/a5f7f03b/attachment-0007.png>

Reply by email

YahooLocal
to Paola Bruccoleri

No podes hacer un net use lpt3: \\Pc1\prueba e instalar la impresora como local?

Cristian Orta
BhiNet Servicios Inform�ticos
Service oficial CX
Fiscales Hasar / Epson
Samsung / Elitronic
(0291) 4532894
(8000) Bah�a Blanca

El 28/08/13 10:21, Paola Bruccoleri escribi�:

Show quoted text 23 lines
No es una red configurada como dominio, sino como grupo de trabajo. La imresora est� compartida como cualquier otra. Reci�n hice una prueba desde otro programa y no tengo dramas. El asunto es la automatizaci�n de las impresiones en red.. generalmente hay muchos listados donde simplemente hacemos el preview y el usuario al querer imprimir elige la impresora desde el di�logo.. pero cuando hay facturaci�n, cobros, etc, no se puede hacer eso.. No me quedar� m�s remedio que poner esa info en el ini... andar haciendo una funci�n para ver si es host o no para sacarle el nombre de la PC ya no me gusta No se si hay m�s info sobre Printers por ah� para leer.... byeeeeeeeeeeee _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es

------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20130828/f795489e/attachment.html>

Reply by email

Jesus Reyes
to Paola Bruccoleri: El 27/08/2013 21:54, Maxi escribi�: Hola todos.. el asunto est� en qu� nombre te…

Dices: Reci�n hice una prueba desde otro programa...

Lo que no dices es que nombre de impresora usaste en ese otro programa.

Seg�n entend�, tienes dos impresoras a las cuales accedes desde todas las m�quinas, incluida la m�quina donde est�n conectadas f�sicamente las impresoras.

Para entendernos mejor, nombremos a la m�quina con las impresoras "la local" y a las otras "las remotas".

Seg�n entend�, la direcci�n de las impresoras no la obtienes de Printer.Printers sino de una base de datos donde dependiendo del uso se selecciona una otra y esto se traduce en un nombre de impresora como \\pc1\prueba en un caso o como \\pc1\casapaola en otro (o era la canon?). Pero �ste nombre se usa indistintamente en la local o en las remotas.

Si es as�, entonces me parece l�gico que puedes imprimir correctamente desde las remotas y te falle en la local, si revisamos las capturas que adjuntaste, en las remotas, la lista impresoras incluyen a ambas impresoras, pero en la local no esta ninguna impresora con su nombre de red (\\pc1\impresora). Es como si trataras de imprimir en una impresora "cualquiernombremedaigual" y esperaras que funcione pues en la local, la lista de impresoras esta perfectamente determinada y solo acepta las impresoras listadas.

Creo que esta ser�a la explicaci�n de por que no funciona. Incluso yo esperar�a una de dos, que al tratar de imprimir en una impresora desconocida arrojara un error o que imprimiera en la impresora predeterminada (Printer.Printers siempre pone la impresora predeterminada al inicio de la lista).

Creo que hay varias formas de solucionar el problema, a parte de que Cristan propone de net use lpt3 etc. que yo no he usado nunca, quiz�s tendr�as que regresar como nombre de impresoras simplemente "prueba" o "casapaola" y dependiendo si estas en la m�quina local usar el nombre tal y como es proporcionado o si estas en las remotas a�adirle el prefijo \\pc1\. �Para esto si es necesario saber el nombre de la PC. Hace tiempo Graeme di� esta soluci�n: http://lists.lazarus.freepascal.org/pipermail/lazarus/2008-November/039959.html

Jesus Reyes A.

P.D.�
NOTA. El mensaje de Paola estuvo retenido pues excedi� el limite de 40 KiB que permite la lista pero como no era mucha la diferencia le he dejado pasar. Para evitar que sus mensajes sean retenidos hasta que la m�quina humana est� disponible traten de no excederse de 40 KB. N�tese que en estos 40 KB se incluye cualquier contenido que se haya citado del mensaje anterior.

Reply by email

Claudio Romero
to Jesus Reyes

Paola, la opci�n mas simple es un archivo INI, asi lo tengo yo en la empresa Ejemplo

config.ini
[Opciones]
Impresora FC=Virtual_PDF_Printer
Impresora Bonos=hp4plus
Impresora Reportes=hp_LaserJet_4200

Lazarus

//Para buscar el n�mero de impresora por el nombre de la misma.
function BuscarImpresora(nombre:string):integer;
var i:integer;
begin
    Result:=-1;
    for i:=0 to Printer.Printers.Count-1 do
    if UpperCase(nombre)=UpperCase(Printer.Printers.Strings[i]) then begin
        Result:=i; exit;
    end;
end;
//
//Leo las impresoras de config.ini cuando arranco la aplicaci�n y
pongo los nros en variables globales
function LeerArchivoParametros:boolean;
var ini:Tinifile;archivo,temp:string;
begin
    archivo:=ExtractFilePath(Application.EXEName)+'config.ini';
    if not FileExists(archivo) then begin
        showmessage('ERROR:no se encuentra el archivo config.ini');
           result:=false;
        exit;
   end;
   ini := TIniFile.Create(archivo);
    with ini do begin
        GNroImpresoFacturas:=BuscarImpresora(ReadString('Opciones',
'Impresora FC',''));
        GNroImpresoraBonos:=BuscarImpresora(ReadString('Opciones',
'Impresora Bonos',''));
        GNroImpresoraReportes:=BuscarImpresora(ReadString('Opciones',
'Impresora Reportes',''));
        if (GNroImpresoFacturas=-1) then GNroImpresoFacturas:=0;
        if (GNroImpresoraBonos=-1) then GNroImpresoraBonos:=0;
        if (GNroImpresoraReportes=-1) then GNroImpresoraReportes:=0;
        Free;
    end;
    result:=true;
end;
//Para imprimir facturas uso el nro de impresora de GNroImpresoFacturas
procedure TForm1.Button1Click(Sender: TObject);
begin
    Printer.PrinterIndex:=GNroImpresoFacturas;
    //imprime con el objeto printer
end;

En tu caso podrias tener en el INI nombres diferentes de impresoras en cada maquina, pero tu aplicaci�n siempre leeria el mismo parametro. Saludos

Reply by email

Paola Bruccoleri
to Claudio Romero

El 28/08/2013 16:27, Claudio Romero escribi�:

Paola, la opci�n mas simple es un archivo INI, asi lo tengo yo en la empresa Ejemplo

Hola Claudio..
si, gracias por tu tip; hace rato ya decid� solucionarlo as�, o sea con un ini. Imlement� una soluci�n parecida a la tuya pero un poco m�s sencilla muchas gracias!

Reply by email

Paola Bruccoleri
to Jesus Reyes: Dices: Reci�n hice una prueba desde otro programa... Lo que no dices es que nombre de…

El 28/08/2013 15:57, Jesus Reyes escribi�:

Show quoted text 44 lines
Dices: Reci�n hice una prueba desde otro programa... Lo que no dices es que nombre de impresora usaste en ese otro programa. Seg�n entend�, tienes dos impresoras a las cuales accedes desde todas las m�quinas, incluida la m�quina donde est�n conectadas f�sicamente las impresoras. Para entendernos mejor, nombremos a la m�quina con las impresoras "la local" y a las otras "las remotas". Seg�n entend�, la direcci�n de las impresoras no la obtienes de Printer.Printers sino de una base de datos donde dependiendo del uso se selecciona una otra y esto se traduce en un nombre de impresora como \\pc1\prueba en un caso o como \\pc1\casapaola en otro (o era la canon?). Pero �ste nombre se usa indistintamente en la local o en las remotas. Si es as�, entonces me parece l�gico que puedes imprimir correctamente desde las remotas y te falle en la local, si revisamos las capturas que adjuntaste, en las remotas, la lista impresoras incluyen a ambas impresoras, pero en la local no esta ninguna impresora con su nombre de red (\\pc1\impresora). Es como si trataras de imprimir en una impresora "cualquiernombremedaigual" y esperaras que funcione pues en la local, la lista de impresoras esta perfectamente determinada y solo acepta las impresoras listadas. Creo que esta ser�a la explicaci�n de por que no funciona. Incluso yo esperar�a una de dos, que al tratar de imprimir en una impresora desconocida arrojara un error o que imprimiera en la impresora predeterminada (Printer.Printers siempre pone la impresora predeterminada al inicio de la lista). Creo que hay varias formas de solucionar el problema, a parte de que Cristan propone de net use lpt3 etc. que yo no he usado nunca, quiz�s tendr�as que regresar como nombre de impresoras simplemente "prueba" o "casapaola" y dependiendo si estas en la m�quina local usar el nombre tal y como es proporcionado o si estas en las remotas a�adirle el prefijo \\pc1\. Para esto si es necesario saber el nombre de la PC. Hace tiempo Graeme di� esta soluci�n: http://lists.lazarus.freepascal.org/pipermail/lazarus/2008-November/039959.html Jesus Reyes A.

Hola Jes�s..
si, me di cuenta q el mensaje estaba retenido; fu� x las capturas de pantalla q hice.. ya sab�a lo de los 40k; gracias igual.

Se que han sido muchos los mensajes en este hilo y por eso se queden atr�s algunos detalles. Obviamente en mi maq y en la otra tengo varias impresoras instaladas; la que pretendo usar es "prueba"...

Por tanto, en mi m�quina tengo una llamada "prueba en pc1" y en la otra simplemente "prueba".
La cosa que Printers me da el nombre diferente seg�n sea local o remota como ya sabemos.

Net use no lo puedo usar; no es un puerto LPTx al q se conecta "prueba" (eso lo uso en otras aplicaciones con otros lenguajes sin problema; no es que no conozca esa soluci�n)

De todas formas ya lo solucion� como coment� en otro mail; aunque preferir�a haber usado mi solui�n inicial.

Voy a probar la funci�n de Graenme a ver que tal para salir de dudas muchas gracias!

------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20130828/f2626a53/attachment.html>

Reply by email

José Mejuto
to Paola Bruccoleri

El 28/08/2013 22:34, Paola Bruccoleri escribi�:

Show quoted text 9 lines
Se que han sido muchos los mensajes en este hilo y por eso se queden atr�s algunos detalles. Obviamente en mi maq y en la otra tengo varias impresoras instaladas; la que pretendo usar es "prueba"... Por tanto, en mi m�quina tengo una llamada "prueba en pc1" y en la otra simplemente "prueba". La cosa que Printers me da el nombre diferente seg�n sea local o remota como ya sabemos.

Hola,

Vistas las capturas ya entiendo lo que sucede, en todas las m�quinas menos la "local" tienes instalada la impresora como un recurso de red.

Lo que se suele hacer muchas veces cuando hay impresoras de tickets, facturas, POS, etc... es crear impresoras con nombres a medida. Esto es en cada m�quina creas una impresora de red llamada "Tickets Salida", por ejemplo, y la enlazas a la impresora remota correspondiente. De este modo en todas las m�quinas tendr�s una impresora llamada "Tickets Salida" que usar�s para los tickets. Si una m�quina necesita imprimir los tickets de salida en otra impresora, por el motivo que sea, s�lo hay que borrar esa impresora e instalar una nueva de red con el mismo nombre "Tickets Salida", pero apuntando a otro recurso de red.

Yo lo he hecho as� en alg�n cliente y me resulta bastante c�modo, eso si, ninguna imprimia en modo RAW, todas eran impresoras Windows en modo gr�fico.

Reply by email

Paola Bruccoleri
to José Mejuto

El 28/08/2013 19:13, Jos� Mejuto escribi�:

Show quoted text 21 lines
El 28/08/2013 22:34, Paola Bruccoleri escribi�: > Se que han sido muchos los mensajes en este hilo y por eso se queden > atr�s algunos detalles. Obviamente en mi maq y en la otra tengo varias > impresoras instaladas; la que pretendo usar es "prueba"... > > Por tanto, en mi m�quina tengo una llamada "prueba en pc1" y en la otra > simplemente "prueba". > La cosa que Printers me da el nombre diferente seg�n sea local o remota > como ya sabemos. > Hola, Vistas las capturas ya entiendo lo que sucede, en todas las m�quinas menos la "local" tienes instalada la impresora como un recurso de red. Lo que se suele hacer muchas veces cuando hay impresoras de tickets, facturas, POS, etc... es crear impresoras con nombres a medida. Esto es en cada m�quina creas una impresora de red llamada "Tickets Salida", por ejemplo, y la enlazas a la impresora remota correspondiente.

y c�mo la enlazo a la remota?? prob� de instalar una impresora "local" gen�rica solo texto llamada "prueba" en mi m�quina, pero no veo como enlazarla a la de PC1.

De todas formas, en este momento mi impresora de red se llama de la misma forma..

------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20130828/6d46641d/attachment-0001.html> ------------ pr�xima parte ------------
A non-text attachment was scrubbed...
Name: bcejjbba.png
Type: image/png
Size: 24275 bytes
Desc: no disponible
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20130828/6d46641d/attachment-0001.png>

Reply by email

Paola Bruccoleri
to Jesus Reyes: Dices: Reci�n hice una prueba desde otro programa... Lo que no dices es que nombre de…

Hola Jes�s..

Para esto si es necesario saber el nombre de la PC. Hace tiempo

Graeme di� esta soluci�n:
http://lists.lazarus.freepascal.org/pipermail/lazarus/2008-November/039959.html

estoy probando esas funciones del ejemplo, pero al agregar a un proyecto nuevo la unidad Unix sale este mensaje:

unit1.pas(9,23) Fatal: Can not find unit Unix used by Unit1.

no se que podr� faltar indicarle....
(Lazarus 1.0.8 r40573 FPC 2.6.2 i386-win32-win32/win64) muchas gracias!

Reply by email

Maxi
to Paola Bruccoleri

Paola pasame, el ejemplo para leer las impresoras y lo pruebo ma�ana en el trabajo he tengo remoto hasta las fotocopiadoras. Creo saber de donde viene el problema.
El error de la unidad unix debe ser fuentes de una versi�n vieja de laz. Quita todos los uses y pone los necesarios
El 28/08/2013 20:14, "Paola Bruccoleri" <pbruccoleri en adinet.com.uy> escribi�:

Show quoted text 21 lines
Hola Jes�s.. > Para esto si es necesario saber el nombre de la PC. Hace tiempo Graeme di� esta soluci�n: http://lists.lazarus.**freepascal.org/pipermail/** lazarus/2008-November/039959.**html<http://lists.lazarus.freepascal.org/pipermail/lazarus/2008-November/039959.html> estoy probando esas funciones del ejemplo, pero al agregar a un proyecto nuevo la unidad Unix sale este mensaje: unit1.pas(9,23) Fatal: Can not find unit Unix used by Unit1. no se que podr� faltar indicarle.... (Lazarus 1.0.8 r40573 FPC 2.6.2 i386-win32-win32/win64) muchas gracias! ______________________________**_________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.**freepascal.org<Lazarus-es en lists.lazarus.freepascal.org> http://lists.lazarus.**freepascal.org/mailman/**listinfo/lazarus-es<http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es>

------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20130828/3eeab149/attachment.html>

Reply by email

Maxi
to Maxi

He estado haciendo un par de pruebas, en delphi y en lazarus. Y encontr� un par de cosas, primero que en Laz es muy diferente a la implementacion hecha en Delphi, est� mas simple en Lazarus.

Con este codigo hice algunas pruebas y debug
var
   s:string;
   f:integer;
begin
    For f:=0 to Printer.Printers.Count -1 do
    Begin
         Printer.PrinterIndex:=f;
         Printer.SetPrinter(Printer.PrinterName);
         case Printer.PrinterType of
              ptLocal   : s:= 'LOCAL'+ char(9);
              ptNetWork : s:= 'REMOTO'+ char(9);
         end;
         Memo1.Lines.Add(s+ Printer.PrinterName);
    end;

En Laz hay una propiedad Printer.PrinterType que deberia devolver si es remota o local, pero siempre devuelve local.
En degug encuentro que en el codigo debuelve distintos valores para local y remoto pero las constantes comparadas tienen otro valor.

unit winprinters.inc
function TWinPrinter.GetPrinterType: TPrinterType;
var
  Size: Dword;
  InfoPrt: Pointer;
begin
  Result := ptLocal;
  //On Win9X all printers are local
  if Win32Platform  VER_PLATFORM_WIN32_NT then Exit;
  GetPrinter(fPrinterHandle, 4, nil, 0, @Size);
  GetMem(InfoPrt, Size);
  try
  if not GetPrinter(fPRinterHandle, 4, InfoPrt, Size, @Size)
  then
    raise EPrinter.CreateFmt('GetPrinterType failed : %s',
        [SysErrorMessage(GetLastError)]);
  if PPRINTER_INFO_4(InfoPrt)^.Attributes = PRINTER_ATTRIBUTE_NETWORK then
     Result := ptNetwork;
  finally
    FreeMem(InfoPrt);
  end;
end;
Unit winutilprnconst.inc
PRINTER_ATTRIBUTE_NETWORK           = $00000010; //Printer is a
network printer connection
PRINTER_ATTRIBUTE_LOCAL             = $00000040; //Printer is a local printer

cuando la impresora es remota retorna 3608, cuando es local 2112

Otra cosa rara es que el debug entra a otra unidad y no a la printers. que este es el codigo Alguien me explique porfavor

//Return the type of selected printer
function TPrinter.GetPrinterType: TPrinterType;
begin
  Result:=ptLocal;
end;
El que pregunta aprende, y el que contesta aprende a responder. No a la obsolecencia programada: http://www.rtve.es/noticias/20110104/productos-consumo-duran-cada-vez-menos/392498.shtml Linux User #495070 http://domonetic.com/blog

Reply by email

José Mejuto
to Maxi

El 29/08/2013 16:20, Maxi escribi�:

if PPRINTER_INFO_4(InfoPrt)^.Attributes = PRINTER_ATTRIBUTE_NETWORK then

Hola,

Esta linea est� mal o eso creo, deber�a de ser:

if (PPRINTER_INFO_4(InfoPrt)^.Attributes and PRINTER_ATTRIBUTE_NETWORK) = PRINTER_ATTRIBUTE_NETWORK then

Show quoted text 9 lines
Otra cosa rara es que el debug entra a otra unidad y no a la printers. que este es el codigo Alguien me explique porfavor //Return the type of selected printer function TPrinter.GetPrinterType: TPrinterType; begin Result:=ptLocal; end;

El otro es de "WinPrinters" y este debe de ser el gen�rico, o sea, para las que no son WinPrinters, vamos el inherited de la clase.

Reply by email

Maxi
to José Mejuto

El d�a 29 de agosto de 2013 12:04, Jos� Mejuto <joshyfun en gmail.com> escribi�:

Show quoted text 35 lines
El 29/08/2013 16:20, Maxi escribi�: > if PPRINTER_INFO_4(InfoPrt)^.Attributes = PRINTER_ATTRIBUTE_NETWORK > then Hola, Esta linea est� mal o eso creo, deber�a de ser: if (PPRINTER_INFO_4(InfoPrt)^.Attributes and PRINTER_ATTRIBUTE_NETWORK) = PRINTER_ATTRIBUTE_NETWORK then > Otra cosa rara es que el debug entra a otra unidad y no a la printers. > que este es el codigo Alguien me explique porfavor > > //Return the type of selected printer > function TPrinter.GetPrinterType: TPrinterType; > begin > Result:=ptLocal; > end; > El otro es de "WinPrinters" y este debe de ser el gen�rico, o sea, para las que no son WinPrinters, vamos el inherited de la clase. -- _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es

Entonces ese es un bug, hice los calculos y deberia comparar como vos decis. Estoy usando un CodeTyphon 4.3 con svn 41480.
Ya lo inform� alli, habria que informarlo en Lazarus.

El que pregunta aprende, y el que contesta aprende a responder. No a la obsolecencia programada: http://www.rtve.es/noticias/20110104/productos-consumo-duran-cada-vez-menos/392498.shtml Linux User #495070 http://domonetic.com/blog

Reply by email

Paola Bruccoleri
to Maxi

Hola Maxi

Entonces ese es un bug, hice los calculos y deberia comparar como vos decis. Estoy usando un CodeTyphon 4.3 con svn 41480. Ya lo inform� alli, habria que informarlo en Lazarus.

en 1.0.8 tb est� mal; hice el arreglo sugerido por Jos� y ahora devuelve correctamente el tipo de impresora

byeeeeeeee

Reply by email

Jesus Reyes
to José Mejuto: El 29/08/2013 16:20, Maxi escribi�: Esta linea est� mal o eso creo, deber�a de ser:…

Arreglado en la r42522.

Gracias.

Jesus Reyes A.

Earlier message 34 lines
----- Mensaje original ----- De: Jos� Mejuto <joshyfun en gmail.com> Para: Spanish version of Lazarus List <lazarus-es en lists.lazarus.freepascal.org> CC: Enviado: Jueves, 29 de agosto, 2013 10:04:43 Asunto: Re: [Lazarus-es] impresion en red El 29/08/2013 16:20, Maxi escribi�: >� � if PPRINTER_INFO_4(InfoPrt)^.Attributes = PRINTER_ATTRIBUTE_NETWORK then Hola, Esta linea est� mal o eso creo, deber�a de ser: if (PPRINTER_INFO_4(InfoPrt)^.Attributes and PRINTER_ATTRIBUTE_NETWORK) = PRINTER_ATTRIBUTE_NETWORK then > Otra cosa rara es que el debug entra a otra unidad y no a la printers. > que este es el codigo Alguien me explique porfavor > > //Return the type of selected printer > function TPrinter.GetPrinterType: TPrinterType; > begin >� � Result:=ptLocal; > end; > El otro es de "WinPrinters" y este debe de ser el gen�rico, o sea, para las que no son WinPrinters, vamos el inherited de la clase. --

Reply by email

Maxi
to Jesus Reyes

Bueno con eso se puede saber de donde es la impresora. Pero windows siempre devuelve el nombre como recurso compartido. Te sugiero en vez de un ini. Mejor una tabla, donde anotado el puesto y las impresoras para cada opci�n, y cada vez que vas a Imprimir con getcomputernane sabes quien es.
El 29/08/2013 20:47, "Jesus Reyes" <jesusrmx en yahoo.com.mx> escribi�:

Show quoted text 55 lines
Arreglado en la r42522. Gracias. Jesus Reyes A. ----- Mensaje original ----- De: Jos� Mejuto <joshyfun en gmail.com> Para: Spanish version of Lazarus List < lazarus-es en lists.lazarus.freepascal.org> CC: Enviado: Jueves, 29 de agosto, 2013 10:04:43 Asunto: Re: [Lazarus-es] impresion en red El 29/08/2013 16:20, Maxi escribi�: > if PPRINTER_INFO_4(InfoPrt)^.Attributes = PRINTER_ATTRIBUTE_NETWORK then Hola, Esta linea est� mal o eso creo, deber�a de ser: if (PPRINTER_INFO_4(InfoPrt)^.Attributes and PRINTER_ATTRIBUTE_NETWORK) = PRINTER_ATTRIBUTE_NETWORK then > Otra cosa rara es que el debug entra a otra unidad y no a la printers. > que este es el codigo Alguien me explique porfavor > > //Return the type of selected printer > function TPrinter.GetPrinterType: TPrinterType; > begin > Result:=ptLocal; > end; > El otro es de "WinPrinters" y este debe de ser el gen�rico, o sea, para las que no son WinPrinters, vamos el inherited de la clase. -- _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es

------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20130830/67f6b264/attachment.html>

Reply by email

Paola Bruccoleri
to Maxi

El 30/08/2013 7:19, Maxi escribi�:

Show quoted text 8 lines
Bueno con eso se puede saber de donde es la impresora. Pero windows siempre devuelve el nombre como recurso compartido. Te sugiero en vez de un ini. Mejor una tabla, donde anotado el puesto y las impresoras para cada opci�n, y cada vez que vas a Imprimir con getcomputernane sabes quien es.

Hola MAxi
gracias por tu respuesta: POr ahora lo dejo como est�, pero obviamente si se tiene una instalaci�n con muchas m�quinas, es obvio que hay que hacerlo as� por practicidad.
muchos saludos!

------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20130902/629c6ce8/attachment.html>

Reply by email

Maxi
to Paola Bruccoleri

El d�a 2 de septiembre de 2013 11:47, Paola Bruccoleri <pbruccoleri en adinet.com.uy> escribi�:

Show quoted text 21 lines
El 30/08/2013 7:19, Maxi escribi�: Bueno con eso se puede saber de donde es la impresora. Pero windows siempre devuelve el nombre como recurso compartido. Te sugiero en vez de un ini. Mejor una tabla, donde anotado el puesto y las impresoras para cada opci�n, y cada vez que vas a Imprimir con getcomputernane sabes quien es. Hola MAxi gracias por tu respuesta: POr ahora lo dejo como est�, pero obviamente si se tiene una instalaci�n con muchas m�quinas, es obvio que hay que hacerlo as� por practicidad. muchos saludos! _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es

Si igual lo podes transformar rapidamente a ese ini en una tabla, y en la proxima revision, levantas el ini y lo ingresas a la tabla. Lamento no poder ayudarte mas, no encontr� como imprimir solo el nombre. Pero creo es algo de windows, porque incluso cambiando el nombre del recurso sigue trayendo el //pc1/impresora

El que pregunta aprende, y el que contesta aprende a responder. No a la obsolecencia programada: http://www.rtve.es/noticias/20110104/productos-consumo-duran-cada-vez-menos/392498.shtml Linux User #495070 http://domonetic.com/blog

Reply by email

Paola Bruccoleri
to Maxi

El 02/09/2013 11:58, Maxi escribi�:

Show quoted text 29 lines
El d�a 2 de septiembre de 2013 11:47, Paola Bruccoleri <pbruccoleri en adinet.com.uy> escribi�: > El 30/08/2013 7:19, Maxi escribi�: > > Bueno con eso se puede saber de donde es la impresora. > Pero windows siempre devuelve el nombre como recurso compartido. > Te sugiero en vez de un ini. Mejor una tabla, donde anotado el puesto y las > impresoras para cada opci�n, y cada vez que vas a Imprimir con > getcomputernane sabes quien es. > > > Hola MAxi > gracias por tu respuesta: POr ahora lo dejo como est�, pero obviamente si se > tiene una instalaci�n con muchas m�quinas, es obvio que hay que hacerlo as� > por practicidad. > muchos saludos! > > > _______________________________________________ > Lazarus-es mailing list > Lazarus-es en lists.lazarus.freepascal.org > http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es > Si igual lo podes transformar rapidamente a ese ini en una tabla, y en la proxima revision, levantas el ini y lo ingresas a la tabla. Lamento no poder ayudarte mas, no encontr� como imprimir solo el nombre. Pero creo es algo de windows, porque incluso cambiando el nombre del recurso sigue trayendo el //pc1/impresora

Hola MAxi..
ya has hecho demasiado,no te preocupes!
muchos saludos!!

Reply by email