Entiende el código bien previamente a usarlo a tu trabajo y si ttienes algo que aportar puedes dejarlo en la sección de comentarios.
Solución:
Un enfoque muy sencillo es usar un Adobe Reader instalado o cualquier otro visor de PDF capaz de imprimir:
Process p = new Process( );
p.StartInfo = new ProcessStartInfo( )
CreateNoWindow = true,
Verb = "print",
FileName = path //put the correct path here
;
p.Start( );
Otra forma es utilizar un componente de terceros, por ejemplo, PDFView4NET
Escribí un método de ayuda muy (!) Pequeño en AdobeReader para imprimir PDF de forma masiva desde C #…:
public static bool Print(string file, string printer)
try
Process.Start(
Registry.LocalMachine.OpenSubKey(
@"SOFTWAREMicrosoftWindowsCurrentVersion" +
@"App PathsAcroRd32.exe").GetValue("").ToString(),
string.Format("/h /t "0" "1"", file, printer));
return true;
catch
return false;
uno no puede confiar en el valor de retorno del método por cierto…
Otro enfoque, si simplemente desea imprimir un archivo PDF mediante programación, es usar el comando LPR: http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/lpr.mspx ?mfr=true
LPR también está disponible en las versiones más recientes de Windows (p. ej., Vista/7), pero debe habilitarlo en Componentes opcionales de Windows.
Por ejemplo:
Process.Start("LPR -S printerdnsalias -P raw C:filesfile.pdf");
También puede usar la dirección IP de la impresora en lugar del alias.
Esto supone que su impresora admite Impresión directa de PDF de lo contrario, esto solo funcionará para archivos PostScript y ASCII. Además, la impresora debe tener una interfaz de red instalada y debe saber su dirección IP o alias.
Si piensas que ha sido de ayuda nuestro artículo, sería de mucha ayuda si lo compartes con el resto entusiastas de la programación de esta forma nos ayudas a extender nuestra información.