当前位置: 首页 > news >正文

模拟登陆115网盘(MFC版)

// 模拟登陆115网盘
#include <afxinet.h> // 包含相关的头文件
/* 用抓包工具抓包可得到需要提交的数据,然后模拟提交即可。
*(有的时候需要得到cookie信息,你可以使用CInternetSession::GetCookie()函数得到该cookie信息)*/

try
{
#define MAX_COUNT 1024
CInternetSession session(_T("session"));
INTERNET_PORT nPort = 80;
CHttpConnection* pHttpConnect = session.GetHttpConnection(_T("passport.115.com"), nPort);
if(pHttpConnect)
{
CHttpFile* pFile = pHttpConnect->OpenRequest(CHttpConnection::HTTP_VERB_POST, _T("/?ac=login"));
if(pFile)
{
// 这里是请求头信息,由抓包工具得到该信息
pFile->AddRequestHeaders(_T("POST /?ac=login HTTP/1.1"));
pFile->AddRequestHeaders(_T("Accept: image/gif, image/jpeg, image/pjpeg, image/pjpeg, application/x-shockwave-flash, application/x-ms-application, application/x-ms-xbap, application/vnd.ms-xpsdocument, application/xaml+xml, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*"));
pFile->AddRequestHeaders(_T("Referer: http://passport.115.com/?ac=login&goto=http%3A%2F%2Fu.115.com%2F%3Fac%3Dmy"));
pFile->AddRequestHeaders(_T("Accept-Language: zh-cn"));
pFile->AddRequestHeaders(_T("User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; SV1; EasyBits GO v1.0; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022)"));
pFile->AddRequestHeaders(_T("Content-Type: application/x-www-form-urlencoded"));
pFile->AddRequestHeaders(_T("Accept-Encoding: gzip, deflate"));
pFile->AddRequestHeaders(_T("Host: passport.115.com"));
pFile->AddRequestHeaders(_T("Connection: Keep-Alive"));
pFile->AddRequestHeaders(_T("Cache-Control: no-cache"));    
// 这里是要提交的数据。说明一下: xxxx@xx.xxx指的是登陆的邮箱的地址,后面的XXXXXXX表示的是登陆的密码,使用的时候换成你自己的即可
TCHAR szRequest[MAX_COUNT] = _T("login%5Baccount%5D=xxxx@xx.xxx&login%5Bpasswd%5D=XXXXXXX&goto=http%3A%2F%2Fu.115.com%2F%3Fac%3Dmy");
pFile->SendRequest(NULL, 0, szRequest, _tcslen(szRequest)+1);
CString strStatus(_T(""));
if(pFile->QueryInfo(HTTP_QUERY_RAW_HEADERS_CRLF, strStatus))
{
AfxMessageBox(strStatus);
}
pFile->Close();
delete pFile;
pFile = NULL;
}
}
pHttpConnect->Close();
delete pHttpConnect;
pHttpConnect =NULL;  session.Close();
}
catch (CInternetException* e)
{
e->ReportError();
e->Delete();
}


 

http://www.xdnf.cn/news/854479.html

相关文章:

  • 2G、 3G、 4G、5G的区别
  • 丢失urlmon.dll文件导致系统程序功能异常问题
  • 计算机的k代表什么意思,电脑CPU后缀K、U、HQ、M分别代表什么你清楚吗?
  • iphone同步助手_最全备份iPhone数据教程,有备无患
  • 【VMware vSAN 7.0】1. 简介 —我们有软硬件解决方案
  • Fastadmin 修改样式,替换掉默认皮肤
  • 数据安全的操作系统安全:如何保护操作系统免受数据泄露
  • Flex Builder 3代码格式化方法
  • 玩GAE(Google App Engine)完全指南
  • 浏览器缓存(强缓存、协商缓存) --- cache-Control、Etag 、Last-Modified
  • 模式识别(4)SVM分类Iris和Sonar数据集
  • (java毕业设计源码)基于java(ssm)校园论坛管理系统
  • Linux应用与发展视频教程下载
  • 抉择男女
  • 使用FastReport 3.0及以上版本创建动态报表的几个技巧(转)
  • 分享62个ASP江湖论坛源码,总有一款适合您
  • VMware安装+导入虚拟机+软件更新 教程
  • 如何卸载IE9?
  • delphi outlook发送邮件
  • red5流媒体服务器网站,[RED5]red5流媒体服务器(开源免费)的安装方法
  • 2021-06-07
  • iOS游戏安全之IPA破解原理及防御
  • 最详细的***教程
  • soso地图api接口地理解析geocoder检索示例----并在信息框显示经纬度
  • 钩子(hook)编程
  • BoundsChecker使用说明
  • 即时通讯音视频开发(十八):详解音频编解码的原理、演进和应用选型
  • android 加密手机功能,怎么为安卓手机加密
  • 【网络安全入门】学习网络安全必须知道的100 个网络基础知识_网络安全知识入门基础_网络安全基础知识
  • 电脑重装系统后会怎样?