String tmpFile = @"C:\MioPdf.pdf"
ProcessStartInfo psi = new ProcessStartInfo(tmpFile);
psi.Verb = "printto";
psi.Arguments = "\"Nome Stampante di Windows\"";
Process print = new Process();
print.StartInfo = psi;
print.Start();
print.WaitForExit(); //Non supera questa istruzione finchè non chiudo
Acrobat Reader
print.Close();
Come faccio per non far aprire Acrobat Reader?
Grazie a tutti e spero che mi possiate aiutare...
Bye!!
Il comportamento che descrivi sembra essere dovuto ad acrobat che non brilla
come applicazione sotto tanti punti di vista.
Se lanciando tante stampe si aprono altrettanti acrobat, è un problema di
acrobat e ci puoi fare poco.
L'unica cosa che mi viene in mente è quella di mandare un messaggio WM_QUIT
ad acrobat per chiudersi. Resta da vedere come capire quando ha terminato di
stampare.
Il discorso generale è che con le operazioni tramite shell non hai il
controllo perché non sai neppure quale applicazione verrà aperta con quel
verb.
Se non riesci a risolvere in quel modo, l'unica alternativa è quella di
usare una libreria per pdf che consenta di stampare.
--
Raffaele Rialdi
Microsoft .NET MVP http://mvp.support.microsoft.com -
http://italy.mvps.org UGIdotNET - User Group Italiano .NET
http://www.ugidotnet.org Weblog: http://blogs.ugidotnet.org/raffaele
Prego!
Prima di usare un libreria PDF, hai provato FoxitReader?
Fai sapere se sei riuscito...