InternetReadFile 无响应
场景:InternetReadFile这个函数在网络断开或主机无响应景无法返回
InternetReadFile这个函数在网络断开或主机无响应时无法返回
程序在这种情况下CPU占100% , 请教这如何解决 ,谢谢!
------解决方案--------------------
不管这个函数的事,具体情况要发点代码上来,
------解决方案--------------------
这个函数可以用来下载文件或者读取网页源码使用。有办法避免你所说的问题。
建议在使用该函数前先调用HttpQueryInfo取得头信息来决定网页是否能正常响应,于是你的问题解决。
如果你是个懒人,希望我直接给你贴出代码。那么请你再加100分后并结贴给分,并说清楚你是取文件还是取网页源码。我给你贴出实现代码。
------解决方案--------------------
那是你的错误认为而已。取源码的方式很多,但用InternetOpen和InternetReadFile确实是最稳定的方法,而且纯代码实现不依靠外部控件。
我所采用的就是你所说的方法。你所遇到的问题我在两年前就遇到过。所以有针对性的在回你的贴子。
这里说一下,delphi7在同时使用InternetOpen,InternetOpenURL,InternetCloseHandle,InternetReadFile四个函数时会被360杀毒软件报毒。另外InternetReadFile应该写在循环里多次读取,因为有些源码过多,一次性无法读完整。
http://www.mwymwy.com/GetURLCode.rar
这里给出一个dcu测试版本,完全解决你的问题,不会出现断开或无法响应而导致无法返回的问题。你可以像源码一样移植到其它程序中使用和编译,但并不是源码。源码需要你加分后才公开。
InternetReadFile这个函数在网络断开或主机无响应时无法返回
程序在这种情况下CPU占100% , 请教这如何解决 ,谢谢!
------解决方案--------------------
不管这个函数的事,具体情况要发点代码上来,
------解决方案--------------------
这个函数可以用来下载文件或者读取网页源码使用。有办法避免你所说的问题。
建议在使用该函数前先调用HttpQueryInfo取得头信息来决定网页是否能正常响应,于是你的问题解决。
如果你是个懒人,希望我直接给你贴出代码。那么请你再加100分后并结贴给分,并说清楚你是取文件还是取网页源码。我给你贴出实现代码。
------解决方案--------------------
那是你的错误认为而已。取源码的方式很多,但用InternetOpen和InternetReadFile确实是最稳定的方法,而且纯代码实现不依靠外部控件。
我所采用的就是你所说的方法。你所遇到的问题我在两年前就遇到过。所以有针对性的在回你的贴子。
这里说一下,delphi7在同时使用InternetOpen,InternetOpenURL,InternetCloseHandle,InternetReadFile四个函数时会被360杀毒软件报毒。另外InternetReadFile应该写在循环里多次读取,因为有些源码过多,一次性无法读完整。
http://www.mwymwy.com/GetURLCode.rar
这里给出一个dcu测试版本,完全解决你的问题,不会出现断开或无法响应而导致无法返回的问题。你可以像源码一样移植到其它程序中使用和编译,但并不是源码。源码需要你加分后才公开。