GetDurationFormat

識別子で指定したロケール用に時間長を時刻文字列として整形する。

GetDurationFormat Locale, dwFlags, lpDuration, ullDuration, lpFormat, lpDurationStr, cchDuration

Locale : [int] この関数が時間長を整形するロケールを指定するロケール識別子。MAKELCID マクロでロケール識別子を作成することも、次の定義済み値のいずれかを使うこともできる。
dwFlags : [int] 関数オプションを指定するフラグ。lpFormat が NULL でない場合、このパラメータは 0 に設定する必要がある。lpFormat が NULL の場合、アプリケーションは LOCALE_NOUSEROVERRIDE を指定して、指定したロケールのシステム既定の時間長形式を使って文字列を整形できる。注意: LOCALE_NOUSEROVERRIDE の使用はユーザー設定を無効にするため、強く推奨されない。
lpDuration : [var] 整形対象の時間長情報を含む SYSTEMTIME 構造体へのポインタ。このポインタが NULL の場合、関数はこのパラメータを無視し、ullDuration を使う。
ullDuration : [int64] 時間長における 100 ナノ秒間隔の数を表す 64 ビット符号なし整数。lpDuration と ullDuration の両方が存在する場合、lpDuration が優先される。lpDuration が NULL に設定され、ullDuration が 0 に設定されている場合、時間長は 0 となる。
lpFormat : [wstr] 書式文字列へのポインタ。詳細は GetDurationFormatEx の lpFormat パラメータを参照。
lpDurationStr : [wstr] 時間長文字列をこの関数が取得するバッファへのポインタ。あるいは、cchDuration が 0 に設定されている場合、このパラメータには NULL を指定できる。その場合、関数は時間長文字列バッファに必要なサイズを返す。
cchDuration : [int] lpDurationStr が示すバッファのサイズ。文字数で指定する。あるいは、アプリケーションはこのパラメータを 0 に設定することもできる。その場合、関数は lpDurationStr に NULL を取得し、時間長文字列バッファに必要なサイズを返す。

(プラグイン / モジュール : kernel32.dll)

解説

識別子で指定したロケール用に時間長を時刻文字列として整形する。

[戻り値]
成功した場合、lpDurationStr が示すバッファに取得された文字数を返す。lpDurationStr が NULL
に設定され、cchDuration が 0 に設定されている場合、関数は終端 NULL
文字を含む時間長文字列バッファに必要なサイズを返す。たとえば 10 文字がバッファに書き込まれる場合、関数は終端 NULL 文字を含めた
11 を返す。成功しなかった場合は 0 を返す。拡張エラー情報を取得するには GetLastError
を呼び出すことができ、次のいずれかのエラーコードが返ることがある。
(以下省略)

[備考]
GetDurationFormatEx の Remarks を参照。

情報

プラグイン / モジュールkernel32.dll
バージョン1.0
作成日2026/04/16
著作者IronHSP / CsWin32 bridge
URLhttps://github.com/inovia/IronHSP
備考Win32 API の kernel32.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。
タイプ拡張命令
グループWin32API
対応環境
  • Windows 版 HSP
hs ファイルhsphelp\win32_kernel32_gen2.hs