スクリーンセイバーが起動か、ディスプレイがオフになった時に、実行したいコードがある

実現したいこと

VisualStudio C++で開発しています。
スクリーンセイバーが起動か、ディスプレイがオフになった時に、実行したいコードがあります。

発生している問題・分からないこと

状態を判定するためのコードが分かりません。
教えてください。

試したこと・調べたこと

上記の詳細・結果

ググってみましたが、キーワードが悪いのか、解決に至りませんでした。
例えば「VisualStudio  "C++" スクリーンセーバー起動 検知」でググってみたのですが、
スクリーンセイバーを抑制するとか、設定を変えるとか、実行するとかの記事ばかりで、わかりませんでした。

下記のソースを書いてみましたが、コンソールに何も表示されませんでした。

C++

1#include <Windows.h>2#include <stdio.h>3 4int main(void)5{6 bool fResult = true;7 bool pvParam = true;8 9 while (true)10 {11 fResult = SystemParametersInfoA(12 SPI_GETSCREENSAVEACTIVE,13 0,14 &pvParam,15 016 );17 if (!pvParam)18 {19 printf("スクリーンセイバーが起動しました。\n");20 }21 }22 23}

補足

Microsoft Visual Studio Community 2022
Version 17.9.6
VisualStudio.17.Release/17.9.6+34728.123

コメントを投稿

0 コメント