인터넷 맛보기 - WinInet과 FTP
WinInet(Windows Internet) API는 프로그래머가 세 개의 널리 사용되는 인터넷 프로토콜을 사용하는 데 도움을 주는 고수준 함수들의 집합이다
* WinInet이 지원하는 프로토콜
1. 월드 와이드 웹에 사용되는 하이퍼텍스트 전송 프로토콜(Hypertext Transfer Protocol, HTTP).
2. 파일 전송 프로토콜 (File Trasfer Protocol, FTP)
3. 고퍼(Gopher)
FTP API 개관
WinInet 함수를 호출하는 모든 소스파일에는 WININET.H 헤더 파일을 포함시켜야 한다.
또한 프로그램은 WININET.LIB와 링크해야 한다.
* WinInet 사용과 관련된 FTP 함수들의 종류
▶ InternetOpen ( )
- WinInet API를 사용하려면 제일 먼저 호출.
- WinInet이 지원하는 모든 프로토콜을 사용할 수 있다.
- 인터넷 세션(Internet Session)에 대한 핸들을 리턴.
이 값을 HINSTERNET 타입 변수에 저장!
▶ InternetCloseHandle ( )
- 애플리케이션이 FTP 사용을 마치려면 이 함수를 호출하여 핸들을 닫아야 한다.
- WinInet API 사용이 끝나면 호출하여 핸들을 닫아야 한다.
▶ InternetConnect ( )
- FTP를 사용하려면 호출.
- 첫 번째 인자 : InternetOpen()이 생성한 인터넷 세션 핸들을 요구
- 두 번째 인자 : 서버 이름을 넣음. ex) 'ftp.chalespetzold.com'
- 세 번째 인자 : FTP를 사용하려고 한다는 뜻의 상수값을 넣음.
▶ 디렉토리를 다룰 수 있게 하는 함수
fSuccess = FtpCreateDirectory ( hFtpSession, szDirectory);
fSuccess = FtpRemoveDirectory ( hFtpSession, szDirectory);
fSuccess = FtpSetCurrentDirectory ( hFtpSession, szDirectory);
fSuccess = FtpGetCurrentDirectory ( hFtpSession, szDirectory, &dwCharacterCount);
만약 프로그램이 결과 디렉토리의 절대 경로명을 알고 싶다면?
FtpSetCurrentDirectory() 호출 후 FtpGetCurrentDirectory()를 호출해야 한다.
▶ 파일을 지우거나 이름을 변경할 수 있게 하는 함수
fSuccess = FtpDeleteFile (hFtpSession, szFileName );
fSuccess = FtpRenameFile (hFtpSession, szOldName, szNewName );
▶ 파일 (혹은 와일드카드 문자를 포함하는 템플릿과 일치하는 여러 개의 파일)을 검색하려면
FtpFindFirstFile ( ) 을 호출
▶ 추가적인 파일 이름 적기
InternetFindNextFile( )
▶ FtpGetFile( )
FTP 서버에서 로컬 저장소로 파일을 복사
▶ FtpPutFile( )
로컬 저장소에서 FTP 서버로 파일을 복사
댓글 없음:
댓글 쓰기