Imprimir un documento PDF sin abrir acrobat reader C# Visual Studio 2002
Hola que tal?
Escribo para hacer la siguiente consulta:
Tengo que imprimir un PDF desde C#, pero tengo como restricción que no se abra ninguna ventana de Acrobat Reader.
El leído el foro
http://social.msdn.microsoft.com/Forums/es-ES/vcses/thread/c4a5c21d-4629-43f3-a096-c5fbf1b89eb3
que recomiendan el uso de \t pero de todos modos se abre una ventana.
Existe alguna forma que no se abra la venta del Acrobat o por lo menos que se inice minimizada para que no se visualice.
He utilizado la sentencia P.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
Pero de todos modos se visualiza la venta.
Agego el código para mas información:
private static void RunExecutable(string executable, string arguments)
{
// Código de ejemplo sustraído http://aspalliance.com/514_CodeSnip_Printing_PDF_from_NET.3
// Se modifico para que se puedo tomar procesos en ejecución y no crear siempre un proceso.
try
{
// Se crea información de contexto para la ejecución de la impresión del pdf.
ProcessStartInfo starter = new ProcessStartInfo(executable, arguments);
starter.UseShellExecute = false;
starter.WindowStyle = ProcessWindowStyle.Hidden;
// En caso de que exista el proceso del acrobat se toma de lo contrario de crea
Process mProc;
//Se obtiene una lista con los procesos de acrobat
Process[] mAcroProcess = Process.GetProcessesByName(ACROBAT_READER);
// En caso de que no exista ningún proceso con esa descripción.
if(mAcroProcess.Length == 0)
{
//Se crea el proceso en caso de que no exista
mProc = new Process();
}
else
{
//Se toma el primer proceso
mProc = mAcroProcess[0];
}
mProc.StartInfo = starter;
//Se ejecuta la impresión.
mProc.Start();
}
catch(Exception bEx)
{
Console.WriteLine(bEx.Message);
}
}
Saludos.