共用方式為


FilterAttach 函式 (fltuser.h)

FilterAttach 函式會將新的迷你篩選實例附加至指定的磁碟區。

語法

HRESULT FilterAttach(
  [in]            LPCWSTR lpFilterName,
  [in]            LPCWSTR lpVolumeName,
  [in, optional]  LPCWSTR lpInstanceName,
  [in, optional]  DWORD   dwCreatedInstanceNameLength,
  [out, optional] LPWSTR  lpCreatedInstanceName
);

參數

[in] lpFilterName

Null 終止寬字元字串的指標,其中包含要為其建立實例的迷你篩選名稱。 這個參數是必要的,而且不能是 NULL

[in] lpVolumeName

Null 終止寬字元字串的指標,其中包含要附加新建立之實例的磁碟區名稱。

lpVolumeName 輸入字串可以是下列任一項。 尾端反斜杠 (\) 是選擇性的。

  • 驅動器號,例如 “D:\”
  • 磁碟區裝入點的路徑,例如 “c:\mnt\edrive\”
  • 磁碟區標識碼 (也稱為磁碟區 GUID 名稱) ,例如 “\??\Volume{7603f260-142a-11d4-ac67-806d6172696f}\”
  • 非持續性裝置名稱 (也稱為 目標名稱NT 裝置名稱) ,例如 “\Device\HarddiskVolume1\”
lpVolumeName 參數是必要的,而且不能是 NULL

[in, optional] lpInstanceName

Null 終止寬字元字串的指標,其中包含新實例的實例名稱。 這個參數是選擇性的,而且可以是 NULL。 如果此參數為 NULL,新實例會收到迷你篩選的預設實例名稱,如 FltAttachVolume 的一節中所述。

[in, optional] dwCreatedInstanceNameLength

lpCreatedInstanceName 指向的緩衝區長度,以位元組為單位。 這個參數是選擇性的,而且可以是零。

[out, optional] lpCreatedInstanceName

如果實例成功附加至磁碟區,則呼叫端配置的變數會接收新實例的實例名稱的指標。 這個參數是選擇性的,而且可以是 NULL。 如果不是 NULL,緩衝區必須夠大,才能保存INSTANCE_NAME_MAX_CHARS字元加上 NULL 終止符。

傳回值

如果成功,FilterAttach 會傳回S_OK。 否則,它會傳回錯誤值,例如下列其中一項。

傳回碼 Description
ERROR_FLT_INSTANCE_ALTITUDE_COLLISION
實例已存在於指定的磁碟區上這個高度。
ERROR_FLT_INSTANCE_NAME_COLLISION
指定的磁碟區上已有這個名稱的實例存在。
ERROR_FILE_NOT_FOUND
如果 lpInstanceName 不是 NULL,lpInstanceName 與登錄中的已註冊篩選實例名稱不符。

備註

FilterAttach 是 Win32 對等 的 FltAttachVolume

在 lpInstanceName 中指定的實例名稱必須在整個系統中是唯一的。

若要將迷你篩選實例附加至指定高度的磁碟區,請呼叫 FilterAttachAtAltitude

若要從磁碟區中斷連結迷你篩選實例,請呼叫 FilterDetach

規格需求

需求
目標平台 Universal
標頭 fltuser.h (包含 Fltuser.h)
程式庫 FltLib.lib
Dll FltLib.dll

另請參閱

FilterAttachAtAltitude

FilterDetach

FltAttachVolume