SHFormatDateTimeW 関数 (shlwapi.h)
[SHFormatDateTime は、[要件] セクションで指定されたオペレーティング システムで使用できます。 以降のバージョンでは変更または使用できない場合があります。]
FILETIME 構造体として指定された時刻の文字列表現を生成します。
構文
int SHFormatDateTimeW(
[in] const FILETIME *pft,
[in, out, optional] DWORD *pdwFlags,
[out] LPWSTR pszBuf,
UINT cchBuf
);
パラメーター
[in] pft
型: const FILETIME UNALIGNED*
時刻が文字列に変換される FILETIME 構造体へのポインター。
[in, out, optional] pdwFlags
種類: DWORD*
日付と時刻の形式を指定するビットごとのフラグを含む DWORD 値へのポインター。
関数を呼び出すときに、次のフラグを 0 個以上組み合わせることができます。ただし、例外は示されています。 このパラメーターを NULL に設定することもできます。この場合、関数は FDTF_DEFAULT フラグが設定されていると見なします。
FDTF_SHORTTIME (0x00000001)
0x00000001。 地域と言語のオプション アプリケーションで指定された時刻をコントロール パネルで書式設定しますが、秒は使用しません。 このフラグをFDTF_LONGTIMEと組み合わせることはできません。
短い時間が正常に書式設定されました。
FDTF_SHORTDATE (0x00000002)
0x00000002。 コントロール パネルの地域と言語のオプション アプリケーションで短い日付形式で指定された日付の書式を設定します。 このフラグをFDTF_LONGDATEと組み合わせることはできません。
短い日付が正常に書式設定されました。
FDTF_DEFAULT
FDTF_SHORTDATEと同等 |FDTF_SHORTTIME。
FDTF_LONGDATE (0x00000004)
0x00000004。 コントロール パネルの地域および言語オプション アプリケーションで長い日付形式で指定された日付の書式を設定します。 このフラグをFDTF_SHORTDATEと組み合わせることはできません。
長い日付が正常に書式設定されました。
FDTF_LONGTIME (0x00000008)
0x00000008。 [地域と言語のオプション] アプリケーションで指定された時刻を、秒を含むコントロール パネルで書式設定します。 このフラグをFDTF_SHORTTIMEと組み合わせることはできません。
長い時間が正常に書式設定されました。
FDTF_RELATIVE (0x00000010)
0x00000010。 FDTF_LONGDATE フラグが設定され、 FILETIME 構造体の日付が SHFormatDateTime と同じ日付である場合、曜日 (存在する場合) は "Today" に変更されます。 構造体の日付が前日の場合、曜日 (存在する場合) は "昨日" に変更されます。
日付には相対表記が使用されました。
FDTF_LTRDATE (0x00000100)
0x00000100。 左から右の読み取りレイアウトのマークを追加します。 このフラグをFDTF_RTLDATEと組み合わせることはできません。
FDTF_RTLDATE (0x00000200)
0x00000200。 右から左への読み取りレイアウトのマークを追加します。 このフラグをFDTF_LTRDATEと組み合わせることはできません。
FDTF_NOAUTOREADINGORDER (0x00000400)
0x00000400。 読み取り順序マークは挿入されません。 通常、FDTF_LTRDATEフラグまたはFDTF_RTLDATE フラグがない場合、 SHFormatDateTime はユーザーの既定のロケールからの読み取り順序を決定し、読み取り順序マークを挿入し、 pdwFlags 出力値を適切に更新します。 このフラグは、そのプロセスが発生するのを防ぎます。 これは、 SHFormatDateTime のレガシ呼び出し元によって最も一般的に使用されます。 このフラグをFDTF_RTLDATEまたはFDTF_LTRDATEと組み合わせることはできません。
Windows Server 2003 および Windows XP: この値は使用できません。
関数が戻るときに、このパラメーターが指す DWORD 値には、次のフラグを 0 個以上含めることができます。
FDTF_SHORTTIME (0x00000001)
0x00000001。 地域と言語のオプション アプリケーションで指定された時刻をコントロール パネルで書式設定しますが、秒は使用しません。 このフラグをFDTF_LONGTIMEと組み合わせることはできません。
短い時間が正常に書式設定されました。
FDTF_SHORTDATE (0x00000002)
0x00000002。 コントロール パネルの地域と言語のオプション アプリケーションで短い日付形式で指定された日付の書式を設定します。 このフラグをFDTF_LONGDATEと組み合わせることはできません。
短い日付が正常に書式設定されました。
FDTF_LONGDATE (0x00000004)
0x00000004。 コントロール パネルの地域および言語オプション アプリケーションで長い日付形式で指定された日付の書式を設定します。 このフラグをFDTF_SHORTDATEと組み合わせることはできません。
長い日付が正常に書式設定されました。
FDTF_LONGTIME (0x00000008)
0x00000008。 [地域と言語のオプション] アプリケーションで指定された時刻を、秒を含むコントロール パネルで書式設定します。 このフラグをFDTF_SHORTTIMEと組み合わせることはできません。
長い時間が正常に書式設定されました。
FDTF_RELATIVE (0x00000010)
0x00000010。 FDTF_LONGDATE フラグが設定され、 FILETIME 構造体の日付が SHFormatDateTime と同じ日付である場合、曜日 (存在する場合) は "Today" に変更されます。 構造体の日付が前日の場合、曜日 (存在する場合) は "昨日" に変更されます。
日付には相対表記が使用されました。
[out] pszBuf
種類: LPTSTR
書式設定された日時を受け取るバッファーへのポインター。 バッファーは、 cchBuf パラメーターで指定された TCHAR 文字の数 (終端の null 文字を含む) を格納するのに十分な大きさである必要があります。
cchBuf
型: UINT
pszBuf が指すバッファーに含めることができる TCHAR の数。
戻り値
型: int
バッファーに書き込まれた TCHAR の数 (終端の null 文字を含む) を返します。 失敗した場合、この値は 0 です。
注釈
注意
shlwapi.h ヘッダーは、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして SHFormatDateTime を定義します。 encoding-neutral エイリアスの使用を encoding-neutral ではないコードと混在すると、コンパイル エラーまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows XP (デスクトップ アプリのみ) |
サポートされている最小のサーバー | Windows Server 2003 (デスクトップ アプリのみ) |
対象プラットフォーム | Windows |
ヘッダー | shlwapi.h |
Library | Shlwapi.lib |
[DLL] | Shlwapi.dll (バージョン 5.0 以降) |