📄 bqyahoo.cpp
字号:
#include "StdAfx.h"
#include ".\bqyahoo.h"
#include "code.h"
#include "gliu.h"
#include <direct.h>
#include <time.h>
#include <sys/types.h>
#include <sys/stat.h>
extern string decode;
BQYAHOO::BQYAHOO(void)
{
}
BQYAHOO::~BQYAHOO(void)
{
}
bool BQYAHOO::BeforeLogIn()
{
if(! wc.BeforeLogIn ()) return false;
if(wc.MayBeIn ==true) return true;
if(! xregex.GetChallengeText (wc.response ,&xdata)) return false;
return true;
}
bool BQYAHOO::LogIn(byte LogInCode[160] ,string DLC)
{
XXdecode((const char *)LogInCode);
char x[20];
memset(x,0,20);
strncpy(x,decode.c_str(),20);
xdata.user =x;
memset(x,0,20);
strncpy(x,decode.c_str()+20,20);
xdata.password =x;
xdata.DownLoadCode =DLC;
CGLIU gliu(xdata.user.c_str () ,xdata.password.c_str () ,xdata.ChallengeText );
xdata.LogInUrl =gliu.GetLogInUrl ();
if(!wc.LogIn (xdata.LogInUrl .c_str (),xdata.user )) return false;
if(!xregex.GetMailAndHostUrl (wc.response ,& xdata)) return false;
return true;
}
bool BQYAHOO::LogOut()//登出
{
wc.LogOut(xdata.LogOutUrl);
return true;
}
bool BQYAHOO::InInBox()
{
if(!wc.InInBox (xdata.MailHostUrl )) return false;
xregex.GetFileInfo (wc.response ,&xdata);
return true;
}
bool BQYAHOO::DownLoadAllFile()//下载所有文件
{
if(xdata.VFileName.size()==0) return false;
int len=xdata.VFileName.size();
for(int n=0;n<len;n++)
{
if(!wc.DownLoadFile(xdata.VFileName[n]+".rar",xdata.VFileDownLoadUrl[n])) break;
}
if(n!=len) return false;
return true;
}
bool BQYAHOO::DownLoadOneFile(string FileSaveName,string FileDownLoadUrl)//下载单个文件
{
Speed=0;
time_t start ;
time_t end;
time(&start);
//处理保存的函数名
char XFileSaveName[400];
memset(XFileSaveName,0,400);
_getcwd(XFileSaveName,400);
strcat(XFileSaveName,"\\DownLoad");
strcat(XFileSaveName,"\\");
strcat(XFileSaveName,SubDirectory.c_str ());
_mkdir(XFileSaveName);
strcat(XFileSaveName,"\\");
FileSaveName.insert (0,XFileSaveName);
if(!wc.DownLoadFile(FileSaveName,FileDownLoadUrl)) return false;
struct _stat buf;
if(_stat(FileSaveName.c_str (),&buf)!=0) return false;
int FileSize=buf.st_size /1000;
time(&end);
int i=(int)difftime(end,start);
if(i==0) i=1;
Speed=FileSize/i;
return true;
}
bool BQYAHOO::GetDescribeFile()//下载描述文件
{
if(!xregex.GetDescribeUrl(wc.response, & xdata)) return false;
if(!wc.DownLoadFile("DESCRIBE.xml",xdata.DescribeUrl)) return false;
return true;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -