URL_COMPONENTS结构 (winhttp.h)
URL_COMPONENTS 结构包含 URL 的组成部分。 此结构与 WinHttpCrackUrl 和 WinHttpCreateUrl 函数一起使用。
语法
typedef struct _WINHTTP_URL_COMPONENTS {
DWORD dwStructSize;
LPWSTR lpszScheme;
DWORD dwSchemeLength;
INTERNET_SCHEME nScheme;
LPWSTR lpszHostName;
DWORD dwHostNameLength;
INTERNET_PORT nPort;
LPWSTR lpszUserName;
DWORD dwUserNameLength;
LPWSTR lpszPassword;
DWORD dwPasswordLength;
LPWSTR lpszUrlPath;
DWORD dwUrlPathLength;
LPWSTR lpszExtraInfo;
DWORD dwExtraInfoLength;
} URL_COMPONENTS, *LPURL_COMPONENTS;
成员
dwStructSize
此结构的大小(以字节为单位)。 用于版本检查。 必须设置此结构的大小才能正确初始化此结构。
lpszScheme
指向包含方案名称的字符串值的指针。
dwSchemeLength
方案名称的长度(以字符为单位)。
nScheme
Internet 协议方案。 此成员可以是以下值之一。
值 | 含义 |
---|---|
|
Internet 方案是 HTTP 协议。 有关详细信息,请参阅 RFC 2616 。 |
|
Internet 方案 HTTPS 是使用安全事务语义的 HTTP 协议。 |
lpszHostName
指向包含主机名的字符串值的指针。
dwHostNameLength
主机名的长度(以字符为单位)。
nPort
端口号。
lpszUserName
指向包含用户名的字符串的指针。
dwUserNameLength
用户名的长度(以字符为单位)。
lpszPassword
指向包含密码的字符串的指针。
dwPasswordLength
密码的长度(以字符为单位)。
lpszUrlPath
指向包含 URL 路径的字符串的指针。
dwUrlPathLength
URL 路径的长度(以字符为单位)。
lpszExtraInfo
指向包含额外信息的字符串值的指针,例如?something 或 #something。
dwExtraInfoLength
包含额外信息长度的无符号长整型值(以字符为单位)。
注解
对于 WinHttpCrackUrl 函数,如果指针成员及其相应的长度成员均为零,则不返回 URL 的该组件。 如果指针成员为 NULL ,但长度成员不为零,则同时返回指针成员和长度成员。 如果指针和相应的长度成员均为非零值,则指针成员指向复制组件的缓冲区。 可以从组件中删除所有转义序列,具体取决于 WinHttpCrackUrl 的 dwFlags 参数。
对于 WinHttpCreateUrl 函数,如果不需要 URL 的组件,指针成员应为 NULL 。 如果相应的长度成员为零,则指针成员是指向以零结尾的字符串的指针。 如果长度成员不为零,则为相应指针成员的字符串长度。
要求
最低受支持的客户端 | Windows XP、Windows 2000 Professional SP3 [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2003、Windows 2000 Server SP3 [仅限桌面应用] |
标头 | winhttp.h |
可再发行组件 | Windows XP 和 Windows 2000 上的 WinHTTP 5.0 和 Internet Explorer 5.01 或更高版本。 |