IIS 8工作进程的屏幕大小限制为1024X768

时间:2016-07-04 19:30:53

标签: c# asp.net windows iis webpage-screenshot

我有一个在IIS 8中的.NET v4.0集成管道64位应用程序池下运行的Web应用程序。我的Web应用程序需要截取屏幕截图(使用Selenium / Chromedrive)。

我遇到的问题是图像是由另一个应用程序(动态)生成的,由我的Web应用程序调用,并在IIS工作进程下作为子进程启动。

实际上,该应用程序需要创建一个与图像一样大的窗口(即GUI窗口),然后才能快速拍摄它并将图像数据发送回Web应用程序。此GUI窗口在服务器计算机上创建,但不可见。

现在,通常这个应用程序可以自行运行,因为我有一个大的宽屏显示器,限制为1920x1200。因此,OS最大窗口大小限制不会考虑。但是,当应用程序在IIS 8工作进程下运行时,工作进程似乎对其中运行的任何应用程序设置了任意1024x768分辨率限制(尽管我有我的大显示器连接到同一台机器上)。

所以现在应用程序只能创建一个1024x768大小的窗口,然后生成的快照就会出现这个大小。我需要在1920x1200中截取屏幕截图

我认为由于IIS工作进程隔离正在进行,其下的任何应用程序都无法看到服务器的完整解析功能,只能使用IIS提供的功能。

我有什么方法可以删除此限制,以便在IIS工作进程下运行的应用程序可以创建大于1024x768的窗口吗?

谢谢!

1 个答案:

答案 0 :(得分:2)

经过长时间的研究,没有办法做到这一点......我最后使用一个带有SELENIUM的码头工具来制作分辨率大于1024x768的截图

奖金,它比通过IIS启动的子流程更加稳定

https://hub.docker.com/r/selenium/node-chrome/