-1

一旦用户单击 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 中运行吗?

4

1 回答 1

0

如果它不能从命令行工作,它可能也不能从 c# 代码工作。

您需要弄清楚如何从 Windows 8 中的命令行打印 pdf,并使用它来替换 c# 代码中的命令 + 参数。

于 2013-05-26T14:29:43.320 回答