Fungsi SHRegGetUSValueW (shlwapi.h)

Mengambil nilai dari subkuntang registri dalam subtree khusus pengguna (HKEY_CURRENT_USER atau HKEY_LOCAL_MACHINE).

Sintaksis

C++
LSTATUS SHRegGetUSValueW(
  [in]                LPCWSTR pszSubKey,
  [in, optional]      LPCWSTR pszValue,
  [in, out, optional] DWORD   *pdwType,
  [out, optional]     void    *pvData,
  [in, out, optional] DWORD   *pcbData,
  [in]                BOOL    fIgnoreHKCU,
  [in, optional]      void    *pvDefaultData,
  [in]                DWORD   dwDefaultDataSize
);

Parameter

[in] pszSubKey

Jenis: LPCTSTR

Penunjuk ke string null-terminated dengan nama subkunci relatif terhadap HKEY_LOCAL_MACHINE dan HKEY_CURRENT_USER. Misalnya: "Software\MyCompany\MyProduct".

[in, optional] pszValue

Jenis: LPCTSTR

Penunjuk ke string yang dihentikan null dengan nama nilai. Nilai ini dapat null.

[in, out, optional] pdwType

Jenis: DWORD*

Pointer ke DWORD yang menerima jenis data yang disimpan dalam nilai yang diambil. Saat menggunakan nilai default, input pdwType adalah jenis nilai default. Untuk nilai yang mungkin, lihat Jenis Data Registri. Jika informasi jenis tidak diperlukan, parameter ini dapat NULL.

[out, optional] pvData

Jenis: batal*

Penunjuk ke buffer yang menerima data nilai.

[in, out, optional] pcbData

Jenis: DWORD*

Penunjuk ke variabel yang menentukan ukuran, dalam byte, dari buffer yang ditujukkan oleh pvData. Saat SHRegGetUSValue kembali, pcbData berisi ukuran data yang disalin ke pvData.

[in] fIgnoreHKCU

Jenis: BOOL

Variabel yang menentukan kunci mana yang akan dilihat. Saat diatur ke TRUE, SHRegGetUSValue mengabaikan HKEY_CURRENT_USER dan mengembalikan nilai dari kunci di bawah HKEY_LOCAL_MACHINE.

[in, optional] pvDefaultData

Jenis: batal*

Penunjuk ke buffer yang menerima data default nilai.

[in] dwDefaultDataSize

Jenis: DWORD

Panjangnya, dalam byte, dari buffer yang diarahkan oleh pvDefaultData.

Mengembalikan nilai

Jenis: LSTATUS

Mengembalikan ERROR_SUCCESS jika berhasil, atau kode kesalahan bukan nol yang ditentukan dalam Winerror.h jika tidak. Anda dapat menggunakan fungsi FormatMessage dengan bendera FORMAT_MESSAGE_FROM_SYSTEM untuk mengambil deskripsi umum tentang kesalahan tersebut.

Komentar

Ketika fIgnoreHKCU diatur ke TRUE, SHRegGetUSValue mengembalikan nilai dari kunci di bawah HKEY_LOCAL_MACHINE. Saat diatur ke FALSE, SHRegGetUSValue pertama-tama mencoba mengembalikan nilai dari kunci di bawah HKEY_CURRENT_USER. Namun, jika kunci tidak ditemukan di bawah HKEY_CURRENT_USER, nilai dikembalikan dari kunci di bawah HKEY_LOCAL_MACHINE. Jika tidak ada kunci, atau jika terjadi kesalahan dan dwDefaultDataSize bukan nol, maka data default disalin ke pvData dan ERROR_SUCCESS kembali. ERROR_SUCCESS mengembalikan untuk data default dan non-default, dan tidak ada cara untuk membedakan salinan nilai mana yang akan pvData. Untuk mencegah penggunaan data default, atur pvDefaultData ke NULL dan dwDefaultDataSize ke nol.

Fungsi ini membuka kunci setiap kali digunakan. Jika kode Anda melibatkan mendapatkan serangkaian nilai dari kunci yang sama, lebih efisien untuk membuka kunci sekali dengan SHRegOpenUSKey lalu menggunakan SHRegQueryUSValue untuk mengambil data.

Catatan

Header shlwapi.h mendefinisikan SHRegGetUSValue sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta preprosektor 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 2000 Professional, Windows XP [hanya aplikasi desktop]
server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Platform Target Windows
Header shlwapi.h
Pustaka Shlwapi.lib
DLL Shlwapi.dll (versi 4.71 atau yang lebih baru)