Bagikan melalui


Fungsi GetCalendarInfoA (winnls.h)

Mengambil informasi tentang kalender untuk lokal yang ditentukan oleh pengidentifikasi.

Catatan Untuk alasan interoperabilitas, aplikasi harus lebih memilih fungsi GetCalendarInfoEx ke GetCalendarInfo karena Microsoft bermigrasi ke penggunaan nama lokal alih-alih pengidentifikasi lokal untuk lokal baru. Aplikasi apa pun yang hanya berjalan di Windows Vista dan yang lebih baru harus menggunakan GetCalendarInfoEx.
 

Sintaks

int GetCalendarInfoA(
  [in]            LCID    Locale,
  [in]            CALID   Calendar,
  [in]            CALTYPE CalType,
  [out, optional] LPSTR   lpCalData,
  [in]            int     cchData,
  [out, optional] LPDWORD lpValue
);

Parameter

[in] Locale

Pengidentifikasi lokal yang menentukan lokal untuk mengambil informasi kalender. Anda bisa menggunakan makro MAKELCID untuk membuat pengidentifikasi lokal atau menggunakan salah satu nilai yang telah ditentukan sebelumnya berikut ini.

[in] Calendar

Pengidentifikasi kalender.

[in] CalType

Jenis informasi yang akan diambil. Untuk informasi selengkapnya, lihat Informasi Jenis Kalender.

CatatanGetCalendarInfo hanya mengembalikan satu string jika parameter ini menentukan CAL_IYEAROFFSETRANGE atau CAL_SERASTRING. Dalam kedua kasus, era saat ini dikembalikan.
 
CAL_USE_CP_ACP hanya relevan untuk versi ANSI dari fungsi ini.

Untuk CAL_NOUSEROVERRIDE, fungsi mengabaikan nilai apa pun yang ditetapkan oleh SetCalendarInfo dan menggunakan pengaturan database untuk lokal default sistem saat ini. Jenis ini hanya relevan dalam kombinasi CAL_NOUSEROVERRIDE | CAL_ITWODIGITYEARMAX. CAL_ITWODIGITYEARMAX adalah satu-satunya nilai yang dapat diatur oleh SetCalendarInfo.

[out, optional] lpCalData

Penunjuk ke buffer tempat fungsi ini mengambil data yang diminta sebagai string. Jika CAL_RETURN_NUMBER ditentukan dalam CalType, parameter ini harus mengambil NULL.

[in] cchData

Ukuran, dalam karakter, dari buffer lpCalData . Aplikasi dapat mengatur parameter ini ke 0 untuk mengembalikan ukuran yang diperlukan untuk buffer data kalender. Dalam hal ini, parameter lpCalData tidak digunakan. Jika CAL_RETURN_NUMBER ditentukan untuk CalType, nilai cchData harus 0.

[out, optional] lpValue

Penunjuk ke variabel yang menerima data yang diminta sebagai angka. Jika CAL_RETURN_NUMBER ditentukan dalam CalType, maka lpValue tidak boleh NULL. Jika CAL_RETURN_NUMBER tidak ditentukan dalam CalType, maka lpValue harus NULL.

Mengembalikan nilai

Mengembalikan jumlah karakter yang diambil dalam buffer lpCalData , dengan cchData diatur ke nilai bukan nol, jika berhasil. Jika fungsi berhasil, cchData diatur ke 0, dan CAL_RETURN_NUMBER tidak ditentukan, nilai yang dikembalikan adalah ukuran buffer yang diperlukan untuk menyimpan informasi kalender. Jika fungsi berhasil, cchData diatur 0, dan CAL_RETURN_NUMBER ditentukan, nilai yang dikembalikan adalah ukuran nilai yang diambil dalam lpValue, yaitu, 2 untuk versi Unicode fungsi atau 4 untuk versi ANSI.

Fungsi ini mengembalikan 0 jika tidak berhasil. 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 diberikan untuk bendera tidak valid.
  • ERROR_INVALID_PARAMETER. Salah satu nilai parameter tidak valid.

Keterangan

Catatan API ini sedang diperbarui untuk mendukung perubahan era Jepang Mei 2019. Jika aplikasi Anda mendukung kalender Jepang, Anda harus memvalidasi bahwa aplikasi tersebut menangani era baru dengan benar. Lihat Menyiapkan aplikasi Anda untuk perubahan era Jepang untuk informasi selengkapnya.
 
Ketika versi ANSI dari fungsi ini digunakan dengan pengidentifikasi lokal khusus Unicode, fungsi dapat berhasil karena sistem operasi menggunakan halaman kode sistem. Namun, karakter yang tidak ditentukan di halaman kode sistem muncul dalam string sebagai tanda tanya (?).

Catatan

Header winnls.h mendefinisikan GetCalendarInfo 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 [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Target Platform Windows
Header winnls.h (termasuk Windows.h)
Pustaka Kernel32.lib
DLL Kernel32.dll

Lihat juga

Informasi Tipe Kalender

GetCalendarInfoEx

Dukungan Bahasa Nasional

Fungsi Dukungan Bahasa Nasional

SetCalendarInfo