Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Impresión (https://www.clubdelphi.com/foros/forumdisplay.php?f=4)
-   -   En Que impresora imprimir? (https://www.clubdelphi.com/foros/showthread.php?t=81056)

Waldo 05-10-2012 19:23:50

En Que impresora imprimir?
 
Hola, tal, tengo una pregunta desde mi aplicación ya puedo crear mostrar guardar etc un documento en word, incluso mandarlo a imprimir, el problema es que word toma la impresora predeterminada, con que código puedo decirle a word en que impresora debe imprimir?

Saludos y Gracias

ecfisa 05-10-2012 21:08:43

Hola Waldo.

No trabajo con Word, pero a ver si esto que encontré te sirve de ayuda:
Código Delphi [-]
var
  Word, Doc, Dlg: OleVariant;
begin
  // Starting MS Word ...
  Word := CreateOleObject('Word.Application');
  Dlg := Word.Dialogs.Item(wdDialogFilePrintsetup);
  Dlg.Printer := 'PrinterName';
  Dlg.DoNotSetAsSysDefault := True;
  Dlg.Execute;
  Word.Documents.Open('c:\myfilename.doc');
end;
(Tomado de aquí)

Por otro lado y según leí, la propiedad ActivePrinter también lo haría, pero cambiando la impresora por defecto del sistema, supongo que tendría que ser algo por el estilo:
Código Delphi [-]
uses Printers; 
...
begin
  if PrintDialog1.Execute then
    WordApplication1.ActivePrinter:= Printer.Printers[Printer.PrinterIndex];
  ...
end;
Pero no puedo comprobarlo porque al no tener Word instalado me genera el error "Clase no registrada"

Saludos. :)

Waldo 05-10-2012 21:24:42

Gracias lo solucione con esto:
Código Delphi [-]
  word.ActivePrinter:= g.IMPRESORALASER;


La franja horaria es GMT +2. Ahora son las 22:16:55.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi