Metode IVdsSubSystem2::QueryMaxLunCreateSize2 (vds.h)

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

Mengembalikan ukuran LUN maksimum yang dapat dibuat menggunakan jenis dan petunjuk LUN yang ditentukan. Metode ini identik dengan metode IVdsSubSystem::QueryMaxLunCreateSize , kecuali bahwa petunjuk otomatis disediakan menggunakan struktur VDS_HINTS2 alih-alih struktur VDS_HINTS .

Sintaks

HRESULT QueryMaxLunCreateSize2(
  [in]  VDS_LUN_TYPE  type,
  [in]  VDS_OBJECT_ID *pDriveIdArray,
  [in]  LONG          lNumberOfDrives,
  [in]  VDS_HINTS2    *pHints2,
  [out] ULONGLONG     *pullMaxLunSize
);

Parameter

[in] type

Nilai enumerasi VDS_LUN_TYPE yang menentukan jenis LUN.

[in] pDriveIdArray

Penunjuk ke array yang berisi VDS_OBJECT_ID untuk setiap drive yang akan digunakan dalam pembuatan LUN. Penyedia harus mencoba menggunakan drive dalam urutan yang disediakan. Parameter ini bisa NULL jika parameter lNumberOfDrives adalah nol, dalam hal ini penyedia harus secara otomatis memilih drive.

[in] lNumberOfDrives

Jumlah entri dalam array pDriveIdArray . Parameter ini bersifat opsional dan bisa nol.

[in] pHints2

Penunjuk ke struktur VDS_HINTS2 yang digunakan untuk membuat LUN. Petunjuk selalu mengambil prioritas yang lebih rendah daripada parameter yang tercantum sebelumnya. Parameter ini diperlukan dan tidak boleh NULL.

[out] pullMaxLunSize

Penunjuk ke buffer yang berisi ukuran maksimum LUN dalam byte. Parameter ini diperlukan dan tidak boleh NULL.

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
Ada 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 subsistem tidak ada lagi.
VDS_E_OBJECT_STATUS_FAILED
0x80042431L
Subsistem dalam status 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
Pengidentifikasi tidak merujuk ke objek yang ada. Nilai ini dapat dikembalikan dari metode apa pun yang mengambil konstanta VDS_OBJECT_ID .
VDS_E_NOT_SUPPORTED
0x80042400L
Operasi atau kombinasi parameter ini tidak didukung oleh penyedia ini.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 7 [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2008 R2 [hanya aplikasi desktop]
Target Platform Windows
Header vds.h
Pustaka Uuid.lib

Lihat juga

IVdsSubSystem2

VDS_HINTS2