GETPROPERTYSTOREFLAGS 列舉 (propsys.h)
指出修改建立屬性存放區的方法所擷取之屬性存放區對象的旗標,例如 IShellItem2::GetPropertyStore 或 IPropertyStoreFactory::GetPropertyStore。
Syntax
typedef enum GETPROPERTYSTOREFLAGS {
GPS_DEFAULT = 0,
GPS_HANDLERPROPERTIESONLY = 0x1,
GPS_READWRITE = 0x2,
GPS_TEMPORARY = 0x4,
GPS_FASTPROPERTIESONLY = 0x8,
GPS_OPENSLOWITEM = 0x10,
GPS_DELAYCREATION = 0x20,
GPS_BESTEFFORT = 0x40,
GPS_NO_OPLOCK = 0x80,
GPS_PREFERQUERYPROPERTIES = 0x100,
GPS_EXTRINSICPROPERTIES = 0x200,
GPS_EXTRINSICPROPERTIESONLY = 0x400,
GPS_VOLATILEPROPERTIES = 0x800,
GPS_VOLATILEPROPERTIESONLY = 0x1000,
GPS_MASK_VALID = 0x1fff
} ;
常數
GPS_DEFAULT 值: 0 對呼叫進程的意義:傳回包含所有屬性的唯讀屬性存放區。 未開啟脫機檔案 (緩慢的專案) 。 與其他旗標的組合:可由其他旗標覆寫。 |
GPS_HANDLERPROPERTIESONLY 值: 0x1 對呼叫進程的意義:只包含來自屬性處理程式的屬性,這會開啟磁碟、網路或裝置上的檔案。 對檔案資料夾的意義:只包含處理程式中的屬性。 其他資料夾的意義:委派至檔案資料夾時,將此旗標傳遞至檔案資料夾;請勿執行任何多任務處理 (MUX) 。 當未委派給檔案資料夾時,請忽略此旗標,而不是傳回失敗碼。 與其他旗標的組合:無法與GPS_TEMPORARY、GPS_FASTPROPERTIESONLY或GPS_BESTEFFORT結合。 |
GPS_READWRITE 值: 0x2 對呼叫進程的意義:可以將屬性寫入專案。 注意:存放區可能包含比只讀存放區少的屬性。 檔案資料夾的意義:ReadWrite。 其他資料夾的意義:ReadWrite。 注意:使用預設 MUX 時,會傳回單一未複雜的存放區,因為預設 MUX 不支援 ReadWrite。 與其他旗標的組合:無法與GPS_TEMPORARY、GPS_FASTPROPERTIESONLY、GPS_BESTEFFORT或GPS_DELAYCREATION結合。 表示GPS_HANDLERPROPERTIESONLY。 |
GPS_TEMPORARY 值: 0x4 對呼叫程式的意義:提供在Shell項目實例存留期內沒有初始屬性的可寫入存放區;基本上,附加至項目實例的屬性包。 對檔案資料夾的意義:不適用。 由Shell項目處理。 其他資料夾的意義:不適用。 由Shell項目處理。 與其他旗標的組合:無法與任何其他旗標結合。 表示GPS_READWRITE。 |
GPS_FASTPROPERTIESONLY 值: 0x8 對呼叫程式的意義:提供不包含從磁碟或網路讀取的存放區。 注意:相較於沒有此旗標的存放區,某些值可能不同或遺失。 對檔案資料夾的意義:只包含「innate」 和 「fallback」 存放區。 請勿載入處理程式。 對其他資料夾的意義:只包含記憶體中可用的屬性,或可以非常快速地計算, (磁碟、網路或周邊IO裝置) 的屬性。 這通常只有來自IDLIST的數據源。 委派給其他資料夾時,請將此旗標傳遞給它們。 與其他旗標的組合:無法與GPS_TEMPORARY、GPS_READWRITE、GPS_HANDLERPROPERTIESONLY或GPS_DELAYCREATION結合。 |
GPS_OPENSLOWITEM 值: 0x10 對呼叫程式的意義:視需要開啟慢速專案 (脫機檔案) 。 對檔案資料夾的意義:視需要從離線記憶體擷取檔案。 注意:如果沒有此旗標,就不會為離線檔案建立處理程式。 其他資料夾的意義:請勿傳回非常慢的任何屬性。 與其他旗標的組合:無法與GPS_TEMPORARY或GPS_FASTPROPERTIESONLY結合。 |
GPS_DELAYCREATION 值: 0x20 對呼叫進程的意義:延遲大量記憶體作業,例如檔案存取,直到要求需要這類存取的屬性為止。 對檔案資料夾的意義:在需要之前不要建立處理程式;例如, GetCount/GetAt 或 GetValue,其中內建存放區不符合要求。 注意: GetValue 可能會因為檔案存取問題而失敗。 對其他資料夾的意義:如果資料夾具有大量記憶體的屬性,例如委派至檔案資料夾或網路存取,則可以藉由支援 IDelayedPropertyStoreFactory 將其屬性分割成快速且緩慢的存放區來優化效能。 然後可以使用延遲的 MUX 來重新組合它們。 與其他旗標的組合:無法與GPS_TEMPORARY或GPS_READWRITE結合。 |
GPS_BESTEFFORT 值: 0x40 呼叫程式的意義:即使未傳回某些屬性,仍可成功取得存放區。 注意:相較於沒有此旗標的存放區,某些值可能不同或遺失。 對檔案資料夾的意義:成功並傳回存放區,即使處理程式或內建存放區在建立期間發生錯誤也一樣。 只有在子存放區失敗時才會失敗。 其他資料夾的意義:成功取得存放區,即使未傳回某些屬性也一樣。 與其他旗標的組合:無法與GPS_TEMPORARY、GPS_READWRITE或GPS_HANDLERPROPERTIESONLY結合。 |
GPS_NO_OPLOCK 值: 0x80 Windows 7 和更新版本。 呼叫端只有在已在檔案上保留作業鎖定 (oplock) ,因為沒有 oplock,所以系結作業無法繼續時,才應該使用此旗標。 根據預設,Shell 會先要求檔案上的 oplock,再系結至屬性處理程式。 此旗標會停用預設行為。 Windows Server 2008 和 Windows Vista: 此旗標無法使用。 |
GPS_PREFERQUERYPROPERTIES 值: 0x100 Windows 8和更新版本。 使用此旗標只從索引器擷取 WDS 結果的屬性。 |
GPS_EXTRINSICPROPERTIES 值: 0x200 包含檔案次要數據流的屬性。 |
GPS_EXTRINSICPROPERTIESONLY 值: 0x400 只包含檔案次要數據流的屬性。 |
GPS_VOLATILEPROPERTIES 值: 0x800 |
GPS_VOLATILEPROPERTIESONLY 值: 0x1000 |
GPS_MASK_VALID 值: 0x1fff 有效 GETPROPERTYSTOREFLAGS 值的遮罩。 |
備註
如果 Shell 專案是檔案,則屬性存放區包含下列專案。
- 與檔案相關的文件系統屬性。
- 除非檔案處於離線狀態,否則檔案本身所提供的屬性會由檔案的屬性處理程式所提供,除非檔案離線 (會看到GPS_OPENSLOWITEM) 。
注意 GPS_INCLUDEOFFLINEPROPERTIES已被GPS_OPENSLOWITEM取代。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2008 [僅限傳統型應用程式] |
標頭 | propsys.h |