⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bqyahoo.cpp

📁 BQYAHOO的Visual C++源代码
💻 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 + -