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 列舉的 其中一個值,可讓您限制重新導向、允許計算機對計算機漫遊,以及控制已知資料夾的建立時間。 如有需要,請將 設定為 0。
ftidType
類型: FOLDERTYPEID
其中一個 FOLDERTYPEID 值,根據已知資料夾類型的內容 (,例如檔、音樂或相片) 。 這個值是 GUID。
備註
fidParent 和 pszRelativePath 值會一起運作。 例如,假設您正在定義名為 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