728x90
SetFileAttributes함수는 File의 속성을 설정합니다.
Declare Function SetFileAttributes Lib "kernel32" Alias "SetFileAttributesA" (ByVal lpFileName As String, ByVal dwFileAttributes As Integer) As Integer
▶VB.NET 선언
[DllImport("kernel32")]
public static extern int SetFileAttributes(string lpFileName, int dwFileAttributes);
▶C# 선언
SetFileAttributes함수의 첫번째 인수는 속성을 설정할 File이 있는 경로와 이름을 지정하고 두번째 인수에서는 File에 설정할 속성을 지정합니다.
이 속성에 대해서는 다음표를 참고해 주시기 바랍니다.
상수 | 값 | 설명 |
FILE_ATTRIBUTE_ARCHIVE | 20 | 일반문서 File |
FILE_ATTRIBUTE_ENCRYPTED | 4000 | 암호화된 File |
FILE_ATTRIBUTE_HIDDEN | 2 | 숨김 File |
FILE_ATTRIBUTE_NORMAL | 80 | 일반 File |
FILE_ATTRIBUTE_OFFLINE | 1000 | Offline File |
FILE_ATTRIBUTE_READONLY | 1 | 읽기전용 File |
FILE_ATTRIBUTE_NOT_CONTENT_INDEXED | 200 | Indexing 하지 않음 |
FILE_ATTRIBUTE_SYSTEM | 4 | System File |
FILE_ATTRIBUTE_TEMPORARY | 100 | 임시 File |
값은 16진수 기준으로 VB.NET에서는 &H, C#에서는 0x로 구분합니다.
설정하고자 하는 File의 속성을 일반 txt문서 File로 할것이라면 설정 값을 32(16진수 20)로 하면 됩니다. 만일 이에 더해 숨김속성도 같이 설정하려면 34(32(16진수 20) + 2(16진수 2))로 해야 합니다.
예를 들어 C Drive에 있는 aaa.txt File을 일반문서 File과 숨김속성을 같이 설정하려면 SetFileAttributes함수는 다음과 같이 호출할 수 있습니다.
SetFileAttributes("C:\aaa.txt", 34)
▶VB.NET 호출
SetFileAttributes("C:\\aaa.txt", 34);
▶C# 호출
이 함수는 실행에 실패할 경우 0을 반환합니다.
728x90
'.NET > Windows API for .NET' 카테고리의 다른 글
SetSystemTime - System날짜및 시간설정 (0) | 2019.08.06 |
---|---|
CopyFile - File복사 (0) | 2019.08.06 |
GetWindowTextLength - 특정 Window의 제목문자열 크기구하기 (0) | 2019.08.06 |
GetDeviceCaps - Device Context의 정보 구하기 (0) | 2019.08.06 |
Ellipse - Window나 Control에 타원그리기 (0) | 2019.08.06 |