336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
블로그 내에서 비슷한 글 링크 : http://www.npteam.net/447
WinInet이 서버당 연결 수를 제한한다. 따라서 HttpSendRequest 및 InternetOpenURL 의 함수를 호출할 경우에는 윈도우에 설정된 레지스트리 기본값이 2개로 되어 있다.
단일 HTTP 1.1 서버에 대한 동시 요청 수를 설정합니다.
MaxConnectionsPer1_0Server REG_DWORD(기본값 4)
단일 HTTP 1.0 서버에 대한 동시 요청 수를 설정합니다.
#include "AFXINET.H"
CInternetSession* pSession = NULL;
CStdioFile* pFile = NULL;
TCHAR szError[1024] = {0};
TRY
{
pSession = new CInternetSession;
pFile = pSession->OpenURL( "http://www.devpia.com" );
}
CATCH( CInternetException, pEx )
{
pEx->GetErrorMessage( szError, 1024 );
}
END_CATCH
if( pFile != NULL )
{
//여기서 웹페이지 내용을 가지고 처리
//HTTP를 호출했을 시
CHttpFile* pHttpFile = (CHttpFile*)pFile;
/*원하는 코드를 실행한다.*/
// pHttpFile->ReadString(CString DataType);
delete pHttpFile;
pHttpFile = NULL;
pFile = NULL;
}
if( pSession != NULL )
{
//pSession->Close(); //CInternetSession 소멸자가 알아서 호출함
delete pSession;
pSession = NULL;
}
/*
파라미터를 GET 방식으로 넘기시려면 ...
CInternetSession::OpenURL()로 접속할 URL과 파라미터 넘겨주면,
CStdioFile 포인터를 넘겨 주거든요. 그냥 파일 처럼 처리하시면 되겠네요.
OpenURL("http://localhost/test.asp?name=하나")
이런 식으로 처리하실 수 있습니다
파라미터를 POST 방식으로 넘기시려면 ...
CInternetSession::GetHttpConnection()으로 HTTP 커넥션 맺어 주시고,
CHttpConnection::OpenRequest()로 URL에 접속해서,
CHttpFile::AddRequestHeaders()로 헤더와 POST 정보를 추가해서 ...
CHttpFile::SendRequest()로 데이터 날려 주시면 됩니다.
*/
출처 : http://www.npteam.net/80
WinInet이 서버당 연결 수를 제한한다. 따라서 HttpSendRequest 및 InternetOpenURL 의 함수를 호출할 경우에는 윈도우에 설정된 레지스트리 기본값이 2개로 되어 있다.
REGEDIT4
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings]
"MaxConnectionsPer1_0Server"= dword:00000064
"MaxConnectionsPerServer"= dword:00000064
MaxConnectionsPerServer REG_DWORD(기본값 2) [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings]
"MaxConnectionsPer1_0Server"= dword:00000064
"MaxConnectionsPerServer"= dword:00000064
단일 HTTP 1.1 서버에 대한 동시 요청 수를 설정합니다.
MaxConnectionsPer1_0Server REG_DWORD(기본값 4)
단일 HTTP 1.0 서버에 대한 동시 요청 수를 설정합니다.
#include "AFXINET.H"
CInternetSession* pSession = NULL;
CStdioFile* pFile = NULL;
TCHAR szError[1024] = {0};
TRY
{
pSession = new CInternetSession;
pFile = pSession->OpenURL( "http://www.devpia.com" );
}
CATCH( CInternetException, pEx )
{
pEx->GetErrorMessage( szError, 1024 );
}
END_CATCH
if( pFile != NULL )
{
//여기서 웹페이지 내용을 가지고 처리
//HTTP를 호출했을 시
CHttpFile* pHttpFile = (CHttpFile*)pFile;
/*원하는 코드를 실행한다.*/
// pHttpFile->ReadString(CString DataType);
delete pHttpFile;
pHttpFile = NULL;
pFile = NULL;
}
if( pSession != NULL )
{
//pSession->Close(); //CInternetSession 소멸자가 알아서 호출함
delete pSession;
pSession = NULL;
}
/*
파라미터를 GET 방식으로 넘기시려면 ...
CInternetSession::OpenURL()로 접속할 URL과 파라미터 넘겨주면,
CStdioFile 포인터를 넘겨 주거든요. 그냥 파일 처럼 처리하시면 되겠네요.
OpenURL("http://localhost/test.asp?name=하나")
이런 식으로 처리하실 수 있습니다
파라미터를 POST 방식으로 넘기시려면 ...
CInternetSession::GetHttpConnection()으로 HTTP 커넥션 맺어 주시고,
CHttpConnection::OpenRequest()로 URL에 접속해서,
CHttpFile::AddRequestHeaders()로 헤더와 POST 정보를 추가해서 ...
CHttpFile::SendRequest()로 데이터 날려 주시면 됩니다.
*/
출처 : http://www.npteam.net/80
'# IT, Computer Science > MFC, API' 카테고리의 다른 글
[MFC] 폴더 선택 다이얼로그 띄우기 (0) | 2011.01.12 |
---|---|
MFC 트레이 아이콘 등록 및 윈도우 감추기 (0) | 2010.09.07 |
dialog간 변수 참조 (0) | 2010.08.14 |
내 컴퓨터의 아이피주소를 얻는 함수 (0) | 2010.07.25 |
Service 프로그램 (0) | 2010.06.27 |