Bagikan melalui


Fungsi SHRegGetUSValueA (shlwapi.h)

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

Sintaks

LSTATUS SHRegGetUSValueA(
  [in]                LPCSTR pszSubKey,
  [in, optional]      LPCSTR 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 yang dihentikan null 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 bisa NULL.

[in, out, optional] pdwType

Jenis: DWORD*

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

[out, optional] pvData

Jenis: void*

Penunjuk ke buffer yang menerima data nilai.

[in, out, optional] pcbData

Jenis: DWORD*

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

[in] fIgnoreHKCU

Jenis: BOOL

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

[in, optional] pvDefaultData

Jenis: void*

Penunjuk ke buffer yang menerima data default nilai.

[in] dwDefaultDataSize

Jenis: DWORD

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

Nilai kembali

Jenis: LSTATUS

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

Keterangan

Saat 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 kembali untuk data default dan non-default, dan tidak ada cara untuk membedakan nilai mana yang disalin ke 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 pra-prosesor 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

Persyaratan Nilai
Klien minimum yang didukung Windows 2000 Professional, Windows XP [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Target Platform Windows
Header shlwapi.h
Pustaka Shlwapi.lib
DLL Shlwapi.dll (versi 4.71 atau yang lebih baru)