Можно ли сделать скриншот веб-страницы с ASP.net с кодом C # - PullRequest
3 голосов
/ 12 июня 2009

Можно ли сделать снимок экрана веб-страницы с ASP.net с кодом C #, а затем отправить ее обратно на сервер? В этом коде доступ только к локальному хосту, но тот же исходный код не доступ к IIS, произошла ошибка CopyFromScreen С чем это связано?

Пример исходного кода:

Bitmap Bitmap;
Graphics Graps;
Bitmap = new Bitmap(Screen.PrimaryScreen.Bounds.Width, Screen.PrimaryScreen.Bounds.Height - 110, PixelFormat.Format32bppArgb);
Graps = Graphics.FromImage(Bitmap);
Graps.CopyFromScreen(Screen.PrimaryScreen.Bounds.X, 110, 0, 0, Screen.PrimaryScreen.Bounds.Size, CopyPixelOperation.SourceCopy);
Bitmap.Save(Server.MapPath("~") + "/YourShot.gif");

Ответы [ 2 ]

0 голосов
/ 04 апреля 2010

Использование растрового изображения (даже JPG) кажется мне очень дорогим способом хранения веб-страницы, а также способом, который вы не сможете легко проанализировать или сравнить с разными версиями (например, в разные даты). Если вы хотите изучить альтернативу - перетащить веб-сайт HTML на сервер, просто сделайте следующее:

WebRequest wrContent = WebRequest.Create("http://www.destsite.com/yourpage.aspx");
Stream objStream = wrContent.GetResponse().GetResponseStream();
StreamReader objStreamReader = new StreamReader(objStream);
string pageContent = objStreamReader.ReadToEnd();

Надеюсь, это поможет ... в любом случае, подумайте.

0 голосов
/ 12 июня 2009

Я немного растерялся. Вы берете скриншот сервера и сохраняете его там? Какой в ​​этом смысл?

Что именно здесь делать? Если вы хотите сделать снимок экрана с веб-страницей, вы можете посмотреть на этот вопрос .

У нас есть еще один вопрос: Как сделать снимок экрана веб-сайта с помощью кода .Net?

это еще один вопрос о снятии скриншота

...