KNOWNFOLDER_DEFINITION 구조체(shobjidl_core.h)
알려진 폴더의 세부 정보를 정의합니다.
구문
typedef struct KNOWNFOLDER_DEFINITION {
KF_CATEGORY category;
LPWSTR pszName;
LPWSTR pszDescription;
KNOWNFOLDERID fidParent;
LPWSTR pszRelativePath;
LPWSTR pszParsingName;
LPWSTR pszTooltip;
LPWSTR pszLocalizedName;
LPWSTR pszIcon;
LPWSTR pszSecurity;
DWORD dwAttributes;
KF_DEFINITION_FLAGS kfdFlags;
FOLDERTYPEID ftidType;
} KNOWNFOLDER_DEFINITION;
멤버
category
형식: KF_CATEGORY
폴더를 가상, 고정, 공통 또는 사용자별로 분류하는 KF_CATEGORY 상수의 단일 값입니다.
pszName
형식: LPWSTR
null로 끝나는 유니코드 문자열로 저장된 알려진 폴더의 지역화되지 않은 정식 이름에 대한 포인터입니다. 이 폴더가 일반 또는 사용자별 폴더인 경우 이 값은 "사용자 셸 폴더" 레지스트리 설정의 값 이름으로도 사용됩니다. 이 이름은 사람이 읽을 수 있는 고유한 이름입니다. 제3자는 형식 Company.Application.Name
을 따르는 것이 좋습니다. 여기에 지정된 이름은 표시 이름과 혼동해서는 안 됩니다.
pszDescription
형식: LPWSTR
null로 끝나는 유니코드 문자열로 저장된 알려진 폴더에 대한 간단한 설명에 대한 포인터입니다. 이 설명에는 폴더의 용도와 사용법이 포함되어야 합니다.
fidParent
형식: KNOWNFOLDERID
상위 폴더로 사용할 다른 알려진 폴더의 이름을 지정하는 KNOWNFOLDERID 값입니다. 일반 및 사용자별 폴더에만 적용됩니다. 이 값은 pszRelativePath와 함께 사용됩니다. 자세한 내용은 비고를 참조하세요.
pszRelativePath에 대한 값이 제공되지 않은 경우 이 값은 선택 사항입니다.
pszRelativePath
형식: LPWSTR
선택 사항입니다. fidParent에 지정된 부모 폴더를 기준으로 하는 경로에 대한 포인터입니다. null로 끝나는 유니코드 문자열이며 실제 파일 시스템 경로를 참조하며 지역화되지 않습니다. 일반 및 사용자별 폴더에만 적용됩니다. 자세한 내용은 비고를 참조하세요.
pszParsingName
형식: LPWSTR
null로 끝나는 유니코드 문자열로 저장된 폴더의 셸 네임스페이스 폴더 경로에 대한 포인터입니다. 가상 폴더에만 적용됩니다. 예를 들어 Control Panel
에는 의 구문 분석 이름이 있습니다 ::%CLSID_MyComputer%::%CLSID_ControlPanel%
.
pszTooltip
형식: LPWSTR
선택 사항입니다. 이 알려진 폴더를 만들 때 사용되는 기본 도구 설명 리소스에 대한 포인터입니다. 이 형식의 null로 끝나는 유니코드 문자열입니다.
모듈 이름, 리소스 ID
예를 들어 @%_SYS_MOD_PATH%,-12688
은 일반 그림의 도구 설명입니다. 폴더를 만들 때 이 문자열은 해당 폴더의 Desktop.ini 복사본에 저장됩니다. 나중에 다른 셸 API에서 변경할 수 있습니다. 이 리소스는 지역화될 수 있습니다.
가상 폴더에는 이 정보가 필요하지 않습니다.
pszLocalizedName
형식: LPWSTR
선택 사항입니다. 폴더를 만들 때 사용되는 기본 지역화된 이름 리소스에 대한 포인터입니다. 이 형식의 null로 끝나는 유니코드 문자열입니다.
모듈 이름, 리소스 ID
폴더를 만들 때 이 문자열은 해당 폴더의 Desktop.ini 복사본에 저장됩니다. 나중에 다른 셸 API에서 변경할 수 있습니다.
가상 폴더에는 이 정보가 필요하지 않습니다.
pszIcon
형식: LPWSTR
선택 사항입니다. 폴더를 만들 때 사용되는 기본 아이콘 리소스에 대한 포인터입니다. 이 형식의 null로 끝나는 유니코드 문자열입니다.
모듈 이름, 리소스 ID
폴더를 만들 때 이 문자열은 해당 폴더의 Desktop.ini 복사본에 저장됩니다. 나중에 다른 셸 API에서 변경할 수 있습니다.
가상 폴더에는 이 정보가 필요하지 않습니다.
pszSecurity
형식: LPWSTR
선택 사항입니다. 보안 설명자 정의 언어 형식 문자열에 대한 포인터입니다. 폴더를 만들 때 수신하는 기본 보안 설명자를 설명하는 null로 끝나는 유니코드 문자열입니다. 이 매개 변수가 NULL인 경우 새 폴더는 해당 부모의 보안 설명자를 상속합니다. 이는 모든 사용자가 액세스하는 공통 폴더에 특히 유용합니다.
dwAttributes
형식:DWORD
선택 사항입니다. 폴더를 만들 때 폴더에 지정된 기본 파일 시스템 특성입니다. 예를 들어 파일이 숨겨지고 읽기 전용일 수 있습니다(FILE_ATTRIBUTE_HIDDEN 및 FILE_ATTRIBUTE_READONLY). 가능한 값의 전체 목록은 CreateFile 함수의 dwFlagsAndAttributes 매개 변수를 참조하세요. 필요하지 않은 경우 -1로 설정합니다.
kfdFlags
선택 사항입니다. 리디렉션을 제한하고, PC-PC 로밍을 허용하고, 알려진 폴더가 만들어지는 시간을 제어할 수 있는 KF_DEFINITION_FLAGS 열거형의 값 중 하나입니다. 필요하지 않은 경우 0으로 설정합니다.
ftidType
형식: FOLDERTYPEID
콘텐츠(예: 문서, 음악 또는 사진)를 기반으로 알려진 폴더 유형을 식별하는 FOLDERTYPEID 값 중 하나입니다. 이 값은 GUID입니다.
설명
fidParent 및 pszRelativePath 값이 함께 작동합니다. 예를 들어 MyNewFolder라는 폴더를 정의하고 해당 폴더를 ...< Username>\AppData\Local\MyApp\MyNewFolder. fidParent에서 ...& lt를 나타내는 FOLDERID_LocalAppData 제공합니다. Username>\AppData\Local. pszRelativePath에서 "\MyApp\MyNewFolder"를 제공합니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows Vista [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2008 [데스크톱 앱만 해당] |
머리글 | shobjidl_core.h(Shobjidl.h 포함) |
추가 정보
IKnownFolder::GetFolderDefinition