# Function Reference

# _WinAPI_UrlCanonicalize

Converts a URL string into canonical form

#include <WinAPIShPath.au3>
_WinAPI_UrlCanonicalize ( $sUrl, $iFlags )

## Parameters

$sUrl | The URL.
$iFlags | The flags that specify how the URL is to be converted. It can be a combination of the following values. $URL_DONT_SIMPLIFY $URL_ESCAPE_PERCENT $URL_ESCAPE_SPACES_ONLY $URL_ESCAPE_UNSAFE $URL_NO_META $URL_PLUGGABLE_PROTOCOL $URL_UNESCAPE Windows 7 or later $URL_ESCAPE_AS_UTF8

## Return Value

Success: | The converted URL.
Failure: | Sets the @error flag to non-zero, @extended flag may contain the HRESULT error code.

## Remarks

If a URL string contains "/../" or "/./", _WinAPI_UrlCanonicalize() usually treats the characters as if they
indicated navigation in the URL hierarchy. The function simplifies the URLs before combining them. For instance,
"/hello/cruel/../world" is simplified to "/hello/world". If the $URL_DONT_SIMPLIFY flag is set, the function
does not simplify URLs. In this case, "/hello/cruel/../world" is left as it is.

## See Also

Search UrlCanonicalize in MSDN Library.

## Example

    #include <WinAPIShPath.au3>

    Local $sUrl = 'http://msdn.microsoft.com/en-us/library/ee663300%28VS.85%29.aspx'

    ConsoleWrite(_WinAPI_UrlCanonicalize($sUrl, $URL_UNESCAPE) & @CRLF)