C++] WAP GPRS 向WWW网站 提交POST GET 数据 实例

news/2024/5/16 0:54:56/文章来源:https://blog.csdn.net/weixin_30631587/article/details/97933586

 

代码
///
接收程序ASP
<%
num
=request("num")
pass
=request("pass")
set fs=server.CreateObject("Scripting.FileSystemObject")
set file=fs.OpenTextFile(server.MapPath("http.txt"),8,True)
file.writeline num
+"---"+"-"+pass
file.close
set file=nothing
set fs=nothing
response.write
"Send OK!"
%>

///
WM上的程序

#include
"ConnectManager.h"
CConnectManager m_ConnectManager;

void CGPRSOKDlg::OnBnClickedButton1()
{
// TODO: 在此添加控件通知处理程序代码
HANDLE hConnection;
hConnection
= NULL;

CListBox *pListBox1 = (CListBox*)GetDlgItem(IDC_LIST1);
ASSERT ( pListBox1 );
pListBox1
->ResetContent (); //从列表框中删除所有项。


CListBox *pListBox = (CListBox*)GetDlgItem(IDC_LIST1);
ASSERT ( pListBox );
//调试用的

CStringArray StrAry;
CString abc,abc2;
m_ConnectManager.EnumNetIdentifier ( StrAry );
//网络描述
for ( int i=0; i<StrAry.GetSize(); i++ )
{
GPRSGUI
=StrAry.GetAt(i);
if( CreateConnection( &hConnection ) == S_OK )
{
abc
="连接成功";

}
else
{
abc
="连接失败";

}
//abc2=""+StrAry.GetAt(i)+"----"+abc+"";
CString str;
str.Format(L
"%s----%s",StrAry.GetAt(i),abc);
//AfxMessageBox ( StrAry.GetAt(i), MB_ICONINFORMATION );
pListBox->AddString (str); //网络描述
}
}


void CGPRSOKDlg::OnBnClickedButton2()
{
// TODO: 在此添加控件通知处理程序代码

CListBox
*pListBox = (CListBox*)GetDlgItem(IDC_LIST1);
ASSERT ( pListBox );
DWORD dwIndex
= pListBox->GetCurSel(); //获得索引值
if ( dwIndex >=0&& dwIndex < (DWORD)pListBox->GetCount() )
{
CString test;
pListBox
->GetText(dwIndex,test);
SetDlgItemText(IDC_EDIT1,test);
//MessageBox(test);
}
}


void CGPRSOKDlg::OnBnClickedButton3()
{
// TODO: 在此添加控件通知处理程序代码
CString test,test2;
GetDlgItemText(IDC_EDIT1,test);
GetDlgItemText(IDC_EDIT2,test2);
GPRSGUI
=test;
/////*MessageBox(GPRSGUI);*/


CString szHeaders;
CString szURL;
//szURL="http://wjhzyy.com/http.asp?num=aaaaa&pass=vvvvvvvv";
//LPCTSTR p = szURL;
LPCTSTR p = test2;
szHeaders
="EmployeeID: 123456\r\n";
szHeaders
+="EmployeePassword: 789";
HANDLE hConnection;
hConnection
= NULL;

// HTTPRequest Response;
// memset(&Response, NULL, sizeof(HTTPRequest));
// if (!MCHttp.SendRequestEx(m_VerbType, szURL, HTTP_VERSION_1_1, TEXT("*/*"), TEXT("PervasiveBiz"), szHeaders,
// szSendBuffer, 60000, &Response))
if( CreateConnection( &hConnection ) != S_OK )
MessageBox(_T(
"连接失败"),_T("错误"));
//return FALSE;

CString strServerName;
CString strObject;
INTERNET_PORT nPort;
DWORD dwServiceType;
if (!AfxParseURL(p, dwServiceType, strServerName, strObject, nPort) ||
dwServiceType
!= AFX_INET_SERVICE_HTTPS && dwServiceType != AFX_INET_SERVICE_HTTP) //AfxParseURL来为分析映射URL
{
MessageBox(_T(
"不是HTTP,HTTPS站点"),_T("错误"));
// return -2;
}

//MessageBox(_T("111111"),_T("错误"));
HINTERNET m_hOpen;
HINTERNET m_hConnect;
HINTERNET m_hRequest;
//m_hOpen = InternetOpen(TEXT("PervasiveBiz"), INTERNET_OPEN_TYPE_DIRECT,NULL, 0, 0); //初始化WinINet
m_hOpen = InternetOpenA ("NokiaN70-1/5.0616.2.0.3 Series60/2.8 Profile/MIDP-2.0 Configuration/CLDC-1.1", INTERNET_OPEN_TYPE_PRECONFIG, "10.0.0.172:80", 0, 0 );
if (!m_hOpen)
{
MessageBox(_T(
"初始化失败!!"),_T("错误"));
// return -1;
}

if (!(m_hConnect = InternetConnect(m_hOpen,strServerName, nPort, NULL, NULL, dwServiceType, 0, 0))) //发送数据
{ //0为真 1为假
InternetCloseHandle(m_hOpen); //关闭连接句柄
// return -1;
}

//MessageBox(_T("2222222"),_T("错误"));
LPTSTR AcceptTypes[2] = {TEXT("*/*"), NULL};
DWORD dwFlags
= INTERNET_FLAG_RELOAD | INTERNET_FLAG_NO_CACHE_WRITE;
// Open an HTTP request handle.
if (!(m_hRequest = HttpOpenRequest(m_hConnect, TEXT("POST"), strObject, HTTP_VERSION, NULL, (LPCTSTR*)AcceptTypes,dwFlags, 0))) //打开一个 HTTP 请求的句柄
{
InternetCloseHandle(m_hConnect);
InternetCloseHandle(m_hOpen);
// return -1;
}
// MessageBox(_T("3333333"),_T("错误"));
//DWORD dwHttpTimeout=TIME_OUT;
DWORD dwHttpTimeout;
if(!InternetSetOption(m_hRequest,INTERNET_OPTION_CONNECT_TIMEOUT,&dwHttpTimeout,sizeof(DWORD))) //设置一个 Internet 选项
{
InternetCloseHandle(m_hRequest);
InternetCloseHandle(m_hConnect);
InternetCloseHandle(m_hOpen);
// return -1;
}
if(!InternetSetOption(m_hRequest,INTERNET_OPTION_SEND_TIMEOUT,&dwHttpTimeout,sizeof(DWORD)))
{
InternetCloseHandle(m_hRequest);
InternetCloseHandle(m_hConnect);
InternetCloseHandle(m_hOpen);
// return -1;
}
if(!InternetSetOption(m_hRequest,INTERNET_OPTION_RECEIVE_TIMEOUT,&dwHttpTimeout,sizeof(DWORD)))
{
InternetCloseHandle(m_hRequest);
InternetCloseHandle(m_hConnect);
InternetCloseHandle(m_hOpen);;
// return -1;
}
// MessageBox(NULL, szSendBuffer,szHeaders, 0);
CString szSendBuffer;
// MessageBox(_T("4444444"),_T("错误"));
//
//重点要注意的地方,HttpSendRequest的第三个参数必须为多字节编码格式,否则服务器端会出错的。
//花了一天半的时间调试出来的结论。如果不进行转换,服务器端只会接收一半数据,后面的数据将会收不到。
byte* pszData =newbyte[szSendBuffer.GetLength()];
char*pConten =newchar[szSendBuffer.GetLength()];
memset(pszData,
0,szSendBuffer.GetLength());
memset(pConten,
0,szSendBuffer.GetLength());
WideCharToMultiByte( CP_ACP,
0, szSendBuffer.GetBuffer(0),
-1, pConten, szSendBuffer.GetLength(), NULL, NULL );
memcpy(pszData, pConten, szSendBuffer.GetLength());

int len = strlen((char*)pszData);
int len2 = szSendBuffer.GetLength();
//MessageBox(NULL, szSendBuffer, str);
if(HttpSendRequest(m_hRequest, szHeaders, szHeaders.GetLength(), pszData, szSendBuffer.GetLength())
== FALSE)
{
InternetCloseHandle(m_hRequest);
InternetCloseHandle(m_hConnect);
InternetCloseHandle(m_hOpen);
// return -1;
}
DWORD dwSize;
HttpQueryInfo(m_hRequest, HTTP_QUERY_RAW_HEADERS_CRLF, NULL,
&dwSize,NULL);
TCHAR
* lpHeaders =new TCHAR [dwSize];
if (!HttpQueryInfo (m_hRequest, HTTP_QUERY_RAW_HEADERS_CRLF, (LPVOID) lpHeaders, &dwSize, NULL)) //返回HTTP请求关联的信息头
{
InternetCloseHandle(m_hRequest);
InternetCloseHandle(m_hConnect);
InternetCloseHandle(m_hOpen);
delete[] lpHeaders;
// return -1;
}
// MessageBox(_T("555555"),_T("错误"));
/*

//MessageBox(NULL, lpHeaders, _T("HttpQueryInfo"), 0);
TCHAR szHttpStatus[4] = {0};
memcpy(szHttpStatus,lpHeaders+wcslen(_T("HTTP/1.1 ")),3*sizeof(TCHAR));
int dwHttpStatus = 0;
dwHttpStatus =_wtoi(szHttpStatus);
if ((dwHttpStatus<200)||(dwHttpStatus>300))
{
InternetCloseHandle(m_hRequest);
InternetCloseHandle(m_hConnect);
InternetCloseHandle(m_hOpen);
delete[] lpHeaders;
// return -1;
}
MessageBox(_T("666666"),_T("错误"));
char cResponse[1024] ;
if(!InternetReadFile (m_hRequest, (LPVOID)(cResponse),32*1024, &dwSize))
{
InternetCloseHandle(m_hRequest);
InternetCloseHandle(m_hConnect);
InternetCloseHandle(m_hOpen);
delete[] lpHeaders;
// return -1;
}
CString str;
str.Format(L"%s",cResponse);
MessageBox(str);
MessageBox(_T("77777"),_T("错误"));
if(dwSize == 0)
{
InternetCloseHandle(m_hRequest);
InternetCloseHandle(m_hConnect);
InternetCloseHandle(m_hOpen);
delete[] lpHeaders;
// return -1;
}

HttpQueryInfo(m_hRequest, HTTP_QUERY_RAW_HEADERS_CRLF, NULL, &dwSize,NULL);
if (!HttpQueryInfo (m_hRequest, HTTP_QUERY_RAW_HEADERS_CRLF,
(LPVOID) lpHeaders, &dwSize, NULL))
{
InternetCloseHandle(m_hRequest);
InternetCloseHandle(m_hConnect);
InternetCloseHandle(m_hOpen);
delete[] lpHeaders;
// return -1;
}

memcpy(szHttpStatus,lpHeaders+wcslen(_T("HTTP/1.1 ")),3*sizeof(TCHAR));
dwHttpStatus = _wtoi(szHttpStatus);
if ((dwHttpStatus<200)||(dwHttpStatus>300))
{
InternetCloseHandle(m_hRequest);
InternetCloseHandle(m_hConnect);
InternetCloseHandle(m_hOpen);
delete[] lpHeaders;
// return -1;
}
// MessageBox(NULL, lpHeaders, _T("lpHeaders"), 0);
delete[] lpHeaders;
InternetCloseHandle(m_hRequest);
InternetCloseHandle(m_hConnect);
InternetCloseHandle(m_hOpen);
//return SENDDATA_SCUCCEED ;
MessageBox(_T("88888"),_T("错误"));
*/

}

转载自:http://dev.10086.cn/cmdn/bbs/viewthread.php?tid=18153&highlight=%2B%E9%A3%9E%E9%BE%99%20MM

狼族营销:http://www.wolves69.com  助你的网站腾飞

转载于:https://www.cnblogs.com/Wolves/archive/2010/12/01/1893472.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_822348.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SEO图片测试,alt=ddd title= 就不显示alt 内容

转载于:https://www.cnblogs.com/avatar/archive/2011/07/14/2106614.html

使用HTML5,CSS3和jQuery增强网站用户体验

记 得几年前如果你需要添加一些互动元素到你的网站中用来改善用户体验&#xff1f; 是不是立刻就想到了flash实现&#xff1f;这彷佛年代久远的事了。使用现在最流行的web技术 HTML5&#xff0c;CSS3和jQuery&#xff0c;同样也可以实现类似的用户体验。而且使用这些特性将会比…

2011年回顾:改变游戏的20个HTML5网站

今年HTML5确实给我们带来了很大的冲击。HTML5 Doctors&#xff0c;Oli Studholme评选出了20个最佳网站&#xff0c;它们涵盖了语义、音频、客户端web apps、canvas以及SVG和WebGL&#xff0c;这些网站预示了未来web的发展方向。 对HTML5和web来说&#xff0c;今年是收获丰富的一…

如何获取网站服务器运行状态

在学习的过程中总要经历一些痛苦的过程才能达到想要达到的地方。前几天牛人给我出了一道题&#xff0c;说是让我写一段程序判断一个网站的服务器是否正常运行。本着我自己先仔细研究实在不行再问的原则我各种郁闷了好几天。 各种没头绪&#xff0c;虽然磕磕绊绊的找到了一个网址…

Myeclipse+Tomcat运行网站

1、新建网站项目 2、在Myeclipse中设置Tomcat路径 window-->preferences&#xff0c;在左侧的输入框中输入tomcat&#xff0c;回车。 3、运行项目 右键单击刚刚创建的项目 4、在浏览器中输入URL http://localhost:8080/FirstWebTest/ 即可见到刚刚创建的网页。

收藏网站制作常用经典ajax.prototype.javascript实例打包下载

ajax.prototype.javascript实例打包下载..不错不错&#xff0c;都是我喜欢的~。 保存在这里拉~。大家喜欢可以拿去下载。 点击下载&#xff1a;5右拖动--多选框控制显示和不显示列.rar 点击下载&#xff1a;ajax-FileUpload.rar 点击下载&#xff1a;ajax-tab.rar 点击下载&…

使用recon/domains-hosts/baidu_site模块,枚举baidu网站的子域

使用recon/domains-hosts/baidu_site模块&#xff0c;枚举baidu网站的子域 【实例3-1】使用recon/domains-hosts/baidu_site模块&#xff0c;枚举baidu网站的子域。具体操作步骤如下所示&#xff1a;本文选自Kail Linux渗透测试实训手册 &#xff08;1&#xff09;使用recon/do…

我的网站后台管理系统 - 权限系统的设计

直入正题&#xff0c;本文只谈思路&#xff0c;不谈具体代码及实现以目前我所遇到的权限需求&#xff0c;以及本人肤浅的见识&#xff0c;研究结果如下&#xff1a;后台的权限控制大概分为两类1. 我能干什么2. 我能干哪些我能干什么&#xff0c;决定了我能做的操作是什么&#…

网站重构之配置文件分解

最近赶上公司重构网站,架构组的同事为提高web部门的开发效率,总结出了一些不错的经验&#xff0c;本人也是直接受益者&#xff0c;为此用下面几篇文章来与大家分享。 这一篇&#xff0c;我想讨论的是网站配置文件问题。说到配置文件&#xff0c;我第一印象就是它的灵活性&#…

springboot创建一个新的项目(通过spring官方网站)

本文主要介绍如何通过spring官方网站创建一个spring boot的项目。 好&#xff0c;下面上货。 1、首先进入spring的网站https://start.spring.io/这个是一个偏向简洁默认的一个方式&#xff0c;也可以点击“switch to the full version”&#xff0c;那样能够看到所有配置的选项…

IronPython 个人网站样例----宝藏挖掘

IronPython for ASP.NET 的 CTP 已经发布两个多星期了&#xff0c;惭愧的是&#xff0c;因为工作繁忙&#xff0c;一直没有太多时间来学习。居然忽略了 Personal Web Site Starter Kit 的 IronPython 样例。幸亏了 Scott Guthrie 这篇博客:http://blog.joycode.com/scottgu/arc…

35个富有启发和美丽的红色网站案例

网站设计是设计师的具有挑战性的任务。&#xff0c;他们设计的网站&#xff0c;即他们应该选择什么颜色风格来进行网站设计&#xff0c;这是每一个网站设计最重要的部分。颜色总是定义您的网站的性质。 有各种颜色的网站&#xff0c;如蓝色&#xff0c;绿色&#xff0c;灰色&am…

AX 2012 安装EP时提示网站模板“AXSITEDEF#0”的文件或参数无效

问题 在Dynamics AX 2012 安装Enterprise Portal 时最后配置阶段提示错误&#xff0c;信息如下&#xff1a; The site /sites/DynamicsAx could not be created. The following exception occurred: 网站模板“AXSITEDEF#0”的文件或参数无效。 参数名: WebTemplate. 仅当Busi…

minify php,php开源系统-使用Minify来优化网站性能

1 对php网站进行了搭建&#xff0c;并完成一些对图片上传的基本功能&#xff0c;服务器数据库的操作等等2 完成 首个jquery 框架中静态模板中加入 实际的函数范例&#xff1b;并了解和掌握了 sizzle.js 框架的使用流程和机制&#xff1b;并成功的在本地apache服务器站点上进行引…

现实世界的Windows Azure:专访PrivacyCentral网站创始人、CEO Zoiner Tejada

作为现实世界Windows Azure博客系列中的一部分&#xff0c;我联系了PrivacyCentral网站创始人、CEO Zoiner Tejada&#xff0c;来探寻该公司是如何利用Windows Azure平台及Ruby语言来搭建其强大的在线隐私服务。点击这里来了解PrivacyCentral的成功案例。下面我们来看看Tejada先…

PHP网站运维必知必会,运维架构师能力要求,做好运维必知必会的4个技能

一名OPS架构师&#xff0c;学习能力占了主要一部分(其实其他行业包括任何事情等等这都是关键一点)。如果这块缺失&#xff0c;仅凭一些生产线的经验教训&#xff0c;而不去反思&#xff0c;并从中总结出更多的经验来&#xff0c;想成为一个架构师那都是不现实的。那么优秀的OPS…

IIS7 网站发布常见问题及解决方案小结

把这两天发布网站遇到了一些问题总结了一下&#xff0c;希望对大家有用&#xff01; 1、不是有效的Win32位应用程序 &#xff1a; 解决方案&#xff1a; 1、进入应用程序池》选中网站》点击右侧”高级设置“》将运行32位选项改为"True" 3、在IIS如何修改.NET FrameWo…

织梦网站服务器 开启服务,WEB服务器启用了OPTIONS方法

漏洞名称&#xff1a;WEB服务器启用了OPTIONS方法危险等级&#xff1a;★☆☆☆☆(轻危)漏洞类型&#xff1a;配置错误披露时间&#xff1a;2015-09-14漏洞描述&#xff1a;攻击者可利用options方法获取服务器的信息&#xff0c;进而准备进一步攻击。解决方案&#xff1a;修改配…

使用rem来开发你的移动端网站

what is rem &#xff1f; 1&#xff09;css3中的计量元素大小的单位&#xff0c;类似px、pt、em。 2&#xff09;一种相对根元素font-size的计算方式。1rem <html>s font-size px (你懂就好) 3&#xff09;使用场景&#xff1a;每个元素的宽高、文字大小、行距、补白等…

推荐20个精美的响应式设计(Responsive Design)网站作品

响应式网页设计是时下网页设计领域最热门的话题之一&#xff0c;该概念由著名网页设计师 Ethan Marcotte 在2010年5月份提出&#xff0c;其目标是要让设计的网站能够响应用户的行为&#xff0c;根据不同终端设备自动调整尺寸。今天这篇文章向大家推荐20个优秀的响应式布局网页 …