导航:
论坛 -> DELPHI技术
斑竹:liumazi,sephil
作者:
hbug (hbug)
★☆☆☆☆
-
普通会员
2017/8/17 12:27:24
标题:
fastreport集成dll打印在win8 win10出现operation not supported on selected printer错误!
浏览:2324
加入我的收藏
楼主:
原来旧系统,把fastreport打成集成dll调用,在win8以前系统都是可以正常使用的。 在win8及win10下打印出现operation not supported on selected printer错误!,有遇到过此问题的朋友吗?有没有解决过此问题的朋友,直接exe程序打印是没问题的。
----------------------------------------------
专业提供人力资源软件、指纹考勤软件、POS进销存软件、酒店餐饮软件 http://www.winsoftcn.com
作者:
hbug (hbug)
★☆☆☆☆
-
普通会员
2017/8/17 12:28:01
1楼:
对了,fastreport的版本是2.52的。比较老。
----------------------------------------------
专业提供人力资源软件、指纹考勤软件、POS进销存软件、酒店餐饮软件 http://www.winsoftcn.com
作者:
2017/11/28 10:29:13
2楼:
楼主你好,我也碰到过这问题还没解决,我是Win10系统,请问你解决了吗?
----------------------------------------------
-
作者:
hbug (hbug)
★☆☆☆☆
-
普通会员
2017/11/29 10:27:23
3楼:
to 2楼,我也没有解决,重新写了非dll的形式了。
----------------------------------------------
专业提供人力资源软件、指纹考勤软件、POS进销存软件、酒店餐饮软件 http://www.winsoftcn.com
作者:
2017/11/29 10:58:42
4楼:
是不是因为fastreport 2.X版本的,在保存报表时,会把当前设计时的打印机选择中? 你在设计报表保存前,把这个打印机选择成虚拟的应该没问题。这涉及到硬件相关,微软一直提倡硬件无关,但报表因为纸张类型等,同打印机有关了。 直接打印没问题,是因为打印前已经选择了打印机。 没试过,不知能否可行。
----------------------------------------------
-
作者:
hbug (hbug)
★☆☆☆☆
-
普通会员
2021/1/21 16:05:11
5楼:
解决办法:打印前调用! procedure InitPrinterForWin10; var aDevice, aDriver, aPort: PAnsiChar; aDeviceMode: THandle; //!! ENotPrinter: Exception; 不知为什么,在退出WIN10时出错,XP没有问题 begin try aDevice := StrAlloc(255); aDriver := StrAlloc(255); aPort := StrAlloc(255); Printer.GetPrinter(aDevice, aDriver, aPort, aDeviceMode); //!! if aDeviceMode = 0 then raise ENotPrinter.Create('无法加载打印机驱动程序。!') finally Printer.SetPrinter(aDevice, aDriver, aPort, 0); StrDispose(aDevice); StrDispose(aDriver); StrDispose(aPort); end; // try end; // initPrinterForWin10;
----------------------------------------------
专业提供人力资源软件、指纹考勤软件、POS进销存软件、酒店餐饮软件 http://www.winsoftcn.com