KNOWNFOLDER_DEFINITION 結構 (shobjidl_core.h)

定義已知資料夾的詳細資料。

語法

typedef struct KNOWNFOLDER_DEFINITION {
  KF_CATEGORY         category;
  LPWSTR              pszName;
  LPWSTR              pszDescription;
  KNOWNFOLDERID       fidParent;
  LPWSTR              pszRelativePath;
  LPWSTR              pszParsingName;
  LPWSTR              pszTooltip;
  LPWSTR              pszLocalizedName;
  LPWSTR              pszIcon;
  LPWSTR              pszSecurity;
  DWORD               dwAttributes;
  KF_DEFINITION_FLAGS kfdFlags;
  FOLDERTYPEID        ftidType;
} KNOWNFOLDER_DEFINITION;

成員

category

類型: KF_CATEGORY

KF_CATEGORY常數中的單一值,會將資料夾分類為虛擬、固定、一般或每個使用者。

pszName

類型: LPWSTR

已知資料夾之非當地語系化標準名稱的指標,儲存為 Null 終止的 Unicode 字串。 如果這個資料夾是一般或個別使用者資料夾,這個值也會當做「用戶殼層資料夾」登錄設定的值名稱使用。 此名稱旨在成為唯一且人類可讀取的名稱。 建議第三方遵循 格式 Company.Application.Name。 此處提供的名稱不應與顯示名稱混淆。

pszDescription

類型: LPWSTR

已知資料夾簡短描述的指標,儲存為 Null 終止的 Unicode 字串。 此描述應包含資料夾的用途和使用方式。

fidParent

類型: KNOWNFOLDERID

KNOWNFOLDERID 值,將另一個已知資料夾命名為父資料夾。 僅適用於一般和個別用戶資料夾。 此值會與 pszRelativePath 搭配使用。 如需詳細資訊 ,請參閱

如果 pszRelativePath 沒有提供任何值,這個值是選擇性的。

pszRelativePath

類型: LPWSTR

選擇性。 相對於 fidParent 中所指定父資料夾的路徑指標。 這是以 Null 結尾的 Unicode 字串,會參考實體文件系統路徑,且未當地語系化。 僅適用於一般和個別用戶資料夾。 如需詳細資訊 ,請參閱

pszParsingName

類型: LPWSTR

資料夾殼層命名空間資料夾路徑的指標,儲存為 Null 終止的 Unicode 字串。 僅適用於虛擬資料夾。 例如, Control Panel 剖析名稱為 ::%CLSID_MyComputer%::%CLSID_ControlPanel%

pszTooltip

類型: LPWSTR

選擇性。 建立時用於這個已知資料夾之預設工具提示資源的指標。 這是以 Null 結尾的 Unicode 字串,格式如下:

模組名稱、資源識別碼

例如, @%_SYS_MOD_PATH%,-12688 是通用圖片的工具提示。 建立資料夾時,此字串會儲存在該資料夾的 Desktop.ini 複本中。 稍後可以由其他殼層 API 加以變更。 此資源可能已當地語系化。

虛擬資料夾不需要此資訊。

pszLocalizedName

類型: LPWSTR

選擇性。 建立資料夾時所使用之預設本地化名稱資源的指標。 這是以 Null 結尾的 Unicode 字串,格式如下:

模組名稱、資源識別碼

建立資料夾時,此字串會儲存在該資料夾的 Desktop.ini 複本中。 稍後可以由其他殼層 API 加以變更。

虛擬資料夾不需要此資訊。

pszIcon

類型: LPWSTR

選擇性。 建立資料夾時所使用之預設圖示資源的指標。 這是以 Null 結尾的 Unicode 字串,格式如下:

模組名稱、資源識別碼

建立資料夾時,此字串會儲存在該資料夾的 Desktop.ini 複本中。 稍後可以由其他殼層 API 加以變更。

虛擬資料夾不需要此資訊。

pszSecurity

類型: LPWSTR

選擇性。 安全性描述項定義語言格式字串的指標。 這是以 Null 結束的 Unicode 字串,描述資料夾在建立時所接收的預設安全性描述元。 如果此參數為 NULL,新資料夾會繼承其父代的安全性描述元。 這對於所有使用者存取的通用資料夾特別有用。

dwAttributes

類型: DWORD

選擇性。 建立資料夾時,提供給資料夾的預設檔案系統屬性。 例如,檔案可以隱藏和唯讀 (FILE_ATTRIBUTE_HIDDEN 和FILE_ATTRIBUTE_READONLY) 。 如需可能值的完整清單,請參閱 CreateFile 函式的 dwFlagsAndAttributes 參數。 如有需要,請將 設定為 -1。

kfdFlags

類型: KF_DEFINITION_FLAGS

選擇性。 KF_DEFINITION_FLAGS 列舉的 其中一個值,可讓您限制重新導向、允許計算機對計算機漫遊,以及控制已知資料夾的建立時間。 如有需要,請將 設定為 0。

ftidType

類型: FOLDERTYPEID

其中一個 FOLDERTYPEID 值,根據已知資料夾類型的內容 (,例如檔、音樂或相片) 。 這個值是 GUID。

備註

fidParentpszRelativePath 值會一起運作。 例如,假設您正在定義名為 MyNewFolder 的資料夾,並想要將該資料夾建立為 ...<Username>\AppData\Local\MyApp\MyNewFolder。 在 fidParent 中提供FOLDERID_LocalAppData來代表 ...<Username>\AppData\Local。 在 pszRelativePath 中提供 “\MyApp\MyNewFolder”。

規格需求

需求
最低支援的用戶端 Windows Vista [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2008 [僅限傳統型應用程式]
標頭 shobjidl_core.h (包含 Shobjidl.h)

另請參閱

IKnownFolder::GetFolderDefinition

IKnownFolderManager::RegisterFolder

已知資料夾範例