WinInetAPI问题,HttpSendRequest总返回12007

lvlin1980 2010-02-25 03:07:17
WinInetAPI问题,HttpSendRequest总返回12007.

代码如下,哪位大侠帮看看(刚注册也没啥分,先谢谢了)。
HINTERNET hSession = NULL;
WCHAR m_Url[MAX_URL_LEN] = {0};
WCHAR m_GetEmail[MAX_URL_LEN] = {0};

CString getEmail = _T("");

SetCursor(LoadCursor(NULL, IDC_WAIT));

hSession = InternetOpen (L"WapClient", INTERNET_OPEN_TYPE_PRECONFIG, NULL, 0, 0);
if (hSession == NULL)
{
AfxMessageBox(L"调用InternetOpen失败。");
goto Error;
}

//连接服务器
wcscpy(m_Url, L"http://192.168.8.70/mig-mobile-war/receive");//内网wap站点
HINTERNET hConnect = InternetConnect(hSession,
m_Url,
INTERNET_DEFAULT_HTTP_PORT,
NULL,
NULL,
INTERNET_SERVICE_HTTP,
0,
0);
if (hConnect == NULL)
{
AfxMessageBox(L"调用InternetConnect失败。");
goto Error;
}
//创建请求
LPCWSTR acceptTypes[2] = {TEXT("*/*"), NULL};
DWORD flags = INTERNET_FLAG_RELOAD |
INTERNET_FLAG_NO_CACHE_WRITE |
INTERNET_FLAG_KEEP_CONNECTION | // This is necessary if authentication is required.
INTERNET_FLAG_NO_COOKIES; // This is used to avoid possible server errors on successive sessions.
/*flags = flags
| INTERNET_FLAG_SECURE
| INTERNET_FLAG_IGNORE_CERT_CN_INVALID
| INTERNET_FLAG_IGNORE_CERT_DATE_INVALID
;*/
HINTERNET hRequest = HttpOpenRequest(hConnect,
L"POST",
L"",
L"HTTP/1.1",
//HTTP_VERSION,
NULL,
acceptTypes,
flags,
0);
if (hRequest == NULL)
{
AfxMessageBox(L"调用HttpOpenRequest失败。");
goto Error;
}
//发送请求
//CString getEmail = _T("");
getEmail.Format(L"<?xml version=\"1.0\" encoding=\"utf-8\"?>\r\n"
L"<xml>\r\n"
L"<action>receive</action>\r\n"
L"<cell id=\"13910019097\"></cell>\r\n"
L"<password>%s</password>\r\n"
L"<number>%d</number>\r\n"
L"</xml>\r\n", L"nidaye", 2);
//CString->char *
int nSize = getEmail.GetLength();
char *msg = new char[nSize + 1];
memset(msg, 0, nSize + 1);
wcstombs(msg, getEmail, nSize + 1);

unsigned int contentLength = 0;
//
// Prepares headers
//
WCHAR headers[512];
contentLength = (msg != NULL)?strlen(msg):0;

const void* msgToSend = (const void*)msg;

wsprintf(headers, TEXT("Content-Type: %s\r\nContent-Length: %d"), TEXT("application/vnd.syncml+xml"), contentLength);
int numretries;

for (numretries = 0; numretries < 3; numretries++)
{
if (!HttpSendRequest(hRequest, headers, wcslen(headers), (LPVOID)msgToSend, contentLength))
{
int errorCode = GetLastError();
CString tmp;
tmp.Format(L"%d", errorCode);
AfxMessageBox(tmp); //此处总返回12007

//AfxMessageBox(L"调用HttpSendRequest失败。");
goto Error;
}


}
...全文
1533 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
我骷髅我快乐 2010-09-06
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 lvlin1980 的回复:]
http://192.168.8.70/mig-mobile-war/receive 为内部测试用wap站点
[/Quote]

如果是用的WIFI 呢? 我用WIFI 连接内网的IP ,InternetSendRequest总是返回 12007(The server name could not be resolved. )
我骷髅我快乐 2010-09-06
  • 打赏
  • 举报
回复
我登陆了 怎么看不了内容?
yy121086191 2010-07-28
  • 打赏
  • 举报
回复
搞定没?求解答
xwvivian 2010-07-06
  • 打赏
  • 举报
回复
怎么解决的啊
为毛呀 2010-04-26
  • 打赏
  • 举报
回复
找到原因了没有呀?
lvlin1980 2010-02-27
  • 打赏
  • 举报
回复
看来最后还是需要小弟自己搞定了。。。。。。
lvlin1980 2010-02-26
  • 打赏
  • 举报
回复
有明白wm向wap站点发请求的帮忙看看
lvlin1980 2010-02-25
  • 打赏
  • 举报
回复
目前,还是在模拟器上跑的,还没走gprs,因为外网映射什么的还没弄好。
刚才又调试了一下,把Content-Type的内容修改为TEXT("text/xml; charset=\"utf-8\"") 可惜还不对, wap测试的url应该是没问题,因为,在j2me和symbian上可以向它发http请求
儿大不由爷 2010-02-25
  • 打赏
  • 举报
回复
如果你用手机走GPRS进行测试,这个内部的IP肯定是不行的,需要公网IP
lvlin1980 2010-02-25
  • 打赏
  • 举报
回复
http://192.168.8.70/mig-mobile-war/receive 为内部测试用wap站点
内容概要:本文档为成都科洛威尔科技有限公司生产的MIL-1394B仿真板卡的API函数使用手册,详细介绍了该板卡在Windows和Linux环境下进行MIL-1394B/AS5643线协议仿真和测试所需的API函数、数据结构、使用流程及例程。板卡支持CC(控制计算机)、RN(远程节点)和BM(线监控)三种工作模式,提供丰富的函数用于设备管理、节点控制、消息收发、故障注入、中断处理等功能,并涵盖数据包格式、发送接收流程、错误检测机制等关键技术细节。手册还提供了函数调用示例和典型应用场景,帮助开发者快速掌握板卡的开发与调试。; 适合人群:从事航空电子、嵌入式系统或工业自动化领域,具备C/C++编程基础并熟悉线通信协议的1-3年工作经验的软硬件研发工程师。; 使用场景及目标:①在复杂线环境中实现高精度数据仿真与测试;②开发基于MIL-1394B协议的通信系统;③进行消息收发控制、时序偏移管理、错误注入测试及中断响应处理等高级功能验证;④通过API调用实现对板卡工作模式、数据流、状态监测的全面控制。; 阅读建议:建议结合配套的demo示例程序进行实践,重点理解各函数的调用时序与参数配置逻辑,尤其关注STOF时序控制、消息发送模式、错误注入机制等核心功能的实现原理。使用前需仔细阅读“基本使用流程”与“附录”部分,确保正确配置硬件环境与通信参数。

7,655

社区成员

发帖
与我相关
我的任务
社区描述
Windows Phone是微软发布的一款手机操作系统,它将微软旗下的Xbox LIVE游戏、Zune音乐与独特的视频体验整合至手机中。
社区管理员
  • Windows客户端开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧