336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
회사에서 신규로 솔루션을 하나 망글고 있습니다

전에 소스들은 VC6.0 기반에 ACP로 되어 있어서

큰 맘먹고 2008 UNICODE로 바꿨드만 SendRequest가 잘 되서 찾아 본 내용 입니다.

필요 하신분은 아래 내용을 보시면 아실걸로 생각 됩니다

원본 포스트 -> http://www.codeguru.com/forum/showthread.php?t=203212

< 내용 >

bool FormPost(LPCTSTR serverURL, LPCTSTR requestPage, LPCTSTR formData)
{
  
// CREATE INTERNET SESSION
  
CInternetSession session(_T("FORM POST TEST"),PRE_CONFIG_INTERNET_ACCESS);
  
// MAKE AN HTTP CONNECTION
  
CHttpConnection* pConnection = session.GetHttpConnection(serverURL);
  
// HEADERS
  
CString strHeaders = _T("Content-Type: application/x-www-form-urlencoded");
  
// OPEN A POST REQUEST
  
CHttpFile* pFile = pConnection->OpenRequest(CHttpConnection::HTTP_VERB_POST,requestPage);
  
// UNICODE
  #if defined(_UNICODE)
    // Length of form data (including '\\0')
    
const int dwLength = _tcslen(formData) + 1;
    
// Alocate ANSI character array
    
char *lpFormData = new char[dwLength];
    
// Convert wide char form data to ANSI
    
VERIFY(0!=::WideCharToMultiByte(CP_ACP,0,formData,-1,lpFormData,dwLength,0,0));
    
// Send the request to the HTTP server
    
VERIFY(pFile->SendRequest(strHeaders,lpFormData,dwLength));
    
//  Delete ANSI array
    
delete [] lpFormData;
  
// ANSI
  #else
    // Send the request to the HTTP server
    
VERIFY(pFile->SendRequest(strHeaders,(LPVOID)formData,strlen(formData)));
  
#endif
  // GET POST STATUS
  
DWORD dwPostStatus = 0;
  
VERIFY(pFile->QueryInfoStatusCode(dwPostStatus));
  
// CLOSE THE HTTP FILE
  
pFile->Close();
  
// Return true if status = 200
  
return 200 == dwPostStatus;
}


<중요포인트>

 // Convert wide char form data to ANSI
    
VERIFY(0!=::WideCharToMultiByte(CP_ACP,0,formData,-1,lpFormData,dwLength,0,0));
    
// Send the request to the HTTP server
    
VERIFY(pFile->SendRequest(strHeaders,lpFormData,dwLength));
    
//  Delete ANSI array
    
delete [] lpFormData;

+ Recent posts