RenderTargetBitmap呈现空图像

时间:2018-03-19 17:45:27

标签: wpf rendertargetbitmap

以下是这种情况:我有一个ASP.NET Web Forms应用程序,它使用WPF控件进行报告。

流程如下:Create WPF controls and bind to data -> create image from WPF control -> use generated image to create PDF reports.

我使用RenderTargetBitmap从WPF控件渲染位图。问题是当我在我的本地计算机(Windows 10)上运行所有这一切时,只要应用程序部署在QA计算机(Windows Server 2008 R2)上,它就会生成空图像。

我尝试简化报告页面,只在WPF控件上保留静态文本,但仍然是空页。

我创建了示例控制台应用程序,它模仿部分绑定数据到WPF(授予静态数据)并从WPF控件生成图像&它适用于两种环境。我能想到的一个区别是控制台应用程序没有以IIS' AppPoolIdentity运行,它在QA机器上运行Web应用程序。

我遇到了this SO post,这表明有一个Windows Update导致了类似的问题。我们的QA计算机是Azure VM,因此定期安装更新。导致此问题的更新是从2017年9月开始,在October 2017中修复了更新。所以我彻底解决了Windows更新导致的问题。

同样在引用的SO帖子中,OP建议仅在运行代码的帐户是系统帐户

时才会出现此问题
  

如果在高权限SYSTEM帐户下运行(例如从任务计划程序),它只能起作用。

我也试过这个,让Task Scheduler运行示例控制台应用程序,但正如我上面提到的,它成功创建了图像。

所以在这个时刻,我几乎没有想法。

应该生成图像的应用程序代码是分散的,所以我不在这里分享它,但是如果有任何一件特别感兴趣的话可以发布。

任何想法可以在diff中导致这种不同的行为。环境?

1 个答案:

答案 0 :(得分:0)

事实证明,排除缺少的Windows Update不是正确的做法。 最后我安装了fix windows update,问题解决了。