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 およびインターネット エクスプローラー 5.01 以降がインストールされています。 |