BuildCommDCBAndTimeoutsW

デバイス定義文字列を適切なデバイス制御ブロックコードに変換し、デバイス制御ブロックに配置する。(Unicode)

BuildCommDCBAndTimeoutsW lpDef, lpDCB, lpCommTimeouts

lpDef : [wstr] デバイス制御情報。関数はこの文字列を取得して解析し、lpDCB が指す DCB 構造体に適切な値を設定する。文字列は mode コマンドのコマンドライン引数と同じ形式でなければならない: COMx[:][baud={11|110|15|150|30|300|60|600|12|1200|24|2400|48|4800|96|9600|19|19200}][parity={n|e|o|m|s}][data={5|6|7|8}][stop={1|1.5|2}][to={on|off}][xon={on|off}][odsr={on|off}][octs={on|off}][dtr={on|off|hs}][rts={on|off|hs|tg}][idsr={on|off}]。"baud" サブ文字列にはリストされたペアの値のいずれかを指定できる。2 桁の値は、それが表す値の先頭 2 桁である。例えば 11 は 110 ボー、19 は 19,200 ボーを表す。"parity" サブ文字列は、パリティビットを伝送エラー検出にどう使うかを示す。値はそれぞれ "none"、"even"、"odd"、"mark"、"space" を表す。詳細は TechNet の mode コマンドリファレンスを参照。例えば、次の文字列はボーレート 1200、パリティなし、データビット 8、ストップビット 1 を指定する: baud=1200 parity=N data=8 stop=1
lpDCB : [var] lpDef が指すデバイス制御情報文字列から情報を受け取る DCB 構造体へのポインタ。この DCB 構造体は通信デバイスの制御設定を定義する。
lpCommTimeouts : [var] タイムアウト情報を受け取る COMMTIMEOUTS 構造体へのポインタ。

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

解説

デバイス定義文字列を適切なデバイス制御ブロックコードに変換し、デバイス制御ブロックに配置する。(Unicode)

[戻り値]
関数が成功した場合、戻り値はゼロ以外。関数が失敗した場合、戻り値はゼロ。拡張エラー情報を取得するには GetLastError を呼ぶ。

[備考]
BuildCommDCBAndTimeouts 関数は lpDef 内の "to={on|off}"
サブ文字列の有無に応じてタイムアウト設定の動作を変える:
(以下省略)

情報

プラグイン / モジュール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