printDoc.PrinterSettings.IsValid根据服务器更改值

时间:2019-06-14 15:57:44

标签: c# printing rdlc

我有一个程序可以根据所需功能直接将报告打印到网络打印机。我们在开发服务器上成功测试了该例程。但是,当我们将程序移入生产环境时,该程序无法正常工作。 printDoc.PrinterSettings.IsValid在生产中为false,但从我们的开发服务器执行时为true。我们的开发服务器与生产服务器位于同一网络中。

最初,我们认为将代码移至生产环境后代码中发生了更改。因此,我们将可执行文件从生产服务器移回了开发服务器。它仍然可以在开发服务器上运行。

我们的网络团队检查了安全设置,两台服务器之间没有任何区别。

我们在生产中更改了代码,以打开一个打印对话框,并且要尝试打印的打印机位于可用打印机的列表中,并且如果通过“打印”对话框进行打印,则可以正常打印。

我们更改了尝试输出到的打印机,但是在我们的生产服务器上将无法使用。

        PrintDocument printDoc = new PrintDocument();
         printDoc.PrinterSettings.PrinterName = PrinterDef;
        if (!printDoc.PrinterSettings.IsValid)
        {
            MessageBox.Show("Error: cannot find the specified printer: " + PrinterDef);
        }
        else
        {
            printDoc.PrintPage += new PrintPageEventHandler(PrintPage);
            m_currentPageIndex = 0;
            printDoc.Print();
        }

printDoc.PrinterSettings.IsValid在开发服务器上始终为true,在生产服务器上始终为false

PrinterDef是网络打印机的名称。

0 个答案:

没有答案
相关问题