求C语言HTTP上传文件的代码!!!(不用MFC)
解决方案 »
- Linux下tcp基于socket的编程如何实现端口重用
- 如何把unsigned char 转换成const char *?
- 杀毒软件源代码
- 当SendMessage与WM_COPYDATA发生矛盾时……………
- DBGrid控件和RemoteData Control控件结合做Access数据库的问题,急啊!!!!(能回答这个问题的人是不是很少啊?)
- 请问一下,IFS Hook 服务是什么意思?谁能够给我一个大概的解释?
- 如何判断组合键?
- 波形显示问题
- 80分寻求SDK winsock样板程序,说明使用方法,主要函数的用法!
- 各位高手帮帮我!!!!!
- 串口通讯中十进制int数转16进制的问题
- 每分了 明天补上! 关于updatedata的问题!
使用win32api的一组。
HINTERNET InternetOpen(
IN LPCSTR lpszAgent,
IN DWORD dwAccessType,
IN LPCSTR lpszProxyName,
IN LPCSTR lpszProxyBypass,
IN DWORD dwFlags
);
HINTERNET InternetConnect(
IN HINTERNET hInternetSession,
IN LPCSTR lpszServerName,
IN INTERNET_PORT nServerPort,
IN LPCSTR lpszUsername,
IN LPCSTR lpszPassword,
IN DWORD dwService,
IN DWORD dwFlags,
IN DWORD dwContext
);
HINTERNET HttpOpenRequest(
IN HINTERNET hHttpSession,
IN LPCSTR lpszVerb,
IN LPCSTR lpszObjectName,
IN LPCSTR lpszVersion,
IN LPCSTR lpszReferer,
IN LPCSTR FAR * lpszAcceptTypes,
IN DWORD dwFlags,
IN DWORD dwContext
);
BOOL HttpSendRequest(
IN HINTERNET hHttpRequest,
IN LPCSTR lpszHeaders,
IN DWORD dwHeadersLength,
IN LPVOID lpOptional,
DWORD dwOptionalLength
);
BOOL InternetWriteFile(
IN HINTERNET hFile,
IN LPCVOID lpBuffer,
IN DWORD dwNumberOfBytesToWrite,
OUT LPDWORD lpdwNumberOfBytesWritten
);
BOOL InternetReadFile(
IN HINTERNET hFile,
IN LPVOID lpBuffer,
IN DWORD dwNumberOfBytesToRead,
OUT LPDWORD lpNumberOfBytesRead
);
用这些函数写个通信类就搞定了呵呵
参照这个
CHttpConnection *pConnection=session.GetHttpConnection(""+app->url+"",DWORD(80));
CHttpFile* pFile=pConnection->OpenRequest("POST","/aa.aspx");
CString formdata="tname="+app->vec[i]->name;
formdata+="&ttime="+app->vec[i]->time;
CString path=app->vec[i]->Localpath;
formdata+="&state="+ToString(app->vec[i]->state);
formdata+="&path="+path;
formdata+="&xx="+app->vec[i]->report;
pFile->AddRequestHeaders("Accecpt: */*");
pFile -> AddRequestHeaders("Content-Type: application/x-www-form-urlencoded");
pFile->SendRequest(NULL,0,(LPVOID)(LPCTSTR)formdata,formdata.GetLength());