Freigeben über


IPropertySystem::FormatForDisplayAlloc-Methode (propsys.h)

Ruft eine Zeichenfolgendarstellung eines Eigenschaftswerts für einen zugeordneten Speicherpuffer ab.

Syntax

HRESULT FormatForDisplayAlloc(
  [in]  REFPROPERTYKEY        key,
  [in]  REFPROPVARIANT        propvar,
  [in]  PROPDESC_FORMAT_FLAGS pdff,
  [out] LPWSTR                *ppszDisplay
);

Parameter

[in] key

Typ: REFPROPERTYKEY

Ein Verweis auf den gewünschten PROPERTYKEY.

[in] propvar

Typ: REFPROPVARIANT

Ein Verweis auf eine PROPVARIANT-Struktur , die den Typ und den Wert der Eigenschaft enthält.

[in] pdff

Typ: PROPDESC_FORMAT_FLAGS

Das Format der Eigenschaftenzeichenfolge. Siehe PROPDESC_FORMAT_FLAGS.

[out] ppszDisplay

Typ: LPWSTR*

Wenn diese Methode zurückgibt, enthält einen Zeiger auf den formatierten Wert als null-endende Unicode-Zeichenfolge.

Rückgabewert

Typ: HRESULT

Gibt einen der folgenden Werte zurück.

Rückgabecode BESCHREIBUNG
S_OK
Formatierte Zeichenfolge wird erstellt. Diese Zeichenfolge kann aufgrund einer leeren Eingabezeichenfolge oder von einem nicht leeren Wert, der als leere Zeichenfolge formatiert wurde, leer zurückgegeben werden.
S_FALSE
Die formatierte Zeichenfolge wird nicht erstellt. Gibt an, dass die leere Zeichenfolge aus einem VT_EMPTY.
E_OUTOFMEMORY
Gibt an, dass bei der Zuordnung ein Fehler aufgetreten ist.

Hinweise

Sie müssen das Component Object Model (COM) mit CoInitialize oder OleInitialize initialisieren, bevor Sie IPropertySystem::FormatForDisplayAlloc aufrufen.

Bei Erfolg ruft diese Methode eine formatierte Unicode-Zeichenfolgendarstellung eines Eigenschaftswerts für einen angegebenen PROPERTYKEY und eine oder mehrere PROPDESC_FORMAT_FLAGS ab. Wenn PROPERTYKEY vom Schemasubsystem nicht erkannt wird, versucht IPropertySystem::FormatForDisplayAlloc , den Wert entsprechend seinem VARTYPE zu formatieren.

Diese Methode ordnet Arbeitsspeicher für den Puffer zu und gibt einen Zeiger auf den Puffer an ppszDisplay zurück. Die aufrufende Anwendung muss CoTaskMemFree verwenden, um die durch ppszDisplay angegebene Zeichenfolge freizugeben, wenn sie nicht mehr benötigt wird.

Der Zweck dieser Methode besteht darin, Daten in eine Zeichenfolge zu konvertieren, die für die Anzeige für den Benutzer geeignet ist. Der Wert wird entsprechend dem aktuellen Gebietsschema, der Sprache des Benutzers, dem PROPDESC_FORMAT_FLAGS und der durch den Eigenschaftenschlüssel angegebenen Eigenschaftenbeschreibung formatiert. Informationen dazu, wie das Eigenschaftenbeschreibungsschema die Formatierung des Werts beeinflusst, finden Sie unter displayInfo, stringFormat, booleanFormat, numberFormat, NMDATETIMEFORMAT und enumeratedList. In der Regel werden die PROPDESC_FORMAT_FLAGS verwendet, um das in der Eigenschaftenbeschreibung vorgeschriebene Format zu ändern.

Die Ausgabezeichenfolge kann Unicode-Richtungszeichen enthalten. Diese Nicht-Zeichen beeinflussen den bidirektionalen Unicode-Algorithmus, sodass die Werte richtig angezeigt werden, wenn eine Sprache von links nach rechts (LTR) in einem FENSTER von rechts nach links (RTL) gezeichnet wird und umgekehrt. Diese Zeichen enthalten Folgendes: "\x200e", "\x200f", "\x202a", "\x202b", "\x202c", "\x202d", "\x202e".

Die folgenden Eigenschaften verwenden spezielle Formate und sind von der PROPDESC_FORMAT_FLAGS nicht betroffen (beispiele für Zeichenfolgen mit einem aktuellen Gebietsschema, das auf Englisch festgelegt ist; in der Regel wird die Ausgabe lokalisiert, es sei denn, es wird angegeben).

Eigenschaft Format
System.FileAttributes Die folgenden Dateiattribute werden in Buchstaben konvertiert und angefügt, um eine Zeichenfolge zu erstellen (z. B. der Wert 0x1801 (FILE_ATTRIBUTE_READONLY | FILE_ATTRIBUTE_COMPRESSED | FILE_ATTRIBUTE_OFFLINE) wird in "RCO" konvertiert):
  • FILE_ATTRIBUTE_READONLY (0x00000001) – "R"
  • FILE_ATTRIBUTE_SYSTEM (0x00000004) – "S"
  • FILE_ATTRIBUTE_ARCHIVE (0x00000020) -'A'
  • FILE_ATTRIBUTE_COMPRESSED (0x00000800) – "C"
  • FILE_ATTRIBUTE_ENCRYPTED (0x00004000) – "E"
  • FILE_ATTRIBUTE_OFFLINE (0x00001000) – "O"
  • FILE_ATTRIBUTE_NOT_CONTENT_INDEXED (0x00002000) – "I"
System.Photo.ISOSpeed Beispiel: "ISO-400".
System.Photo.ShutterSpeed Der APEX-Wert wird mit dieser Formel in eine Belichtungszeit konvertiert:

Exposure_time = 2^(-APEX_value)

Beispiel: "2 Sekunden". oder "1/125 Sek.".

System.Photo.ExposureTime Beispiel: "2 Sekunden". oder "1/125 Sekunde".
System.Photo.Aperture Der APEX-Wert wird mithilfe dieser Formel in eine F-Zahl konvertiert:

F_Number = 2^(APEX_Value / 2)

Beispiel: "f/5.6".

System.Photo.FNumber Beispiel: "f/5.6".
System.Photo.SubjectDistance Beispiel: "15 m" oder "250 mm".
System.Photo.FocalLength Beispiel: "50 mm".
System.Photo.FlashEnergy Beispiel: "500 bpcs".
System.Photo.ExposureBias Beispiel: "-2 Schritt", "0 Schritt" oder "+3 Schritt".
System.Computer.DecoratedFreeSpace Beispiel: "105 MB frei von 13,2 GB".
System.ItemType Beispiel: "Anwendung" oder "JPEG-Bild".
System.ControlPanel.Category Beispiel: "Darstellung und Personalisierung".
System.ComputerName Beispiel: "LITWARE05 (dieser Computer)" oder "testbox07".
 

Wenn der Eigenschaftenschlüssel keiner Eigenschaftenbeschreibung in einem der registrierten Eigenschaftenschemas entspricht, wählt diese Methode ein Format basierend auf dem Typ des Werts aus.

Typ des Werts Format
VT_BOOLEAN Wird nicht unterstützt.
VT_FILETIME Datums-/Uhrzeitzeichenfolge, wie durch PROPDESC_FORMAT_FLAGS und das aktuelle Gebietsschema angegeben. PDFF_SHORTTIME und PDFF_SHORTDATE sind die Standardeinstellung. Beispiel: "13.11.2006 15:22".
Numerischer VARTYPE Dezimalzeichenfolge im aktuellen Gebietsschema. Beispiel: "42".
VT_LPWSTR oder andere In eine Zeichenfolge konvertiert. Sequenzen von "\r", "\t" oder "\n" werden durch ein einzelnes Leerzeichen ersetzt.
VT_VECTOR | Etwas Durch Semikolon getrennte Werte– ein Semikolon wird unabhängig vom Gebietsschema verwendet.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows Vista [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile propsys.h
Verteilbare Komponente Windows Desktop Search (WDS) 3.0

Weitere Informationen

IPropertySystem

Eigenschaftenbeschreibungsschema