BOOL WINAPI GetFileSizeEx( _In_ HANDLE hFile, --------① _Out_ PLARGE_INTEGER lpFileSize --------② );
함수 설명 :
파일의 사이즈를 반환한다. 첫번째 인자에 해당 파일의 핸들값을 전해주면 두번째 인자에다가 파일 사이즈값을 전달한다. LARGE_INTEGER의 포인터를 넘겨주고 성공시 0이 아닌값을 반환한다.
① hFile :
Size를 측정 할 파일은 핸들을 넘겨준다.
② IpFIleSize :
Size의 값을 저장할 LARGE_INTEGER의 포인터를 넘겨준다.
*LARGE_INTEGER의 형태?
typedef union _LARGE_INTEGER { struct { DWORD LowPart; LONG HighPart; }; struct { DWORD LowPart; LONG HighPart; } u; LONGLONG QuadPart;
} LARGE_INTEGER, *PLARGE_INTEGER;
DWORD WINAPI GetFileAttributes(
_In_ LPCTSTR lpFileName --------①
);
함수 설명 :
함수 성공시 파일의 특성 정보를 넘겨준다. 성공시 DWORD형 반환값을 받는데 모든 정보는 비트단위로 의미가 부여되어 있다. 실패시 INVALID_FILE_ATTRIBUTES넘겨준다.
① IpFileName :
파일 또는 디렉토리의 PATH를 입력한다.
Attribute | Meaning |
---|---|
FILE_ATTRIBUTE_ARCHIVE | 일반 문서파일. 이 파일은 이동되거나 사라질 경우 이때의 상태를 마크한다. |
FILE_ATTRIBUTE_COMPRESSED | 압축된 파일. |
FILE_ATTRIBUTE_DIRECTORY | 디렉토리. |
FILE_ATTRIBUTE_ENCRYPTED | 암호화 파일.디렉토리의 경우 이후에 생성되는 파일과 서브 디렉토리를 암호화하며 시스템 파일에는 적용안됨. |
FILE_ATTRIBUTE_HIDDEN | 숨김 파일. |
FILE_ATTRIBUTE_NORMAL | 일반 파일. |
FILE_ATTRIBUTE_OFFLINE | (캐쉬된)오프라인 파일. 이 파일은 다른곳에서 사용이 불가능하다. |
FILE_ATTRIBUTE_READONLY | 읽기 전용 파일. |
FILE_ATTRIBUTE_REPARSE_POINT | 조합된 재구문분석위치 파일. |
FILE_ATTRIBUTE_SPARSE_FILE | sparse file.디스크공간의 필요에 의하여 제한된 매우 큰 파일. (예를 들면 파일 용량은 몇기가 바이트지만 실제적인 디스크 할당 영역은 1메가 정도 밖에 안되는 파일) |
FILE_ATTRIBUTE_SYSTEM | 시스템 파일. |
FILE_ATTRIBUTE_TEMPORARY | 임시 파일. 임시파일은 바로 입출력을 행하지 않고 가급적이면 메모리상에서 읽기와 쓰기를 수행하기 떄문에 일반 파일보다 속도가 빠르다. 응용프로그램은 임시파일을 사용한 후 삭제해야 한다. |
BOOL WINAPI SetFileAttributes(
_In_ LPCTSTR lpFileName, --------①
_In_ DWORD dwFileAttributes --------②
);
함수 설명 :
지정된 파일 또는 디렉토리의 속성을 설정한다. PATH와 속성을 입력하면 된다.
① IpFIleName :
속성을 변경시킬 파일 또는 디렉토리의 PATH를 입력한다.
② dwFileAttributes :
속성값을 넘겨준다. 속성은 위에 참고.
BOOL WINAPI FileTimeToSystemTime(
_In_ const FILETIME *lpFileTime, -------①
_Out_ LPSYSTEMTIME lpSystemTime -------②
);
함수 설명 :
파일 시간 형식을 시스템 시간 형식으로 변환한다. 파일 시간은 우리가 보는 시간과는 다르기 때문에 확인을 할려면 변환을 시켜주어야한다. 성공시 0이 아닌값을 반환한다.
① IpFileTime :
FILETME 구조체의 포인터로 파일 시간을 담고 있다. 이 정보는 WIN32_FIND_DATA.ftCreationTime 값이다.
② IpSystemTime :
변환된 시간 정보를 담고 있는 SYSTEMTIME 구조체의 포인터를 넘겨주면 시스템 시간으로 변경하여 반환해준다.
'Programming > Windows&C#' 카테고리의 다른 글
[Windows/WinAPI] RegCreateKeyEx, (0) | 2013.10.20 |
---|---|
[Windows/WinAPI] LockFIleEx (0) | 2013.10.19 |
[Windows/WinAPI] FindFirstFile, FindNextFile, FindClose (0) | 2013.10.18 |
[Windows/WinAPI] SetFilePointer (0) | 2013.10.18 |
[Windows/WinAPI] [펌] 디렉토리생성, 삭제 활용. (0) | 2013.10.17 |