RemoveBindLink 函式 (bindlink.h)
此 API 可讓使用者移除先前藉由呼叫 CreateBindLink 所建立的連結。
語法
HRESULT RemoveBindLink(
PCWSTR virtualPath
);
參數
virtualPath
要移除系結連結的虛擬路徑。
備註
如果使用者沒有系統管理員許可權,或使用者沒有存取虛擬路徑的許可權,或刪除的連結是現有連結的上階,則此 API 將會失敗。 如果連結不存在或因為另一個內部錯誤,API 也會失敗。 如果在呼叫 RemoveBindLink 時,應用程式在周遊虛擬路徑的過程中,產生的行為將取決於每個線程在進程 (的位置,也就是說,這是刪除的連結與存取) 檔案/目錄之間的競爭。
請注意,巢狀鏈接必須以最深入的第一個順序移除。 這表示必須先移除最深的虛擬路徑,才能移除上階虛擬路徑。 建立連結並移除連結的不相關服務預期彼此的個人空間受到尊重,並限制其對應至其控件下的路徑。
範例
下列範例示範使用者如何移除 上 C:\\test
先前建立的連結。
#include <iostream>
#include <wil\resource.h>
#include <bindlink.h>
int wmain(int argc, wchar_t* argv[])
{
constexpr PCWSTR virtPath = L"C:\test";
HRESULT hr = S_OK;
hr = RemoveBindLink(virtPath);
if(FAILED(hr))
{
std::cerr << "CreateBindLink Failed with Err: " << hr;
return hr;
}
std::cout << "Link Deleted!\n";
}
如需如何使用 CreateBindLink 和 RemoveBindLink API 的完整範例,請參閱 系結連結範例 頁面。
規格需求
需求 | 值 |
---|---|
標頭 | bindlink.h |
程式庫 | bindlink.lib |
Dll | bindlink.dll |