[英]Screenshot of webpage in asp.net c#
我正在浏览该网站。 问题是我在屏幕上有文本框。 当我进行屏幕截图时,不会出现文本框的值。 有人可以指导我重新安排代码。 谢谢
protected void Button1_Click(object sender, EventArgs e)
{
MailMessage msg = new MailMessage(txt_From.Text, txt_To.Text);
try
{
msg.Subject = txt_Subject.Text;
msg.Body = "<br /><b>form:</b> " + form1 + "<br /><b>From:</b> " + txt_From.Text + "<br /><b>To:</b> " + txt_To.Text + "<br /><br /><br /><br /><b>Name:</b><hr />" + TextBox1.Text + "<br /> <br /><b>Date:</b><br /><hr /><br />" + TextBox2.Text + "<br /><br />";
msg.IsBodyHtml = true;
WebRequest mywebReq;
WebResponse mywebResp;
StreamReader sr;
string strHTML;
StreamWriter sw;
// Put user code to initialize the page here
mywebReq = WebRequest.Create("http://localhost:4101/WebForm2.aspx");
mywebResp = mywebReq.GetResponse();
sr = new StreamReader(mywebResp.GetResponseStream());
//sr = new StreamReader(mywebResp.GetResponseStream(), System.Text.Encoding.ASCII);
strHTML = sr.ReadToEnd();
sw = File.CreateText(Server.MapPath("Report.htm"));
sw.WriteLine(strHTML);
sw.Close();
Response.WriteFile(Server.MapPath("Report.htm"));
Attachment objAttachment = new Attachment(@"C:\Users\2714\Documents\Visual Studio 2010\Projects\Certificate\Certificate\Report.htm");
msg.Attachments.Add(objAttachment);
System.Net.Mail.SmtpClient objSmtpClient = new SmtpClient("10.238.52.200", 25);
objSmtpClient.Send(msg);
}
catch (Exception ex)
{
throw ex;
}
}
捕获网页是合乎逻辑的,即看不到用户在其上键入的任何内容-实际上不存在,您只是加载了该页面,您希望在文本框中看到什么?
如果您出于调试原因而尝试获取报告,而您却无法在问题发生时看到页面上发生的情况,那么您需要使用(尽可能)构建页面dom并将其发送至的javascript库您。 所有这些操作都要求用户创建它们-捕获网页并通过电子邮件发送,即使您可以使其自动化,如果用户想向您显示在其上键入内容,用户也必须屈服。
示例http://experiments.hertzen.com/jsfeedback/和库http://html2canvas.hertzen.com/可以捕获用户在屏幕上看到的内容。
relative: 如何将HTML元素转换为canvas元素?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.