Bagikan melalui


Fungsi RemoveBindLink (bindlink.h)

API ini memungkinkan pengguna untuk menghapus tautan yang sebelumnya dibuat dengan memanggil CreateBindLink.

Sintaks

HRESULT RemoveBindLink(
  PCWSTR virtualPath
);

Parameter

virtualPath

Jalur virtual yang tautan ikatnya akan dihapus.

Keterangan

API ini akan gagal jika pengguna tidak memiliki hak istimewa Administrator, atau jika pengguna tidak memiliki izin untuk mengakses jalur virtual, atau jika tautan yang dihapus adalah leluhur tautan yang ada. API juga akan gagal jika tautan tidak ada atau karena kesalahan internal lainnya. Jika aplikasi berada di tengah-tengah melintasi jalur virtual saat RemoveBindLink dipanggil, perilaku yang dihasilkan akan bergantung pada di mana setiap utas sedang dalam proses (yaitu, ini adalah perlombaan antara tautan yang dihapus dan file/direktori yang diakses).

Perhatikan bahwa tautan berlapis harus dihapus dalam urutan terdalam pertama. Ini berarti jalur virtual terdalam harus dihapus sebelum jalur virtual leluhur dapat dihapus. Layanan yang tidak terkait yang membuat tautan dan menghapus tautan diharapkan untuk saling menghormati ruang pribadi satu sama lain dan membatasi pemetaan mereka ke jalur di bawah kendali mereka.

Contoh

Contoh berikut menunjukkan bagaimana pengguna dapat menghapus tautan yang dibuat sebelumnya di 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 << "RemoveBindLink Failed with Err: " << hr;
        return hr;
    }

    std::cout << "Link Deleted!\n";
}

Untuk contoh lengkap tentang cara menggunakan API CreateBindLink dan RemoveBindLink , lihat halaman contoh tautan ikat .

Persyaratan

Persyaratan Nilai
Header bindlink.h
Pustaka bindlink.lib
DLL bindlink.dll

Lihat juga

CreateBindLink