Windows 8 soffia errore sul processo c # per la stampa di file pdf, come?

Il seguente codice funziona almeno perfettamente stampando un file pdf in Windows 7, ma sta producendo un errore in Windows 8:

Process process = new Process(); //process.StartInfo.CreateNoWindow = true; process.StartInfo.WindowStyle = ProcessWindowStyle.Hidden; process.StartInfo.FileName = defFile; if (rwPrinter.Length > 0) { process.StartInfo.Verb = "printto"; process.StartInfo.Arguments = "\"" + rwPrinter + "\""; } else { process.StartInfo.Verb = "print"; } process.Start(); 

Ecco alcuni dettagli dell’errore:

 ************** Exception Text ************** System.ComponentModel.Win32Exception (0x80004005): No application is associated with the specified file for this operation at System.Diagnostics.Process.StartWithShellExecuteEx(ProcessStartInfo startInfo) at System.Diagnostics.Process.Start() at ECitation.Form1.process_ticket(String jobdo) at ECitation.Form1.btnPrint_Click(Object sender, EventArgs e) 

So che c’è un lettore Adobe per i file PDF comunque, ma sono bloccato su quello che mi serve per lavorare su Windows 8, quindi questo errore non si ripresenta.

modifica, ora questo è strano in Windows 8: printto non è riconosciuto come comando interno o esterno

Ho provato a googling questo, ma sono scioccato non si presentano risultati. Tutto quello che voglio fare è stampare a livello di codice il mio documento su una stampante specifica.

Il messaggio di errore ti dice tutto ciò che devi sapere. Non è stato definito nulla per il verbo printto sull’estensione del file .pdf. Avrai bisogno di configurare le tue associazioni di file per porre rimedio a questo se vuoi che questo approccio funzioni.

Il modo in cui stai tentando di farlo è piuttosto fragile, basandosi sulle vagoie di un visualizzatore PDF di terze parti. Se controlli tutti i computer su cui viene eseguita l’applicazione, puoi configurare il visualizzatore PDF come preferisci. Altrimenti puoi aspettarti di avere a che fare con un sacco di assistenza clienti. Una soluzione più solida sarebbe quella di creare la funzionalità di stampa PDF nell’applicazione utilizzando una delle tante librerie che offrono tali capacità.