Fungsi GetNtmsObjectAttributeA (ntmsapi.h)

[ Manajer Penyimpanan yang Dapat Dilepas tidak lagi tersedia pada Windows 7 dan Windows Server 2008 R2.]

Fungsi GetNtmsObjectAttribute mengambil atribut yang diperluas (bernama data privat) dari objek RSM yang ditentukan.

Sintaksis

DWORD GetNtmsObjectAttributeA(
  [in]      HANDLE      hSession,
  [in]      LPNTMS_GUID lpObjectId,
  [in]      DWORD       dwType,
  [in]      LPCSTR      lpAttributeName,
  [out]     LPVOID      lpAttributeData,
  [in, out] LPDWORD     lpAttributeSize
);

Parameter

[in] hSession

Tangani ke sesi yang dikembalikan oleh fungsi OpenNtmsSession.

[in] lpObjectId

Pengidentifikasi unik objek tempat mengambil data.

[in] dwType

Jenis objek RSM. Untuk daftar jenis objek, lihat NtmsObjectsTypes.

[in] lpAttributeName

Nama atribut yang diperluas yang datanya akan diambil.

[out] lpAttributeData

Penunjuk ke buffer yang menerima data.

[in, out] lpAttributeSize

Ukuran buffer data pada input, dalam byte. Pada output, ukuran aktual data, dalam byte.

Mengembalikan nilai

Fungsi ini mengembalikan salah satu nilai berikut.

Nilai Arti
ERROR_ACCESS_DENIED
NTMS_USE_ACCESS ke objek atau kontainernya ditolak. Kesalahan keamanan lainnya juga dimungkinkan, tetapi akan menunjukkan kesalahan subsistem keamanan.

Windows XP: Tidak diperlukan hak akses.

ERROR_DATABASE_FAILURE
Kueri atau pembaruan database gagal.
ERROR_INSUFFICIENT_BUFFER
Ukuran buffer tidak ditentukan dengan benar. Ukuran yang benar dikembalikan dalam parameter lpAttributeSize.
ERROR_INVALID_HANDLE
Nilai yang ditentukan dalam parameter hSession null atau tidak valid.
ERROR_INVALID_PARAMETER
Penunjuk NULL atau tidak valid.
ERROR_NOT_CONNECTED
Tidak dapat tersambung ke layanan RSM.
ERROR_OBJECT_NOT_FOUND
Atribut yang ditentukan tidak ditemukan.
ERROR_SUCCESS
Fungsi berhasil.

Komentar

Fungsi GetNtmsObjectAttribute harus dijalankan di server RSM. Karena buffer byte tidak dirusak antara sistem arsitektur yang berbeda, eksekusi jarak jauh fungsi ini dapat mengakibatkan hasil yang tidak dapat diprediksi.

Berikut ini adalah daftar objek yang memerlukan hak akses khusus.

Benda Akses
NTMS_CHANGER Memerlukan NTMS_USE_ACCESS ke pustaka.
NTMS_CHANGER_TYPE Memerlukan NTMS_USE_ACCESS ke komputer.
NTMS_COMPUTER Memerlukan NTMS_USE_ACCESS ke komputer.
NTMS_DRIVE Memerlukan NTMS_USE_ACCESS ke pustaka.
NTMS_DRIVE_TYPE Memerlukan NTMS_USE_ACCESS ke komputer.
NTMS_IEDOOR Memerlukan NTMS_USE_ACCESS ke pustaka.
NTMS_IEPORT Memerlukan NTMS_USE_ACCESS ke pustaka.
NTMS_LIBRARY Memerlukan NTMS_USE_ACCESS ke pustaka.
NTMS_LIBREQUEST Memerlukan NTMS_USE_ACCESS ke pustaka.
NTMS_LOGICAL_MEDIA Memerlukan NTMS_USE_ACCESS ke kumpulan media media logis.
NTMS_MEDIA_POOL Memerlukan NTMS_USE_ACCESS ke kumpulan media.
NTMS_MEDIA_TYPE Memerlukan NTMS_USE_ACCESS ke komputer.
NTMS_OPREQUEST Memerlukan NTMS_USE_ACCESS ke komputer.
NTMS_PARTITION Membutuhkan NTMS_USE_ACCESS ke kumpulan media samping.
NTMS_PHYSICAL_MEDIA Memerlukan NTMS_USE_ACCESS ke kumpulan media.
NTMS_STORAGESLOT Memerlukan NTMS_USE_ACCESS ke pustaka.
 

Nota

Header ntmsapi.h mendefinisikan GetNtmsObjectAttribute sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta preprosedisor UNICODE. Mencampur penggunaan alias encoding-netral dengan kode yang tidak mengodekan-netral dapat menyebabkan ketidakcocokan yang mengakibatkan kesalahan kompilasi atau runtime. Untuk informasi selengkapnya, lihat Konvensi untuk Prototipe Fungsi.

Persyaratan

Syarat Nilai
klien minimum yang didukung Windows XP [hanya aplikasi desktop]
server minimum yang didukung Windows Server 2003 [hanya aplikasi desktop]
Platform Target Windows
Header ntmsapi.h
Pustaka Ntmsapi.lib
DLL Ntmsapi.dll

Lihat juga

EnumerateNtmsObject

Object Management Functions

SetNtmsObjectAttribute