Freigeben über


IPropertyStorage::WritePropertyNames-Methode (propidlbase.h)

Die WritePropertyNames-Methode weist einem angegebenen Array von Eigenschaften-IDs im aktuellen Eigenschaftensatz Zeichenfolgennamen zu.

Syntax

HRESULT WritePropertyNames(
  [in] ULONG             cpropid,
  [in] const PROPID []   rgpropid,
  [in] const LPOLESTR [] rglpwstrName
);

Parameter

[in] cpropid

Die Größe bei der Eingabe des Arrays rgpropid. Kann Null sein. Wenn sie jedoch 0 ist, wird diese Methode nicht mehr betriebsbereit.

[in] rgpropid

Ein Array der Eigenschaften-IDs, für die Namen festgelegt werden sollen.

[in] rglpwstrName

Ein Array von neuen Namen, die den entsprechenden Eigenschaften-IDs im rgpropid-Array zugewiesen werden sollen. Diese Namen dürfen nicht länger als 255 Zeichen sein (ohne den NULL-Abschlussator ).

Rückgabewert

Diese Methode unterstützt den Standardrückgabewert E_UNEXPECTED zusätzlich zu folgendem:

Hinweise

Weitere Informationen zu Eigenschaftensätzen und der Speicherverwaltung finden Sie unter Verwalten von Eigenschaftssätzen.

IPropertyStorage::WritePropertyNames weist Eigenschaften-IDs Zeichenfolgennamen zu, die an die -Methode im rgpropid-Array übergeben werden. Es ordnet jedem Zeichenfolgennamen im rglpwstrName-Array die jeweilige Eigenschafts-ID in rgpropid zu. Es ist explizit gültig, einen Namen für eine Eigenschafts-ID zu definieren, die derzeit nicht im Eigenschaftsspeicherobjekt vorhanden ist.

Es ist auch gültig, die Zuordnung für einen vorhandenen Zeichenfolgennamen (bestimmt durch eine Übereinstimmung ohne Beachtung der Groß-/Kleinschreibung) zu ändern. Das heißt, Sie können die WritePropertyNames-Methode verwenden, um einen vorhandenen Namen einer neuen Eigenschaften-ID zuzuordnen oder um einer Eigenschaften-ID einen neuen Namen zuzuordnen, der bereits einen Namen im Wörterbuch enthält. In beiden Fällen wird die ursprüngliche Zuordnung gelöscht. Eigenschaftsnamen müssen (ebenso wie Eigenschaften-IDs) innerhalb des Eigenschaftensatzes eindeutig sein.

Die Speicherung von Zeichenfolgeneigenschaftennamen behält die Groß- und Kleinschreibung bei. Sofern PROPSETFLAG_CASE_SENSITIVE nicht an IPropertySetStorage::Create übergeben wird, wird bei Eigenschaftensatznamen standardmäßig die Groß-/Kleinschreibung nicht beachtet. Bei Eigenschaftensätzen ohne Beachtung der Groß-/Kleinschreibung werden die vom Aufrufer übergebenen Namenszeichenfolgen gemäß dem Gebietsschema des Eigenschaftssatzes interpretiert, wie von der PID_LOCALE-Eigenschaft angegeben. Wenn der Eigenschaftssatz keine Gebietsschemaeigenschaft aufweist, wird standardmäßig der aktuelle Benutzer angenommen. Zeichenfolgeneigenschaftennamen sind auf 128 Zeichen begrenzt. Eigenschaftennamen, die mit den binären Unicode-Zeichen beginnen, die bis 0x001F 0x0001, sind für die zukünftige Verwendung reserviert.

Wenn der Wert eines Elements im rgpropid-Arrayparameter auf 0xffffffff (PID_ILLEGAL) festgelegt ist, wird der entsprechende Name von IPropertyStorage::WritePropertyNames ignoriert. Wenn diese Methode beispielsweise mit dem cpropid-Parameter 3 aufgerufen wird, aber das erste Element des Arrays, rgpropid[1], auf PID_ILLEGAL festgelegt ist, werden nur zwei Eigenschaftennamen geschrieben. Das rgpropid[1] -Element wird ignoriert.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000 Professional [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [Desktop-Apps | UWP-Apps]
Zielplattform Windows
Kopfzeile propidlbase.h (include Objbase.h, Propidlbase.h)
Bibliothek Uuid.lib
DLL Ole32.dll

Weitere Informationen

IPropertyStorage

IPropertyStorage::ReadMultiple

IPropertyStorage::ReadPropertyNames

IPropertyStorage::WriteMultiple

Beispiele

WriteRead-Beispiel