파일 또는 I/O 장치를 생성 또는 오픈한다.
* I/O 장치 : file, file stream, directory, physical disk, volume, console buffer, tap drive, communications resource, mailslot, pipe
- 출처 : MSDN
- 생성 또는 열기 위한 파일 또는 장치의 이름이다.
- 물리 드라이브 접근 시 : "\\.\PhysicalDrive0 "
- 논리 드라이브 접근 시 : "\\.\C: "
- 읽기, 쓰기와 같은 접근의 목적을 설정 한다.
더보기 접기
#define GENERIC_READ (0x80000000L) #define GENERIC_WRITE (0x40000000L) #define GENERIC_EXECUTE (0x20000000L) #define GENERIC_ALL (0x10000000L)
- 출처 : WinNT.h
접기
- 공유 모드를 설정 한다.
더보기 접기
#define FILE_SHARE_READ 0x00000001
#define FILE_SHARE_WRITE 0x00000002
#define FILE_SHARE_DELETE 0x00000004
- 출처 : WinNT.h
접기
- 자식 프로세스에 대한 핸들 상속 여부를 지정 한다.
- 사용하지 않을 경우 NULL을 설정 한다.
- 파일 생성 처리에 대한 조건을 설정 한다.
더보기 접기
#define CREATE_NEW 1 // 파일 생성 시 존재 하면 생성하지 않고 에러를 발생 한다. #define CREATE_ALWAYS 2 // 파일 생성 시 존재 하면 기존 파일 삭제 후 새로 생성 한다. #define OPEN_EXISTING 3 // 기존파일을 연다, 존재 하지 않으면 에러를 발생 한다. #define OPEN_ALWAYS 4 // 기존 파일을 연다, 존재 하지 않으면 새로 생성 한다. #define TRUNCATE_EXISTING 5 // 기존 파일을 열고 파일의 크기를 0으로 만든다, 반드시 파일은 쓰기 모드로
열려야 한다.
- 출처 : WinNT.h
접기
- 파일 속성 및 옵션을 설정 한다.
더보기 접기
#define FILE_ATTRIBUTE_READONLY 0x00000001 #define FILE_ATTRIBUTE_HIDDEN 0x00000002 #define FILE_ATTRIBUTE_SYSTEM 0x00000004 #define FILE_ATTRIBUTE_DIRECTORY 0x00000010 #define FILE_ATTRIBUTE_ARCHIVE 0x00000020 #define FILE_ATTRIBUTE_DEVICE 0x00000040 #define FILE_ATTRIBUTE_NORMAL 0x00000080 #define FILE_ATTRIBUTE_TEMPORARY 0x00000100 #define FILE_ATTRIBUTE_SPARSE_FILE 0x00000200 #define FILE_ATTRIBUTE_REPARSE_POINT 0x00000400 #define FILE_ATTRIBUTE_COMPRESSED 0x00000800 #define FILE_ATTRIBUTE_OFFLINE 0x00001000 #define FILE_ATTRIBUTE_NOT_CONTENT_INDEXED 0x00002000 #define FILE_ATTRIBUTE_ENCRYPTED 0x00004000 #define FILE_ATTRIBUTE_VIRTUAL 0x00010000
- 출처 : WinNT.h
접기
- 읽기 모드를 가진 템플릿 파일의 확장 속성을 설정 한다.
- 일반적으로 사용 하지 않으며 NULL을 설정 한다.
Return value : 파일 생성 또는 열기에 성공 시 파일의 핸들을 반환 하고, 실패 시 INVALID_HANDLE_VALUE(-1)을 반환 한다.
Header : FileAPI.h(include Windows.h)
DLL : Kernel32.dll