上传代码如下
void CShatterDlg::OnSend() 
{
CInternetSession session;
CHttpConnection* pserver=NULL;
CHttpFile* pfile=NULL;

char   szHeader[]   =   "Accept:   */*\r\nContent-Type:   multipart/form-data;   boundary=----VisualKingBoundary----";    char   szMimeHeader[]   =   "------VisualKingBoundary----\r\nContent-Disposition:   form-data;   name=\"file\";   filename=\"test.wav\"\r\nContent-Type:   audio/wav\r\n\r\n"; 

char   szMimeTail[]   =   "\r\n------VisualKingBoundary----\r\nContent-Disposition:   form-data;   name=\"Submit\"\r\n\r\nSubmit\r\n------VisualKingBoundary------\r\n";   CFile f;
f.Open("D:\\s.gif",CFile::modeRead); INTERNET_PORT nPort=(INTERNET_PORT)atoi("8080"); pserver = session.GetHttpConnection("localhost",nPort); pfile = pserver->OpenRequest(CHttpConnection::HTTP_VERB_POST,"/show/upfile.do"); pfile->AddRequestHeaders(szHeader); pfile->SendRequestEx(f.GetLength()); pfile->Write(szMimeHeader,strlen(szMimeHeader)); int dwcount = 0;
char bf[1024]; while(f.Read(bf,1024)!=0){
pfile->Write(bf,sizeof(bf));
} pfile->Write(szMimeTail,strlen(szMimeTail)); pfile->EndRequest(); pserver->Close();
delete pserver; pfile->Close();
delete pfile; f.Close(); MessageBox("ok");
}void CShatterDlg::OnWriter() 
{
// TODO: Add your control notification handler code here
CFile f;
f.Open("D:\\s.gif",CFile::modeRead);
char bf[1024];

CFile f2;
f2.Open("D:\\test.gif",CFile::modeWrite);

while(f.Read(bf,1024)!=0){
f2.Write(bf,sizeof(bf));
}
f.Close();
f2.Close();
MessageBox("im");
}