我有一台染料打印机,我正在尝试发送一个图像来进行编程打印。
我在Windows764b上使用的是PrintDocument和一台装有C# 4.0的PrintPage。
打印失败,windows显示以下错误:
The print spooler failed to load a plug-in module
C:\Windows\system32\spool\DRIVERS\x64\3\S6145UI.DLL, error code 0xc1使用Window的默认打印对话框时,打印机工作正常。
使用常规激光打印机打印时,代码工作正常。
我完全被难住了。
发布于 2013-03-02 10:46:35
错误代码0xc1
那是ERROR_BAD_EXE_FORMAT。在64位版本的Windows上,这并不是一个罕见的错误,而是打印机驱动程序的一个重大故障。当64位进程尝试加载32位DLL时,您将收到此错误。反之亦然。
很明显,这里的驱动程序有问题,你应该寻找更新。一种可能的解决方法是强制您的程序在另一种模式下运行,这对于托管程序很容易做到。右键单击您的EXE项目,属性,生成选项卡。更改平台目标设置,在AnyCPU和x86之间切换。在VS2012上,切换首选32位模式复选框。实际上不太确定这是否会起作用,假脱机程序是它自己的子系统。我认为有一种方法可以强制后台打印程序在传统打印机驱动程序的32位模式下运行,请访问superuser.com
https://stackoverflow.com/questions/15169590
复制相似问题