【问题标题】:Prevent default pdf reader open after call PrintTo c#调用 PrintTo c# 后阻止默认 pdf 阅读器打开
【发布时间】:2018-11-01 16:46:13
【问题描述】:

我正在尝试制作一个将 pdf 文件发送到热敏打印机的程序。问题是文件发送到打印机后,默认的 PDF 阅读器(本例中为 foxit 阅读器)总是打开且无法管理。是的,我已经花了几天时间搜索,但没有什么对我完全有效。

另外,我曾尝试关闭 Foxit Reader PDF 打印机上的“查看 PDF 结果”属性,但似乎效果不佳。

这是我的简单代码:

 System.Diagnostics.ProcessStartInfo info = new System.Diagnostics.ProcessStartInfo(@"D:\test.pdf");
            info.Arguments = "\"XP-58\"";
            info.CreateNoWindow = true;
            info.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
            info.UseShellExecute = true;
            info.Verb = "PrintTo";

            PrintProcess p = new PrintProcess();
            p.StartInfo = info;
            p.EnableRaisingEvents = true;
            p.Start();
            p.WaitForInputIdle(1500);
            p.Stop();

【问题讨论】:

    标签: c# pdf printing


    【解决方案1】:

    现在我可以完全关闭 pdf 阅读器(foxit 阅读器)或任何使用这种方式的东西。但是,仍然在寻找另一个可以默默地完成这个任务而不打开然后关闭它。

    private static bool KillAdobe(string name)
        {
            foreach (Process clsProcess in Process.GetProcesses().Where(
                         clsProcess => clsProcess.ProcessName.StartsWith(name)))
            {
                clsProcess.Kill();
                return true;
            }
            return false;
        }
    

    【讨论】:

      猜你喜欢
      • 2022-10-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-09-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-09-05
      相关资源
      最近更新 更多