Metode IVdsLun::RemovePlex (vdshwprv.h)

[Dimulai dengan Windows 8 dan Windows Server 2012, antarmuka COM Layanan Disk Virtual digantikan oleh WINDOWS Storage Management API.]

Menghapus pleks dari LUN.

Sintaks

HRESULT RemovePlex(
  [in]  VDS_OBJECT_ID plexId,
  [out] IVdsAsync     **ppAsync
);

Parameter

[in] plexId

GUID pleks LUN yang akan dihapus.

[out] ppAsync

Alamat penunjuk antarmuka IVdsAsync , yang diinisialisasi VDS saat dikembalikan. Penelepon harus merilis antarmuka. Gunakan antarmuka ini untuk membatalkan, menunggu, atau mengkueri status operasi.

Jika Anda memanggil IVdsAsync::Wait pada metode ini dan nilai HRESULT yang berhasil dikembalikan, Anda harus merilis antarmuka yang dikembalikan dalam struktur VDS_ASYNC_OUTPUT dengan memanggil metode IUnknown::Release pada setiap pointer antarmuka. Namun, jika Wait mengembalikan nilai HRESULT kegagalan, atau jika parameter pHrResultWait menerima nilai HRESULT kegagalan, penunjuk antarmuka dalam struktur VDS_ASYNC_OUTPUT adalah NULL dan tidak perlu dirilis. Anda dapat menguji keberhasilan atau kegagalan nilai HRESULT dengan menggunakan makro BERHASIL dan GAGAL yang ditentukan dalam Winerror.h.

Mengembalikan nilai

Metode ini dapat mengembalikan nilai HRESULT standar, seperti E_INVALIDARG atau E_OUTOFMEMORY, dan nilai pengembalian khusus VDS. Ini juga dapat mengembalikan kode kesalahan sistem yang dikonversi menggunakan makro HRESULT_FROM_WIN32 . Kesalahan dapat berasal dari VDS itu sendiri atau dari penyedia VDS yang mendasar yang sedang digunakan. Kemungkinan nilai yang dikembalikan termasuk yang berikut ini.

Mengembalikan kode/nilai Deskripsi
VDS_E_PROVIDER_CACHE_CORRUPT
0x8004241FL
Nilai pengembalian ini menandakan masalah perangkat lunak atau komunikasi di dalam penyedia yang menyimpan informasi tentang array. Gunakan metode IVdsHwProvider::Reenumerate diikuti dengan metode IVdsHwProvider::Refresh untuk memulihkan cache.
VDS_E_OBJECT_DELETED
0x8004240BL
Objek LUN tidak lagi ada.
VDS_E_OBJECT_STATUS_FAILED
0x80042431L
LUN dalam keadaan gagal dan tidak dapat melakukan operasi yang diminta.
VDS_E_ANOTHER_CALL_IN_PROGRESS
0x80042404L
Operasi lain sedang berlangsung; operasi ini tidak dapat dilanjutkan sampai operasi atau operasi sebelumnya selesai.
VDS_E_OBJECT_NOT_FOUND
0x80042405L
Dapat dikembalikan dari metode apa pun yang mengambil konstanta VDS_OBJECT_ID . Nilai pengembalian ini menunjukkan bahwa pengidentifikasi tidak merujuk ke objek yang ada.

Keterangan

Pleks yang dihapus berhenti ada, dan VDS membebaskan jangkauannya. Penelepon tidak dapat menghapus pleks LUN mandiri. Perhatikan bahwa LUN dapat kehilangan toleransi kesalahannya karena operasi ini. Misalnya, jika operasi mengubah LUN dari dicerminkan menjadi sederhana, LUN tidak lagi toleran terhadap kesalahan.

Pelaksana harus mengembalikan pointer ke antarmuka IVdsAsync untuk metode ini, terlepas dari apakah panggilan memulai operasi asinkron.

Jika penelepon memanggil metode RemovePlex dengan parameter plexId yang diatur ke nilai yang tidak valid, Anda harus mengembalikan VDS_E_OBJECT_NOT_FOUND.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows Vista [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2003 [hanya aplikasi desktop]
Target Platform Windows
Header vdshwprv.h
Pustaka Uuid.lib

Lihat juga

IVdsAsync

IVdsAsync::Tunggu

IVdsHwProvider::Hitung ulang

IVdsHwProvider::Refresh

IVdsLun

VDS_ASYNC_OUTPUT