2

我的应用程序在最新的安全更新后无法打印。

所有 API 调用均未失败,但图像即使在 PDF 中也不会显示。文字和线条等形状打印效果很好。

该代码使用 IPicture 接口和 OleLoadPicture() 加载 JPG 图像。然后我使用它的 Render() 调用将其转换为 HBITMAP,最后在打印 HDC 时使用 StretchBlt()。

没有一个调用失败,所有返回值都被检查。直到今天和最新的 Windows 安全更新,一切都运行良好。当然,如果我在我的计算机上卸载 KB5000808 更新或在我的客户计算机上卸载 KB5000802,一切都会恢复正常,但这不是一个长期的解决方案。

有人今天有类似的问题吗?知道如何解决这个问题吗?还有其他打印图像的方法吗?

编辑:

即使我使用位图而不是 JPG 图像,也会出现同样的问题。所以JPG渲染没有问题。另一方面,JPG 和 BITMAP 都显示在屏幕上。只有打印不起作用。

4

1 回答 1

1

我通过使用 StretchDIBits 而不是 StretchBlt win32 api 解决了

于 2021-03-13T21:20:12.513 回答