電源を落としてシステムをサスペンドする。ForceFlag パラメータに応じて、即座にサスペンドするか、すべてのアプリケーションとデバイスドライバから許可を得てからサスペンドする。
SetSystemPowerState fSuspend, fForce
fSuspend : [int] TRUE の場合システムをサスペンドする。FALSE の場合システムを休止状態にする。 fForce : [int] このパラメータは何も影響しない。
(プラグイン / モジュール : kernel32.dll)
電源を落としてシステムをサスペンドする。ForceFlag パラメータに応じて、即座にサスペンドするか、すべてのアプリケーションとデバイスドライバから許可を得てからサスペンドする。 [戻り値] 電源がサスペンドされ、その後復帰した場合、戻り値は 0 以外となる。サスペンドされなかった場合、戻り値は 0 となる。拡張エラー情報を取得するには GetLastError を呼ぶ。 [備考] 呼び出し側プロセスは SE_SHUTDOWN_NAME 特権を持っている必要がある。SE_SHUTDOWN_NAME 特権を有効にするには AdjustTokenPrivileges 関数を使う。詳細は Changing Privileges in a Token を参照。いずれかのアプリケーションやドライバがサスペンド操作を拒否した場合、本関数は各アプリケーション・ドライバに PBT_APMQUERYSUSPENDFAILED イベントをブロードキャストする。電源がサスペンドされた場合、本関数はシステムの動作が再開し関連する WM_POWERBROADCAST メッセージがすべてのアプリケーション・ドライバに配送された後に戻る。本関数は SetSuspendState 関数に類似する。本関数を使うアプリケーションをコンパイルするには _WIN32_WINNT マクロを 0x0400 以上に定義する。詳細は Using the Windows Headers を参照。
| プラグイン / モジュール | kernel32.dll |
| バージョン | 1.0 |
| 作成日 | 2026/04/16 |
| 著作者 | IronHSP / CsWin32 bridge |
| URL | https://github.com/inovia/IronHSP |
| 備考 | Win32 API の kernel32.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。 |
| タイプ | 拡張命令 |
| グループ | Win32API |
| 対応環境 |
|
| hs ファイル | hsphelp\win32_kernel32_gen2.hs |