| 36 |
delete (this->GetThreadPool()); |
delete (this->GetThreadPool()); |
| 37 |
} |
} |
| 38 |
|
|
| 39 |
int base::s_exec(const char* in_str, CString& out_str, const char* end_str) |
int base::s_exec(const char* in_str, CString& out_str, char end_str[]) |
| 40 |
{ |
{ |
| 41 |
try{ |
try{ |
| 42 |
if (in_str != NULL) |
if (in_str != NULL) |
| 283 |
"]¿´¿´[/url]¡¶%s¡·°É£¡\n",rid,addslashes(subject)); |
"]¿´¿´[/url]¡¶%s¡·°É£¡\n",rid,addslashes(subject)); |
| 284 |
|
|
| 285 |
RS.GetFieldValue("UID",dbVar,SQL_C_SLONG); |
RS.GetFieldValue("UID",dbVar,SQL_C_SLONG); |
| 286 |
sql.Format("insert into bbs_msg(fromUID,toUID,ntent,send_dt,send_ip)" |
sql.Format("insert into bbs_msg(fromUID,toUID,content,send_dt,send_ip)" |
| 287 |
" values(%ld,%ld,'%s',now(),'%s')", |
" values(%ld,%ld,'%s',now(),'%s')", |
| 288 |
this->innd_uid,dbVar.m_lVal,addslashes(msg_content),this->hostaddr); |
this->innd_uid,dbVar.m_lVal,addslashes(msg_content),this->hostaddr); |
| 289 |
this->Db.ExecuteSQL(sql); |
this->Db.ExecuteSQL(sql); |
| 430 |
return 0; |
return 0; |
| 431 |
} |
} |
| 432 |
|
|
| 433 |
int base::s_receive(CString& out_str, const char* end_str) |
int base::s_receive(CString& out_str, char end_str[]) |
| 434 |
{ |
{ |
| 435 |
char buf_str[2048]; |
char buf_str[2048]; |
| 436 |
int buf_read,total_read; |
int buf_read,total_read; |
| 449 |
out_str += buf_str; |
out_str += buf_str; |
| 450 |
if (out_str.Right((int)strlen(end_str)) == end_str) |
if (out_str.Right((int)strlen(end_str)) == end_str) |
| 451 |
break; |
break; |
| 452 |
|
//different line-end symbol in different OS |
| 453 |
|
if (strcmp(end_str,"\r") == 0) |
| 454 |
|
{ |
| 455 |
|
if (out_str.Right(2) == "\r\n") |
| 456 |
|
break; |
| 457 |
|
} |
| 458 |
} |
} |
| 459 |
} |
} |
| 460 |
catch(CException* e) |
catch(CException* e) |