问题描述
代码中在发布内容做了一个循环发布,在设置断点调试的时候每一次循环都可以执行输出,但直接运行的时候却只输出了一次结果,不知道是哪方面的原因
解决方案
解决方案二:
代码都不贴,让谁给你分析,输出每个循环的信息,看看问题到哪
解决方案三:
一般这个时候都会用到F10和F11
解决方案四:
引用1楼bdmh的回复:
代码都不贴,让谁给你分析,输出每个循环的信息,看看问题到哪
up
解决方案五:
你不贴代码怎么给你分析啊,肯定是循环条件不对了才没有循环呗主要看看这方面
解决方案六:
该回复于2011-12-20 14:29:27被版主删除
解决方案七:
该回复于2011-12-20 14:29:27被版主删除
解决方案八:
引用楼主sungo163的回复:
什么是支持云应用构建的开发平...IT部门如何成为云服务提供商?你的数据中心属于云计算友好型...网络企业的CIO们是如何看待云计...私有云相比公有云,在架构上的...代码中在发布内容做了一个循环发布,在设置断点调试的时候每一次循环都可以执行输出,但直接运行的时候却只输出了一次结果,不知道是哪方面的原因
usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Linq;usingSystem.Text;usingSystem.Windows.Forms;usingSystem.Net;usingSystem.IO;usingSystem.Threading;namespace论坛模拟登陆{publicpartialclassForm1:Form{publicCookieCollectionglobaCookie;publicstringFromhash{set;get;}publicForm1(){InitializeComponent();}privatevoidlogin(stringusername,stringurl,stringpassword){try{log.Text="【"+DateTime.Now+"】系统正在登录,请您耐心等候......rn";url=url+"/member.php?mod=logging&action=login&loginsubmit=yes&infloat=yes&lssubmit=yes&inajax=1";stringstrurl=string.Format("username={0}&password={1}&quickforward=yes&handlekey=ls",username,password);HttpWebRequestreq=(HttpWebRequest)WebRequest.Create(url);req.Method="POST";req.Timeout=5000;req.ContentType="application/x-www-form-urlencoded";req.CookieContainer=newCookieContainer();Encodingcoding=Encoding.GetEncoding("gb2312");byte[]Date=coding.GetBytes(strurl);req.ContentLength=strurl.Length;Streamreqstr=req.GetRequestStream();reqstr.Write(Date,0,Date.Length);reqstr.Close();//返回数据流HttpWebResponseresponse=(HttpWebResponse)req.GetResponse();Streamdatestream=response.GetResponseStream();StreamReaderreaddate=newStreamReader(datestream,Encoding.GetEncoding("gb2312"));stringhtml=readdate.ReadToEnd();globaCookie=response.Cookies;if(html.IndexOf("登录失败")<0){log.Text+="【"+DateTime.Now+"】欢迎您回来"+username+"登录成功......rn";tbshibie.Text="欢迎您回来";}else{tbshibie.Text="登陆失败";MessageBox.Show("登录失败请检查用户名和密码是否正确");}}catch(Exceptionex){MessageBox.Show(ex.Message);}}privatestringGetHash(stringgeturl){//stringformhash;//stringgeturl=tbloginurl.Text;HttpWebRequestreq=(HttpWebRequest)WebRequest.Create(geturl);CookieContainercookies=newCookieContainer();req.CookieContainer=cookies;req.CookieContainer.Add(globaCookie);req.Method="GET";HttpWebResponseresponse=(HttpWebResponse)req.GetResponse();Streamreslut=response.GetResponseStream();StreamReaderdate=newStreamReader(reslut,Encoding.GetEncoding("gb2312"));stringhtml=date.ReadToEnd();if(html.IndexOf("退出")>0){Fromhash=html.Substring(html.IndexOf("ash=")+4,8);}returnFromhash;}privatevoidsend(){try{GetHash(tbloginurl.Text);//Thread.SpinWait(1000);stringid=textBox2.Text;stringurl=tbloginurl.Text;stringsendurl=string.Format("{0}/forum.php?mod=post&action=newthread&fid={1}&extra=&topicsubmit=yes",url,id);stringtitle=textBox1.Text;stringcontent=richTextBox1.Text;stringdate="formhash="+Fromhash+"&posttime="+"&wysiwyg=1&subject="+title+"&message="+content+"&replycredit_extcredits=0&replycredit_times=1&replycredit_membertimes=1&replycredit_random=100&readperm=&price=&save=&uploadalbum=&newalbum=&usesig=1&allownoticeauthor=1&addfeed=1";byte[]sendDate=Encoding.GetEncoding("gb2312").GetBytes(date);HttpWebRequestsendReq=(HttpWebRequest)WebRequest.Create(sendurl);sendReq.Method="POST";sendReq.ContentType="application/x-www-form-urlencoded";sendReq.ContentLength=sendDate.Length;sendReq.CookieContainer=newCookieContainer();sendReq.CookieContainer.Add(globaCookie);StreamsendStream=sendReq.GetRequestStream();sendStream.Write(sendDate,0,sendDate.Length);sendStream.Close();//获取发布成功信息流HttpWebResponserep=(HttpWebResponse)sendReq.GetResponse();Streamdatestream=rep.GetResponseStream();StreamReaderreadDate=newStreamReader(datestream,Encoding.GetEncoding("gb2312"));stringhtml=readDate.ReadToEnd();if(html.IndexOf("楼主")>0){log.Text+=string.Format("[{0}]【文章】{1}发布成功rn",DateTime.Now,title);}readDate.Close();datestream.Close();}catch(Exceptionex){MessageBox.Show(ex.Message);}}privatevoidbutton1_Click(objectsender,EventArgse){if(tbusername.Text.ToString().Trim()!=""){if(tbpassword.Text.ToString().Trim()!=""){if(tbloginurl.ToString().Trim()!=""){stringusername;stringurl;stringpassword;username=tbusername.Text;url=tbloginurl.Text;password=tbpassword.Text;login(username,url,password);for(inti=0;i<10;i++){send();}}else{MessageBox.Show("登录网址不能为空");}}else{MessageBox.Show("密码不能为空");return;}}else{MessageBox.Show("登录帐号不能为空");return;}}}}
这是代码
解决方案九:
if(tbloginurl.ToString().Trim()!=""){stringusername;stringurl;stringpassword;username=tbusername.Text;url=tbloginurl.Text;password=tbpassword.Text;login(username,url,password);for(inti=0;i<10;i++){send();}}else{MessageBox.Show("登录网址不能为空");}
你确定这里的}是你少复制了?这个程序能跑起来么?
解决方案十:
引用8楼pmars的回复:
C#codeif(tbloginurl.ToString().Trim()!=""){stringusername;……
应该是少复制了,程序可以跑。不会出现语法错误
解决方案十一:
引用8楼pmars的回复:
C#codeif(tbloginurl.ToString().Trim()!=""){stringusername;……
没少,你拉下滚动条。。。。
解决方案十二:
高手来提示一下啊
解决方案十三:
在for循环里执行send后适当延时一下。一般单步调试可执行,去掉断点就不行都是因为多线程或其他原因造成的,可以尝试用延时的方法去解决。
解决方案十四:
延时10秒是可以发的,但好像太慢了,如果是用多线程是不是这个可以缩短一些时间
解决方案十五:
延时10秒是可以发的,但好像太慢了,如果是用多线程是不是这个可以缩短一些时间
解决方案:
send();后面加上Thread.Sleep(5000);
解决方案:
send();System.Threading.Thread.Sleep(3000);