Ver la Versión Completa : En Que impresora imprimir?
Waldo
05-10-2012, 19:23:50
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:
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í (http://www.delphigroups.info/2/9/939248.html))
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:
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:
word.ActivePrinter:= g.IMPRESORALASER;
vBulletin v3.6.8, Derechos ©2000-2024, Jelsoft Enterprises Ltd.