Známé složky

Systém Windows Vista zavádí nové scénáře úložiště a nový obor názvů profilů uživatelů. Aby bylo možné zohlednit tyto nové faktory, byl nahrazen starší systém označování standardních složek pomocí hodnoty CSIDL. V systému Windows Vista se na tyto složky odkazuje nová sada hodnot GUID s názvem Známé ID složek.

Systém Známých složek nabízí tyto výhody:

  • Nezávislí výrobci softwaru (ISV) mohou rozšířit sadu identifikátorů známých složek o vlastní ID. Můžou definovat složky, dát jim ID a zaregistrovat je v systému. Hodnoty CSIDL nelze rozšířit.
  • Všechny známé složky v systému lze vypsat. Žádné rozhraní API neposkytuje tuto funkci pro hodnoty CSIDL. Další informace najdete v IKnownFolderManager::GetFolderIds.
  • Známá složka přidaná isV může přidat vlastní vlastnosti, které jí umožňují vysvětlit účel a zamýšlené použití.
  • Mnoho známých složek je možné přesměrovat na nová umístění, včetně síťových umístění. V systému CSIDL lze přesměrovat pouze složku Dokumenty.
  • Známé složky můžou mít vlastní obslužné rutiny pro použití při vytváření nebo odstraňování.

Systém CSIDL a rozhraní API, které využívají hodnoty CSIDL, jsou stále podporovány kvůli kompatibilitě. Nedoporučuje se je však používat v žádném novém vývoji.

Important

Pro nový kód vždy používejte SHGetKnownFolderPath s konstantami KNOWNFOLDERID . Starší hodnoty SHGetFolderPath a CSIDL jsou zastaralé a neměly by se používat v nových aplikacích.

Při volání SHGetKnownFolderPath:

Následující témata pojednávají o podrobnostech systému Známé složky.

Následující referenční stránky vysvětlují funkce Známých složek Win32, které lze použít k načtení umístění známých složek nebo je přesměrovat na nové umístění. Tyto funkce nahrazují starší funkce Win32. Nové funkce jsou poskytovány tak, aby poskytovaly ekvivalentní chování starým funkcím, ale každá nová funkce je také duplikována rozhraním API modelu COM (Component Object Model).

Nová funkce Nahrazuje Ekvivalent modelu COM
SHGetKnownFolderPath SHGetFolderPath IKnownFolder::GetPath
SHGetKnownFolderIDList SHGetFolderLocation IKnownFolder::GetIDList
SHSetKnownFolderPath SHSetFolderPath IKnownFolder::SetPath

 

Následující referenční stránky vysvětlují rozhraní API známých složek modelu COM, která poskytují všechny funkce rozhraní API Win32 uvedené výše a navíc umožňují vytvořit výčet všech známých složek, přistupovat k vlastnostem známých složek a rozšířit standardní sadu známých složek.

Ukázka jazyka C++, která demonstruje rozhraní API známých složek, je součástí sady Windows Software Development Kit (SDK). Po instalaci sady Windows SDK do počítače najdete ukázku v části %ProgramFiles%\Microsoft SDK\Windows\v6.0\Samples\WinUI\Shell\AppPlatform\KnownFolders.

Ukázka známých složek