Funzione UrlUnescapeA (shlwapi.h)
Converte le sequenze di escape in caratteri ordinari.
Sintassi
LWSTDAPI UrlUnescapeA(
[in, out] PSTR pszUrl,
[out, optional] PSTR pszUnescaped,
[in, out, optional] DWORD *pcchUnescaped,
DWORD dwFlags
);
Parametri
[in, out] pszUrl
Tipo: PTSTR
Puntatore a una stringa con terminazione Null con l'URL. Se dwFlags è impostato su URL_UNESCAPE_INPLACE, la stringa convertita viene restituita tramite questo parametro.
[out, optional] pszUnescaped
Tipo: PTSTR
Puntatore a un buffer che riceverà una stringa con terminazione Null contenente la versione senza caratteri di escape di pszURL. Se URL_UNESCAPE_INPLACE è impostato in dwFlags, questo parametro viene ignorato.
[in, out, optional] pcchUnescaped
Tipo: DWORD*
Numero di caratteri nel buffer a cui punta pszUnescaped. In ingresso, il valore pcchUnescaped punta a è impostato sulle dimensioni del buffer. Se la funzione restituisce un codice di esito positivo e il flag URL_UNESCAPE_INPLACE non è impostato, il valore a cui pcchUnescaped punta viene impostato sul numero di caratteri scritti nel buffer, senza contare il carattere di terminazione NULL. Se viene restituito un codice di errore E_POINTER, il buffer era troppo piccolo e il valore a cui punti pcchUnescaped viene impostato sul numero di caratteri richiesto che il buffer deve essere in grado di contenere. Se vengono restituiti altri errori, il valore a cui pcchUnescaped punti non è definito.
dwFlags
Tipo: DWORD
Flag che controllano i caratteri senza caratteri di escape. Può essere una combinazione dei flag seguenti.
URL_DONT_UNESCAPE_EXTRA_INFO
Non convertire il file # o ? carattere o qualsiasi carattere che li segue nella stringa.
URL_UNESCAPE_AS_UTF8
introdotta in Windows 8. Decodificare gli URL codificati usando il flag URL_ESCAPE_AS_UTF8.
URL_UNESCAPE_INPLACE
Usare pszURL per restituire la stringa convertita anziché pszUnescaped.
Valore restituito
Tipo: HRESULT
Restituisce S_OK in caso di esito positivo. Se il flag URL_UNESCAPE_INPLACE non è impostato, il valore a cui punta pcchUnescaped verrà impostato sul numero di caratteri nel buffer di output a cui punta pszUnescaped. Restituisce E_POINTER se il flag URL_UNESCAPE_INPLACE non è impostato e il buffer di output è troppo piccolo. Il parametro pcchUnescaped verrà impostato sulla dimensione del buffer richiesta. In caso contrario, restituisce un valore di errore standard.
Osservazioni
Una sequenza di escape ha il formato "%xy".
Le stringhe di input non possono essere più lunghe di INTERNET_MAX_URL_LENGTH.
Nota
L'intestazione shlwapi.h definisce UrlUnescape come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice non indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Windows 2000 Professional, Windows XP [solo app desktop] |
server minimo supportato | Windows 2000 Server [solo app desktop] |
piattaforma di destinazione | Finestre |
intestazione |
shlwapi.h |
libreria |
Shlwapi.lib |
dll | Shlwapi.dll (versione 5.0 o successiva) |