FTP 서버에 올라가 있는 파일 읽어오기 > IT Note

본문 바로가기
사이트 내 전체검색

IT Note

FTP 서버에 올라가 있는 파일 읽어오기
0

View 17,348  | 작성일2010.10.15 16:32

본문

FTP 서버에 올려져있는 파일을 엑세스 하기 위한 함수들은...

1. 인터넷을 열어주시고
InternetOpen(....);

2. 인터넷에 FTP모드로 커넥션 해줍니다.
InternetConnect(....);

3. 다음은 FTP내부의 파일을 열고요.
FtpOpenFile(....);

4. FTP에서 오픈한 파일 사이즈를 얻어냅니다. 
요거는 파일을 하드에 저장할때나 메모리에 집어넣을때 정확한 사이즈를 알기위함 입니다.
FtpGetFileSize(....);

5. FTP 파일을 메모리 버퍼에 얻어냅니다.
InternetReadFile(....);

6. 읽은 사이즈 만큼 어느 파일에 집어넣습니다.
WriteFile(....);

7. 그후 핸들들을 닫아줍니다~

좀 복잡하긴 합니다만 어려운 경우는 아닙니다. 저 함수들의 파라미터는 msdn 을 직접 찾아보시면 좋죠.
몇가지 Tip 이 있습니다.

#몇가지 팁#

1. InternetConnect 할때

hFtp=InternetConnect( 
hInternet,
m_ServerIP),
m_PortNum,
m_UserID,
m_UserPassword,
INTERNET_SERVICE_FTP,
INTERNET_FLAG_PASSIVE,
0);

패시브 모드일경우 빨간색을 꼭 써주셔야 하고요. 엑티브 모드면 0 을 써주셔야 합니다.

파란색 포트넘버는 기본 정의된 게 있습니다. 

이외의 포트를 사용하지 않는다면 그냥 uint 값으로 직접 넣어줍니다.

2. 모든 internet 함수들은 엑티브 모드일때 무한대기 탈 수 있습니다.

InternetReadFile( hFtpFile, (void*)filebuf, filesize, &readsize);

예를 들면 이런경우 파일을 못읽으면 무한 대기 탈 수 있습니다. try catch 써주세요.

3. FtpGetFileSize는 리턴값이 사이즈 입니다.

파라미터 두번째에 포인터로 들어가는 부분은 옵션입니다. 거기선 리턴되는거 없습니다;;;


댓글목록

등록된 댓글이 없습니다.

IT Tip&Tech 목록

게시물 검색

접속자집계

오늘
378
어제
901
최대
6,399
전체
660,737
Copyright © LittleCandle All rights reserved.
문의메일 : littlecandle99@gmail.com
모바일 버전으로 보기