IPropertyDescription::FormatForDisplay 메서드(propsys.h)
속성 값의 형식이 지정된 유니코드 문자열 표현을 가져옵니다.
구문
HRESULT FormatForDisplay(
[in] REFPROPVARIANT propvar,
[in] PROPDESC_FORMAT_FLAGS pdfFlags,
[out] LPWSTR *ppszDisplay
);
매개 변수
[in] propvar
형식: REFPROPVARIANT
속성의 형식과 값을 포함하는 PROPVARIANT 구조체에 대한 참조입니다.
[in] pdfFlags
속성 문자열 형식을 나타내는 하나 이상의 PROPDESC_FORMAT_FLAGS 플래그(비트 또는 여러 값)입니다.
[out] ppszDisplay
형식: LPWSTR*
표시 텍스트가 포함된 null로 끝나는 유니코드 문자열에 대한 포인터의 주소입니다.
반환 값
형식: HRESULT
다음 값 중 하나를 반환합니다.
반환 코드 | Description |
---|---|
|
문자열이 복사되고 잘림 없이 null이 종료되었습니다. 이 문자열은 빈 입력 문자열로 인해 비어 있거나 빈 문자열로 형식이 지정된 비어 있지 않은 값에서 반환될 수 있습니다. |
|
빈 문자열은 VT_EMPTY 결과입니다. |
|
pszText 매개 변수는 NULL입니다. |
|
공간이 부족하여 복사 작업이 실패했습니다. 대상 버퍼는 잘린 버전의 이상적인 결과를 포함하도록 수정되며 null로 종료됩니다. |
설명
IPropertyDescription::FormatForDisplay를 호출하기 전에 CoInitialize 또는 OleInitialize를 사용하여 COM(구성 요소 개체 모델)을 초기화해야 합니다.
성공하면 이 메서드는 지정된 PROPERTYKEY에 대한 속성 값의 형식이 지정된 유니코드 문자열 표현과 하나 이상의 PROPDESC_FORMAT_FLAGS 가져옵니다.
이 메서드의 목적은 데이터를 사용자에게 표시하기에 적합한 문자열로 변환하는 것입니다. 값은 현재 로캘, 사용자의 언어, PROPDESC_FORMAT_FLAGS 및 속성 키에 지정된 속성 설명에 따라 형식이 지정됩니다. 속성 설명 스키마가 값의 서식에 미치는 영향에 대한 자세한 내용은 displayInfo, stringFormat, booleanFormat, numberFormat, NMDATETIMEFORMAT 및 enumeratedList를 참조하세요. 일반적으로 PROPDESC_FORMAT_FLAGS 속성 설명에 지정된 형식을 수정하는 데 사용됩니다.
출력 문자열에는 유니코드 방향 문자가 포함될 수 있습니다. 이러한 비선형 문자는 유니코드 양방향 알고리즘에 영향을 주므로 LTR(왼쪽에서 오른쪽) 언어를 RTL(오른쪽에서 왼쪽으로) 창에 그릴 때 값이 올바르게 표시되고 그 반대의 경우도 마찬가지입니다. 이러한 문자는 다음과 같습니다. "\x200e", "\x200f", "\x202a", "\x202b", "\x202c", "\x202d", "\x202e".
다음 속성은 특수 형식을 사용하며 PROPDESC_FORMAT_FLAGS 영향을 받지 않습니다(인용된 예제는 현재 로캘이 영어로 설정된 문자열에 대한 것입니다. 일반적으로 출력은 명시된 경우를 제외하고 지역화됨).
속성 | 형식 |
---|---|
System.FileAttributes | 다음 파일 특성은 문자로 변환되고 문자열을 만들기 위해 추가됩니다(예: 0x1801 값(FILE_ATTRIBUTE_READONLY | FILE_ATTRIBUTE_COMPRESSED | FILE_ATTRIBUTE_OFFLINE)은 "RCO"로 변환됩니다.
|
System.Photo.ISOSpeed | 예를 들어 "ISO-400"입니다. |
System.Photo.ShutterSpeed |
APEX 값은 다음 수식을 사용하여 노출 시간으로 변환됩니다.
예를 들어 "2초"입니다. 또는 "1/125 초". |
System.Photo.ExposureTime | 예를 들어 "2초"입니다. 또는 "1/125초" |
System.Photo.Aperture |
APEX 값은 다음 수식을 사용하여 F 숫자로 변환됩니다.
예를 들어 "f/5.6"입니다. |
System.Photo.FNumber | 예를 들어 "f/5.6"입니다. |
System.Photo.SubjectDistance | 예를 들어 "15m" 또는 "250mm"입니다. |
System.Photo.FocalLength | 예를 들어 "50mm"입니다. |
System.Photo.FlashEnergy | 예를 들어 "500 bpcs"입니다. |
System.Photo.ExposureBias | 예를 들어 "-2단계", "0단계" 또는 "+3단계"가 있습니다. |
System.Computer.DecoratedFreeSpace | 예를 들어 "13.2GB의 105MB 무료"입니다. |
System.ItemType | 예를 들어 "애플리케이션" 또는 "JPEG 이미지"입니다. |
System.ComputerName | 예를 들어 "LITWARE05(이 컴퓨터)" 또는 "testbox07"입니다. |
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows Vista [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2008 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | propsys.h |