The display name in "most complete" form. It is the unique representation of the item name most appropriate for end users.

Windows 10, version 1703, Windows 10, version 1607, Windows 10, version 1511, Windows 10, version 1507, Windows 8.1, Windows 8, Windows 7, Windows Vista

   name = System.ItemNameDisplay
   shellPKey = PKEY_ItemNameDisplay
   formatID = B725F130-47EF-101A-A5F1-02608C9EEBAC
   propID = 10
      InInvertedIndex = true
      IsColumn = true
      type = String
      IsInnate = true


PKEY values are defined in Propkey.h.

This value is the concatentation of System.ItemNamePrefix and System.ItemName.

If the item is a file, this property includes the extension in all cases and is localized if a localized name is available. There are acceptable cases when System.FileName is given but the value of this property is completely different. E-mail messages are a good example. If the item is an e-mail message, the item name is normally the subject. In that case, the value must be the concatenation of System.ItemNamePrefix and System.ItemName. Since the value of System.ItemNamePrefix excludes any trailing spaces, the concatenation must include a space when generating System.ItemNameDisplay. Note that this property is not guaranteed to be unique, but is designed to promote the most likely candidate that can be unique and also makes sense to end users.

For example, for documents, the System.Title could be used as the System.ItemNameDisplay, but in practice the title of the documents may not be useful or unique enough to function as the sole System.ItemNameDisplay. Instead, providing System.FileName as the value of System.ItemNameDisplay is a better choice. In Windows Mail, e-mail is stored in the file system as .eml files. The System.FileName values for those files are not human-friendly as they are GUIDs. In this example, promoting System.Subject as System.ItemNameDisplay makes more sense.

Compatibility notes:

  • Shell folder implementations on Windows Vista: use PKEY_ItemNameDisplay for the name column when you want Windows Explorer to call IShellFolder::GetDisplayNameOf(SHGDN_NORMAL) to get the value of the name. Use another PKEY, such as PKEY_ItemName, when you want Windows Explorer to call either the folder's property store or IShellFolder2::GetDetailsEx to get the value of the name.
  • Shell folder implementations on Windows XP: the first column must be the name column, and Windows Explorer calls IShellFolder::GetDisplayNameOf to get the value of the name. The PKEY/SCID does not matter.
Item type Example
File hello.txt
Message Re: Where is the meeting?
Device folder song.wma
Folder Documents