http://www.installshield.com/solutions/internet_dist/
BOOL SaveImage(LPCTSTR szImgPath)
{
CInternetSession is;
CInternetFile* pif = NULL;
HANDLE hFile = NULL;
pif = (CInternetFile*)is.OpenURL(szImgPath, 1, INTERNET_FLAG_TRANSFER_BINARY);
if ( pif == NULL )
return FALSE;
CHAR szLocalFile[255];
wsprintf(szLocalFile, "C:\\%s", pif->GetFileName());
hFile = CreateFile(szLocalFile, GENERIC_WRITE, NULL, NULL, CREATE_ALWAYS,
FILE_ATTRIBUTE_NORMAL, NULL);
if ( hFile == INVALID_HANDLE_VALUE )
{
pif->Close();
is.Close();
return FALSE;
}
while(1)
{
INT nRead = 0;
DWORD dwWritten = 0;
CHAR szBuffer[255];
nRead = pif->Read(szBuffer, 255);
if ( nRead == 0 )
break;
WriteFile(hFile, szBuffer, nRead, &dwWritten, NULL);
}
CloseHandle(hFile);
pif->Close();
is.Close();
return TRUE;
}
BOOL SaveImage(LPCTSTR szImgPath)
{
CInternetSession is;
CInternetFile* pif = NULL;
HANDLE hFile = NULL;
pif = (CInternetFile*)is.OpenURL(szImgPath, 1, INTERNET_FLAG_TRANSFER_BINARY);
if ( pif == NULL )
return FALSE;
CHAR szLocalFile[255];
wsprintf(szLocalFile, "C:\\%s", pif->GetFileName());
hFile = CreateFile(szLocalFile, GENERIC_WRITE, NULL, NULL, CREATE_ALWAYS,
FILE_ATTRIBUTE_NORMAL, NULL);
if ( hFile == INVALID_HANDLE_VALUE )
{
pif->Close();
is.Close();
return FALSE;
}
while(1)
{
INT nRead = 0;
DWORD dwWritten = 0;
CHAR szBuffer[255];
nRead = pif->Read(szBuffer, 255);
if ( nRead == 0 )
break;
WriteFile(hFile, szBuffer, nRead, &dwWritten, NULL);
}
CloseHandle(hFile);
pif->Close();
is.Close();
return TRUE;
}
'KB > MFC/Win32' 카테고리의 다른 글
MSDN Unicode 관련 설명 해석 (0) | 2004.03.19 |
---|---|
유니코드 텍스트 파일 안의 2바이트 시그니처 (0) | 2004.03.19 |
웹브라우저컨트롤 ShowWindow(SW_HIDE)시 뻑나는 버그 (0) | 2004.03.19 |
리소스 영문화 순서 (0) | 2004.03.19 |
[mfc] 내가 쓰는 리스트컨트롤 초기화 (0) | 2004.03.19 |