Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Banyak fungsi runtime C (CRT) tidak tersedia saat Anda membangun aplikasi Universal Windows Platform (UWP). Terkadang solusi tersedia—-misalnya, Anda dapat menggunakan Windows Runtime atau Win32 API. Dalam kasus lain, fungsi CRT telah dilarang karena fitur yang sesuai atau API pendukung tidak berlaku untuk aplikasi UWP. Untuk mencari metode alternatif yang didukung untuk Windows Runtime, lihat Alternatif untuk WINDOWS API di aplikasi UWP.
Tabel berikut mencantumkan fungsi CRT yang tidak tersedia saat Anda membangun aplikasi UWP. Ini menunjukkan penyelesaian sementara apa pun yang dapat digunakan.
Fungsi CRT yang Tidak Didukung
| Fungsi | Deskripsi | Penanganan masalah |
|---|---|---|
_beep
_sleep
_seterrormode
|
Fungsi-fungsi ini usang dalam versi CRT sebelumnya. Selain itu, API Win32 yang sesuai tidak tersedia untuk aplikasi UWP. | Tidak ada solusi. |
chdir
_chdrive
getcwd
|
Fungsi-fungsi ini usang atau tidak aman utas. | Gunakan _chdir, _getcwd dan fungsi terkait. |
_cgets
_cgets_s
_cgetws
_cgetws_s
_cprintf
_cprintf_l
_cprintf_p
_cprintf_p_l
_cprintf_s
_cprintf_s_l
_cputs
_cputws
_cscanf
_cscanf_l
_cscanf_s
_cscanf_s_l
_cwait
_cwprintf
_cwprintf_l
_cwprintf_p
_cwprintf_p_l
_cwprintf_s
_cwprintf_s_l
_cwscanf
_cwscanf_l
_cwscanf_s
_cwscanf_s_l
_vcprintf
_vcprintf_l
_vcprintf_p
_vcprintf_p_l
_vcprintf_s
_vcprintf_s_l
_vcwprintf
_vcwprintf_l
_vcwprintf_p
_vcwprintf_p_l
_vcwprintf_s
_vcwprintf_s_l
_getch
_getch_nolock
_getche
_getche_nolock
_getwch
_getwch_nolock
_getwche
_getwche_nolock
_putch
_putch_nolock
_putwch
_putwch_nolock
_ungetch
_ungetch_nolock
_ungetwch
_ungetwch_nolock
_kbhit
kbhit
putch
cgets
cprintf
cputs
cscanf
cwait
getch
getche
ungetch
|
Fungsi I/O konsol ini tidak tersedia di aplikasi UWP berbasis GUI. | Aplikasi konsol UWP dapat menggunakan fungsi-fungsi ini. Untuk informasi selengkapnya, lihat Membuat aplikasi konsol Universal Windows Platform. |
getpid
_getpid
|
Fungsi-fungsi ini usang. | Gunakan API GetCurrentProcessIdWin32 . |
_getdiskfree |
Tidak tersedia. | Gunakan API GetDiskFreeSpaceExWWin32 . |
_getdrive
_getdrives
|
API yang sesuai tidak tersedia untuk aplikasi UWP. | Tidak ada solusi. |
_inp
_inpd
_inpw
_outp
_outpd
_outpw
inp
inpd
inpw
outp
outpd
outpw
|
Port IO tidak didukung di aplikasi UWP. | Tidak ada solusi. |
_ismbcalnum
_ismbcalnum_l
_ismbcalpha
_ismbcalpha_l
_ismbcdigit
_ismbcdigit_l
_ismbcgraph
_ismbcgraph_l
_ismbchira
_ismbchira_l
_ismbckata
_ismbckata_l
_ismbcl0
_ismbcl0_l
_ismbcl1
_ismbcl1_l
_ismbcl2
_ismbcl2_l
_ismbclegal
_ismbclegal_l
_ismbclower
_ismbclower_l
_ismbcprint
_ismbcprint_l
_ismbcpunct
_ismbcpunct_l
_ismbcspace
_ismbcspace_l
_ismbcsymbol
_ismbcsymbol_l
_ismbcupper
_ismbcupper_l
_mbbtombc
_mbbtombc_l
_mbbtype
_mbbtype_l
_mbccpy
_mbccpy_l
_mbccpy_s
_mbccpy_s_l
_mbcjistojms
_mbcjistojms_l
_mbcjmstojis
_mbcjmstojis_l
_mbclen
_mbclen_l
_mbctohira
_mbctohira_l
_mbctokata
_mbctokata_l
_mbctolower
_mbctolower_l
_mbctombb
_mbctombb_l
_mbctoupper
_mbctoupper_l
_mbsbtype
_mbsbtype_l
_mbscat
_mbscat_l
_mbscat_s
_mbscat_s_l
_mbschr
_mbschr_l
_mbscmp
_mbscmp_l
_mbscoll
_mbscoll_l
_mbscpy
_mbscpy_l
_mbscpy_s
_mbscpy_s_l
_mbscspn
_mbscspn_l
_mbsdec
_mbsdec_l
_mbsicmp
_mbsicmp_l
_mbsicoll
_mbsicoll_l
_mbsinc
_mbsinc_l
_mbslen
_mbslen_l
_mbslwr
_mbslwr_l
_mbslwr_s
_mbslwr_s_l
_mbsnbcat
_mbsnbcat_l
_mbsnbcat_s
_mbsnbcat_s_l
_mbsnbcmp
_mbsnbcmp_l
_mbsnbcnt
_mbsnbcnt_l
_mbsnbcoll
_mbsnbcoll_l
_mbsnbcpy
_mbsnbcpy_l
_mbsnbcpy_s
_mbsnbcpy_s_l
_mbsnbicmp
_mbsnbicmp_l
_mbsnbicoll
_mbsnbicoll_l
_mbsnbset
_mbsnbset_l
_mbsnbset_s
_mbsnbset_s_l
_mbsncat
_mbsncat_l
_mbsncat_s
_mbsncat_s_l
_mbsnccnt
_mbsnccnt_l
_mbsncmp
_mbsncmp_l
_mbsncoll
_mbsncoll_l
_mbsncpy
_mbsncpy_l
_mbsncpy_s
_mbsncpy_s_l
_mbsnextc
_mbsnextc_l
_mbsnicmp
_mbsnicmp_l
_mbsnicoll
_mbsnicoll_l
_mbsninc
_mbsninc_l
_mbsnlen
_mbsnlen_l
_mbsnset
_mbsnset_l
_mbsnset_s
_mbsnset_s_l
_mbspbrk
_mbspbrk_l
_mbsrchr
_mbsrchr_l
_mbsrev
_mbsrev_l
_mbsset
_mbsset_l
_mbsset_s
_mbsset_s_l
_mbsspn
_mbsspn_l
_mbsspnp
_mbsspnp_l
_mbsstr
_mbsstr_l
_mbstok
_mbstok_l
_mbstok_s
_mbstok_s_l
_mbsupr
_mbsupr_l
_mbsupr_s
_mbsupr_s_l
is_wctype
|
String multi-byte tidak didukung di aplikasi UWP. | Gunakan string Unicode sebagai gantinya. |
_pclose
_pipe
_popen
_wpopen
|
Fungsionalitas pipa tidak tersedia untuk aplikasi UWP. | Tidak ada solusi. |
_resetstkoflw |
Dukungan untuk API Win32 tidak tersedia pada aplikasi UWP. | Tidak ada solusi. |
_getsystime
_setsystime
|
Ini adalah API usang di versi CRT sebelumnya. Selain itu, pengguna tidak dapat mengatur waktu sistem di aplikasi UWP karena kurangnya izin. | Untuk mendapatkan waktu sistem saja, gunakan API Win32 GetSystemTime. Waktu sistem tidak dapat diatur. |
_environ
_putenv
_putenv_s
_searchenv
_searchenv_s
_dupenv_s
_wputenv
_wputenv_s
_wsearchenv getenv getenv_s putenv _wdupenv_s_wenviron_wgetenv_wgetenv_s_wsearchenv_stzset |
Variabel lingkungan tidak tersedia untuk aplikasi UWP. | Tidak ada solusi. Untuk mengatur zona waktu, gunakan _tzset. |
_loaddll
_getdllprocaddr
_unloaddll
|
Ini adalah fungsi usang dalam versi CRT sebelumnya. Selain itu, pengguna tidak dapat memuat DLL kecuali yang ada dalam paket aplikasi yang sama. | Gunakan API LoadPackagedLibraryWin32 , GetProcAddress, dan FreeLibrary untuk memuat dan menggunakan DLL yang dipaketkan. |
_wexecl
_wexecle
_wexeclp
_wexeclpe
_wexecv
_wexecve
_wexecvp
_wexecvpe
_execl
_execle
_execlp
_execlpe
_execv
_execve
_execvp
_execvpe
_spawnl
_spawnle
_spawnlp
_spawnlpe
_spawnv
_spawnve
_spawnvp
_spawnvpe
_wspawnl
_wspawnle
_wspawnlp
_wspawnlpe
_wspawnv
_wspawnve
_wspawnvp
_wspawnvpe
_wsystem
execl
execle
execlp
execlpe
execv
execve
execvp
execvpe
spawnl
spawnle
spawnlp
spawnlpe
spawnv
spawnve
spawnvp
spawnvpe
system
|
Fungsionalitas tidak tersedia di aplikasi UWP. Aplikasi UWP tidak dapat memanggil aplikasi UWP lain atau aplikasi desktop. | Tidak ada solusi. |
_heapwalk
_heapadd
_heapchk
_heapset
_heapused
|
Fungsi-fungsi ini biasanya digunakan untuk bekerja dengan timbunan. Namun, API Win32 yang sesuai tidak didukung di aplikasi UWP. Dan, aplikasi tidak dapat lagi membuat atau menggunakan timbunan privat. | Tidak ada solusi. Namun, _heapwalk tersedia di DEBUG CRT, dan hanya untuk keperluan debugging. Fungsi-fungsi ini tidak dapat digunakan dalam aplikasi yang diunggah ke Microsoft Store. |
Fungsi berikut tersedia di CRT untuk aplikasi UWP. Namun, gunakan hanya saat Anda tidak dapat menggunakan API Win32 atau Windows Runtime yang sesuai, seperti saat Anda mentransfer basis kode besar:
| Fungsi | Penanganan masalah |
|---|---|
Fungsi string byte tunggal—misalnya, , strcat, strcpystrlwr, dan sebagainya. |
Jadikan aplikasi UWP Anda benar-benar Unicode karena semua API Win32 dan WINDOWS Runtime API yang diekspos hanya menggunakan set karakter Unicode. Fungsi byte tunggal dibiarkan untuk porting basis kode besar, tetapi sebaliknya harus dihindari. Fungsi karakter lebar yang sesuai harus digunakan sebagai gantinya jika memungkinkan. |
Fungsi Stream IO dan IO file tingkat rendah—misalnya, fopen, open, dan sebagainya. |
Fungsi-fungsi ini sinkron, yang tidak direkomendasikan untuk aplikasi UWP. Di aplikasi UWP Anda, gunakan API asinkron untuk membuka, membaca, dan menulis ke file guna mencegah penguncian pada utas antarmuka pengguna. **
Contoh API tersebut adalah yang ada di kelas Windows::Storage::FileIO. |
Aplikasi Windows 8.x Store dan aplikasi Windows Phone 8.x
API yang disebutkan sebelumnya dan API berikut tidak tersedia di aplikasi Windows 8.x Store dan aplikasi Windows Phone 8.x.
| Fungsi | Deskripsi | Penanganan masalah |
|---|---|---|
_beginthread
_beginthreadex
_endthread
_endthreadex
|
API Win32 Threading tidak tersedia di aplikasi Windows 8.x Store. | Gunakan Windows Runtime Windows::System::Threading::ThreadPool atau concurrency::task sebagai gantinya. |
_chdir
_wchdir
_getcwd
_getdcwd
_wgetcwd
_wgetdcwd
|
Konsep direktori kerja tidak berlaku untuk aplikasi Windows 8.x Store. | Gunakan jalur lengkap sebagai gantinya. |
_isleadbyte_l
_ismbbalnum
_ismbbalnum_l
_ismbbalpha,_ismbbalpha_ismbbalpha_l_ismbbgraph_ismbbgraph_l_ismbbkalnum_ismbbkalnum_l_ismbbkana_ismbbkana_l_ismbbkprint_ismbbkprint_l_ismbbkpunct_ismbbkpunct_l_ismbblead_ismbblead_l_ismbbprint_ismbbprint_l_ismbbpunct_ismbbpunct_l_ismbbtrail_ismbbtrail_l_ismbslead_ismbslead_l_ismbstrail_ismbstrail_l_mbsdupisleadbyte |
String multi-byte tidak didukung di aplikasi Windows 8.x Store. | Gunakan string Unicode sebagai gantinya. |
_tzset |
Variabel lingkungan tidak tersedia untuk aplikasi Windows 8.x Store. | Tidak ada solusi. |
_get_heap_handle, _heapmin |
API Win32 yang sesuai tidak didukung di aplikasi Windows 8.x Store. Dan, aplikasi tidak dapat lagi membuat kumpulan memori pribadi. | Tidak ada solusi. Namun, _get_heap_handle tersedia di DEBUG CRT, dan hanya untuk keperluan debugging. |