我正在将工作中的 ASP.NET Web 应用程序从 WS2008R2 迁移到 WS2016,但同样的情况也发生在 WS2012R2 上。执行时失败:
new System.Printing.PrintServer(@"\\printserver");
它抛出:
System.Exception:创建 PrintServer 对象时发生异常。Win32 错误:打印机名称无效。
printserver
不是别名而是主机名。它在 Windows 资源管理器上正确加载。在相同的 .NET 4.5.2 下编译时,同一行在常规控制台应用程序上运行良好,在加载 .NET 文件时也在 PowerShell 中运行良好System.Printing.dll
。GAC 显示了正确的程序集,我还手动添加了它们以防万一。
我已经从工作的 WS2008 设置了相同的应用程序池配置设置(禁用 32 位应用程序和经典模式),但无论如何我都尝试了不同的组合。应用程序池在旧的和新的相同域服务帐户下运行。
正如一些用户还建议的那样,我已经安装了该Print and Document services
角色,即使旧服务器没有它,但无济于事。
我没有想法,任何形式的帮助将不胜感激。谢谢!