WinHttpTimeFromSystemTime 函数 (winhttp.h)
WinHttpTimeFromSystemTime 函数根据 HTTP 版本 1.0 规范设置日期和时间的格式。
语法
WINHTTPAPI BOOL WinHttpTimeFromSystemTime(
[in] const SYSTEMTIME *pst,
[out] LPWSTR pwszTime
);
参数
[in] pst
指向 SYSTEMTIME 结构的指针,该结构包含要格式化的日期和时间。
[out] pwszTime
指向接收格式化日期和时间的字符串缓冲区的指针。 缓冲区应等于WINHTTP_TIME_FORMAT_BUFSIZE的大小(以字节为单位)。
返回值
如果成功,则返回 TRUE ,否则返回 FALSE 。 要获得更多的错误信息,请调用 GetLastError。 错误代码包括以下内容。
错误代码 | 说明 |
---|---|
|
发生了内部错误。 |
注解
即使在异步模式下使用 WinHTTP (即在 WinHttpOpen) 中设置了WINHTTP_FLAG_ASYNC时,此函数也会同步运行。 返回值指示成功或失败。 要获得更多的错误信息,请调用 GetLastError。
注意 对于 Windows XP 和 Windows 2000,请参阅 WinHTTP 起始页的 运行时要求 部分。
示例
下面的代码示例代码演示如何将 SYSTEMTIME 结构转换为包含 HTTP 格式时间的字符串。
SYSTEMTIME sTime;
LPWSTR pwszTimeStr;
// Get the current time.
GetSystemTime(&sTime);
// Allocate memory for the string.
// Note: WINHTTP_TIME_FORMAT_BUFSIZE is a byte count.
// Therefore, you must divide the array by
// sizeof WCHAR to get the proper string length.
pwszTimeStr = new WCHAR[WINHTTP_TIME_FORMAT_BUFSIZE/sizeof(WCHAR)];
// Convert the current time to HTTP format.
if(!WinHttpTimeFromSystemTime( &sTime, pwszTimeStr))
{
printf( "Error %u in WinHttpTimeFromSystemTime.\n", GetLastError());
}
else
{
// Print the time.
printf("Current time is (%S)\n", pwszTimeStr);
}
// Free the memory.
delete [] pwszTimeStr;
要求
最低受支持的客户端 | Windows XP、Windows 2000 Professional 和 SP3 [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2003、Windows 2000 Server SP3 [仅限桌面应用] |
目标平台 | Windows |
标头 | winhttp.h |
Library | Winhttp.lib |
DLL | Winhttp.dll |
可再发行组件 | Windows XP 和 Windows 2000 上的 WinHTTP 5.0 和 Internet Explorer 5.01 或更高版本。 |