CreateDCW

CreateDC 関数は、指定した名前のデバイス用にデバイスコンテキスト (DC) を作成する。(Unicode)

CreateDCW pwszDriver, pwszDevice, pszPort, pdm

pwszDriver : [wstr] DISPLAY または特定のディスプレイデバイス名を指定する null 終端文字列へのポインタ。印刷の場合、GDI はプリンタデバイスでは lpszDriver を無視するため、NULL を渡すことを推奨する。
pwszDevice : [wstr] プリントマネージャーで表示される、使用中の出力デバイスの名前(例:Epson FX-80)を指定する null 終端文字列へのポインタ。プリンターのモデル名ではない。lpszDevice パラメータは必ず使わなければならない。ディスプレイの有効な名前を取得するには EnumDisplayDevices を呼ぶ。lpszDriver が DISPLAY または特定のディスプレイデバイスのデバイス名の場合、lpszDevice は NULL かそのデバイス名と同じでなければならない。lpszDevice が NULL の場合、プライマリディスプレイデバイス用の DC が作成される。システムに複数のモニターがある場合、CreateDC(TEXT("DISPLAY"),NULL,NULL,NULL) を呼ぶとすべてのモニターをカバーする DC が作成される。
pszPort : [wstr] このパラメータは無視され、NULL に設定するべきである。16 ビット Windows との互換性のためだけに用意されている。
pdm : [var] デバイスドライバ向けのデバイス固有初期化データを含む DEVMODE 構造体へのポインタ。DocumentProperties 関数は、指定したデバイス用に値が設定されたこの構造体を取得する。デバイスドライバがユーザー指定のデフォルト初期化(あれば)を使うべき場合、pdm パラメータは NULL でなければならない。lpszDriver が DISPLAY の場合、pdm は NULL でなければならない。GDI はディスプレイデバイスの現在の DEVMODE を使う。

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

解説

CreateDC 関数は、指定した名前のデバイス用にデバイスコンテキスト (DC) を作成する。(Unicode)

[戻り値]
関数が成功した場合、戻り値は指定したデバイス用 DC へのハンドルとなる。関数が失敗した場合、戻り値は NULL となる。

[備考]
DC へのハンドルは同時に 1 つのスレッドからしか使用できないことに注意。lpszDriver と lpszDevice
パラメータについては、ディスプレイの有効な名前を取得するには EnumDisplayDevices を呼ぶ。DC が不要になったら
DeleteDC を呼ぶ。lpszDriver または lpszDevice が DISPLAY の場合、CreateDC
を呼んだスレッドが作成された HDC を所有する。このスレッドが破棄されると HDC は無効になる。よって HDC
を作成して別スレッドへ渡し、最初のスレッドを終了させると、2 番目のスレッドはその HDC を使用できない。CreateDC
でディスプレイデバイス用 HDC を作成する場合、pdm には NULL か、lpszDevice が指定するディスプレイデバイスの現在の
DEVMODE と一致する DEVMODE へのポインタを渡さなければならない。NULL を渡し、現在のディスプレイデバイスの
DEVMODE と完全に一致させようとしないことを推奨する。CreateDC でプリンタデバイス用 HDC
を作成する場合、プリンタドライバが DEVMODE を検証する。プリンタドライバが DEVMODE
を無効と判断した場合(プリンタドライバが DEVMODE を変換または使用できない場合)、プリンタドライバはデフォルトの DEVMODE
を提供して HDC を作成する。ICM: ICM を有効にするには、pInitData パラメータが指す DEVMODE 構造体の
dmICMMethod メンバを適切な値に設定する。

情報

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