Fungsi UrlUnescapeA (shlwapi.h)

Mengonversi urutan escape kembali menjadi karakter biasa.

Sintaksis

C++
LWSTDAPI UrlUnescapeA(
  [in, out]           PSTR  pszUrl,
  [out, optional]     PSTR  pszUnescaped,
  [in, out, optional] DWORD *pcchUnescaped,
                      DWORD dwFlags
);

Parameter

[in, out] pszUrl

Jenis: PTSTR

Penunjuk ke string yang dihentikan null dengan URL. Jika dwFlags diatur ke URL_UNESCAPE_INPLACE, string yang dikonversi dikembalikan melalui parameter ini.

[out, optional] pszUnescaped

Jenis: PTSTR

Penunjuk ke buffer yang akan menerima string null-terminated yang berisi versi pszURL. Jika URL_UNESCAPE_INPLACE diatur dalam dwFlags, parameter ini diabaikan.

[in, out, optional] pcchUnescaped

Jenis: DWORD*

Jumlah karakter dalam buffer yang ditunjukkan oleh pszUnescaped. Pada entri, nilai titik pcchUnescaped diatur ke ukuran buffer. Jika fungsi mengembalikan kode keberhasilan dan bendera URL_UNESCAPE_INPLACE tidak diatur, nilai yang poin pcchUnescaped diatur ke jumlah karakter yang ditulis ke buffer tersebut, tidak menghitung karakter NULL yang dihentikan. Jika kode kesalahan E_POINTER dikembalikan, buffer terlalu kecil, dan nilai yang titik pcchUnescaped diatur ke jumlah karakter yang diperlukan yang harus dapat dimuat buffer. Jika ada kesalahan lain yang dikembalikan, nilai yang titik pcchUnescaped tidak ditentukan.

dwFlags

Jenis: DWORD

Bendera yang mengontrol karakter mana yang tidak di-unescaped. Ini bisa menjadi kombinasi dari bendera berikut.

URL_DONT_UNESCAPE_EXTRA_INFO

Jangan konversi # atau ? karakter, atau karakter apa pun yang mengikutinya dalam string.

URL_UNESCAPE_AS_UTF8

Diperkenalkan di Windows 8. Dekode URL yang dikodekan dengan menggunakan bendera URL_ESCAPE_AS_UTF8.

URL_UNESCAPE_INPLACE

Gunakan pszURL untuk mengembalikan string yang dikonversi alih-alih pszUnescaped.

Mengembalikan nilai

Jenis: HRESULT

Mengembalikan S_OK jika berhasil. Jika bendera URL_UNESCAPE_INPLACE tidak diatur, nilai yang diacu oleh pcchUnescaped akan diatur ke jumlah karakter dalam buffer output yang ditujukkan oleh pszUnescaped. Mengembalikan E_POINTER jika bendera URL_UNESCAPE_INPLACE tidak diatur dan buffer output terlalu kecil. Parameter pcchUnescaped akan diatur ke ukuran buffer yang diperlukan. Jika tidak, mengembalikan nilai kesalahan standar.

Komentar

Urutan escape memiliki formulir "%xy".

String input tidak boleh lebih panjang dari INTERNET_MAX_URL_LENGTH.

Catatan

Header shlwapi.h mendefinisikan UrlUnescape sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta praprosesor 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 5.0 atau yang lebih baru)