IStorageProviderCopyHook::CopyCallback 方法
決定是否允許 Shell 在雲端提供者的同步根目錄中移動、複製、刪除或重新命名資料夾。
語法
HRESULT CopyCallback(
HWND hwnd,
UINT operation,
UINT flags,
LPCWSTR srcFile,
DWORD srcAttribs,
LPCWSTR destFile,
DWORD destAttribs,
UINT* result
);
參數
-
hwnd [in]
-
複製勾點處理常式應該用來做為處理常式可能需要顯示之任何使用者介面元素之父項的視窗控制碼。 如果在作業中指定FOF_SILENT,方法應該忽略此參數。
-
作業 [in]
-
要執行的作業。 此參數可以是SHFILEOPSTRUCT結構的wFunc成員底下所列的其中一個值。
-
旗標 [in]
-
控制作業的旗標。 此參數可以是SHFILEOPSTRUCT結構的fFlags成員底下所列的一或多個值。
對於印表機複製勾點,此值是在 shellapi.h 中定義的下列其中一個值。
值 Description PO_DELETE 正在刪除印表機。 srcFile參數指向指定印表機的完整路徑。 PO_RENAME 正在重新命名印表機。 srcFile參數會指向印表機的新名稱。 destFile參數會指向舊名稱。 PO_PORTCHANGE 不支援。 請勿使用。 PO_REN_PORT 不支援。 請勿使用。
-
srcFile [in]
-
包含來源資料夾名稱的字串指標。
srcAttribs [in]
來源資料夾的屬性。 此參數可以是標頭檔中定義的任何檔案屬性旗標 (FILE_ATTRIBUTE_*) 的組合。 請參閱 檔案屬性常數。
destFile [in]
包含目的地資料夾名稱的字串指標。
destAttribs [in]
目的地資料夾的屬性。 此參數可以是標頭檔中定義的任何檔案屬性旗標 (FILE_ATTRIBUTE_*) 的組合。 請參閱 檔案屬性常數。
result [out]
整數值,指出 Shell 是否應該執行作業。 下列其中之一:
值 | Description |
---|---|
IDYES | 允許作業。 |
IDNO | 防止此資料夾上的作業,但會繼續執行任何其他已核准 (的作業,例如批次複製作業) 。 |
IDCANCEL | 防止目前的作業,並取消任何暫止的作業。 |
傳回值
如果成功,則傳回 S_OK ,否則傳回錯誤碼。
備註
Shell 會針對已註冊同步根目錄下的每個資料夾呼叫雲端提供者的複製攔截處理常式。 若要註冊雲端資料夾的複製攔截處理常式,請將 copyHook 值設定為複製攔截物件的 CLSID,其 位於 HKEY_LOCAL_MACHINE/Software/Microsoft/Windows/CurrentVersion/Explorer/SyncRootManager/{SyncRootId} 機碼之下。
呼叫 CopyCallback 方法時,Shell 會直接初始化 IStorageProviderCopyHook 介面,而不需要先使用 IShellExtInit 介面。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 10 Insider Preview 組建 19624 |
標頭 | shobjidl.h |