在园子里看到一篇“Asp.Net完整实现网页保存为图片代码”的文章,里面有段代码看不懂,谁能帮忙解释一下:
public Bitmap GenerateWebSiteThumbnailImage()
{
Thread m_thread = new Thread(new ThreadStart(_GenerateWebSiteThumbnailImage));
m_thread.SetApartmentState(ApartmentState.STA);
m_thread.Start();
m_thread.Join();
return m_Bitmap;
}
private void _GenerateWebSiteThumbnailImage()
{
WebBrowser m_WebBrowser = new WebBrowser();
m_WebBrowser.ScrollBarsEnabled = false;
m_WebBrowser.Navigate(m_Url);
m_WebBrowser.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(WebBrowser_DocumentCompleted);
while (m_WebBrowser.ReadyState != WebBrowserReadyState.Complete)
{
Application.DoEvents();
}
m_WebBrowser.Dispose();
}
我在本地可以运行成功,但布署到服务器后没反应啊,想优化代码但这里看不懂,请教高人了!
public Bitmap GenerateWebSiteThumbnailImage()
{
//线程创建
Thread m_thread = new Thread(new ThreadStart(_GenerateWebSiteThumbnailImage));
//设置线程状态
m_thread.SetApartmentState(ApartmentState.STA);
//启动线程
m_thread.Start();
//阻塞线程
m_thread.Join();
return m_Bitmap;
}
//获取图片的委托
private void _GenerateWebSiteThumbnailImage()
{
WebBrowser m_WebBrowser = new WebBrowser();
m_WebBrowser.ScrollBarsEnabled = false;
m_WebBrowser.Navigate(m_Url);
m_WebBrowser.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(WebBrowser_DocumentCompleted);
while (m_WebBrowser.ReadyState != WebBrowserReadyState.Complete)
{
Application.DoEvents();
}
m_WebBrowser.Dispose();
}
请问Application.DoEvents();是做什么的?
@tab_china: http://hi.baidu.com/hardcom/blog/item/2c559ff850c16f55242df237.html
将操作权交回操作系统
Application.DoEvents();
------------------
这个是干什么的?
不知道啊