我想在用户点击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();
}
但它给出了操作系统不支持传递参数的错误。相同的代码在Windows 7中运行良好。为了让它在Windows 8中运行,我还需要做些什么吗?
答案 0 :(得分:0)
如果它在命令行中不起作用,则可能无法使用c#代码。
您需要弄清楚如何从Windows 8中的命令行打印pdf,并使用它来替换c#代码中的命令+参数。