何か不足していますか?ユーザー モード プロセスから、Vista ラップトップで次のコードを実行します。
BOOL bSecure = -100;
if(::SystemParametersInfo(SPI_GETSCREENSAVESECURE, NULL, &bSecure, 0))
{
int success = 1;
}
目的は、「再開時にログオン画面を表示する」スクリーンセーバー設定を取得することです (以下の赤丸で囲んだ部分)。
SystemParametersInfo
成功しますがbSecure
、変更されません。
信じられないかもしれませんが、VS デバッガーのスクリーンショットを次に示します。
さらにデバッグすると、他のコンピューターで成功したときにSystemParametersInfo
実際に返されることがわかりました。HRESULT を返すことになっていないと思っていましたか?0xC0000002
1
とにかく、質問 - この設定を確実に取得する方法は?