Bagikan melalui


Fungsi IsNLSDefinedString (winnls.h)

Menentukan apakah setiap karakter dalam string memiliki hasil yang ditentukan untuk kemampuan NLS tertentu.

Sintaks

BOOL IsNLSDefinedString(
  [in] NLS_FUNCTION     Function,
  [in] DWORD            dwFlags,
  [in] LPNLSVERSIONINFO lpVersionInformation,
  [in] LPCWSTR          lpString,
  [in] INT              cchStr
);

Parameter

[in] Function

Kemampuan NLS untuk mengkueri. Nilai ini harus COMPARE_STRING. Lihat enumerasi SYSNLS_FUNCTION .

[in] dwFlags

Bendera yang menentukan fungsi. Harus 0.

[in] lpVersionInformation

Arahkan ke struktur NLSVERSIONINFO yang berisi informasi versi. Biasanya, informasi diperoleh dengan memanggil GetNLSVersion. Aplikasi mengatur parameter ini ke NULL jika fungsinya adalah menggunakan versi saat ini.

[in] lpString

Arahkan ke string UTF-16 untuk diperiksa.

[in] cchStr

Jumlah karakter UTF-16 dalam string yang ditunjukkan oleh lpString. Jumlah ini dapat mencakup karakter null yang mengakhiri. Jika karakter null yang mengakhiri disertakan dalam jumlah karakter, itu tidak memengaruhi perilaku pemeriksaan karena karakter null yang mengakhiri selalu ditentukan.

Aplikasi harus menyediakan -1 untuk menunjukkan bahwa string dihentikan null. Dalam hal ini, fungsi itu sendiri menghitung panjang string.

Nilai kembali

Mengembalikan TRUE jika berhasil, hanya jika string input valid, atau FALSE sebaliknya. Untuk mendapatkan informasi kesalahan yang diperluas, aplikasi dapat memanggil GetLastError, yang dapat mengembalikan salah satu kode kesalahan berikut:

  • ERROR_INSUFFICIENT_BUFFER. Ukuran buffer yang disediakan tidak cukup besar, atau salah diatur ke NULL.
  • ERROR_INVALID_FLAGS. Nilai yang disediakan untuk bendera tidak valid.
  • ERROR_INVALID_PARAMETER. Salah satu nilai parameter tidak valid.

Keterangan

Fungsi ini membedakan antara string yang ditentukan dan tidak terdefinisi, sehingga aplikasi seperti Direktori Aktif dapat menolak string dengan titik kode yang tidak terdefinisi. Penggunaan fungsi dapat meminimalkan kebutuhan aplikasi untuk mengindeks ulang databasenya. Untuk informasi selengkapnya, lihat Menangani Pengurutan di Aplikasi Anda.

Misalnya, jika Function diatur ke COMPARE_STRING, IsNLSDefinedString memeriksa titik kode yang tidak terdefinisi, pasangan pengganti yang mewakili karakter Unicode yang tidak terdefinisi, atau pasangan pengganti yang tidak terbentuk. Jika fungsi mengembalikan TRUE untuk string tertentu, hasilnya, seperti yang diambil oleh CompareString atau LCMapString dengan set LCMAP_SORTKEY, dijamin identik selama versi NLS yang sesuai tidak berubah.

Persyaratan

   
Klien minimum yang didukung Windows Vista [aplikasi desktop | Aplikasi UWP]
Server minimum yang didukung Windows Server 2008 [aplikasi desktop | Aplikasi UWP]
Target Platform Windows
Header winnls.h (termasuk Windows.h)
Pustaka Kernel32.lib
DLL Kernel32.dll

Lihat juga

CompareString

GetNLSVersion

LCMapString

NLSVERSIONINFO

Dukungan Bahasa Nasional

Fungsi Dukungan Bahasa Nasional

SYSNLS_FUNCTION