ユーザーがWindows 8で印刷ボタンをクリックするとすぐに、winformsアプリケーションからPDFドキュメントを印刷したい. 以下は私が使用しているコードです:
protected void PrintPDF_WithAdobe()
{
Process proc = new Process();
proc.StartInfo.FileName = @"C:\Program Files\Adobe\Reader 10.0\Reader\AcroRd32.exe";
proc.StartInfo.Arguments = @"/p /h E:\Sample.pdf";
proc.StartInfo.UseShellExecute = false;
proc.StartInfo.CreateNoWindow = true;
proc.Start();
for (int i = 0; i < 5; i++)
{
if (!proc.HasExited)
{
proc.Refresh();
Thread.Sleep(2000);
}
else
break;
}
if (!proc.HasExited)
{
proc.CloseMainWindow();
}
proc.Close();
}
しかし、OSが渡された引数をサポートしていないというエラーが発生します。同じコードが Windows 7 でも問題なく動作しています。Windows 8 で動作させるために何か特別なことはありますか?