guohan zhao
guohan zhao

Reputation: 1

SystemParametersInfo() settings failed to activate the screensaver,error code = 329

During the Windows login process, I try to activate the screensaver:

ret = SystemParametersInfo(SPI_SETSCREENSAVEACTIVE, state, NULL, 0);

When I use GetLastError(), it returns 329; I found on MSDN:

If the machine has entered power saving mode or system lock state, an ERROR_OPERATION_IN_PROGRESS exception occurs.

So I change the code:

int loopNum = 10;
do{
    ret = SystemParametersInfo(SPI_SETSCREENSAVEACTIVE, state, NULL, 0);
    if(!ret){
loginfo("[set_screensave_active] set screensave active status to 1 failed, gle = %d",Getlasterror());
}
    Sleep(1000);
}
while(loopNum--);

I'm sure that Windows login takes a short time.

This code is triggered when I login to Windows. Sometimes the error 329 is reported, all 10 times the loop fails!

The logs are as follows:

2022-03-08 08:58:33 [12120/14436] [WARN] [set_screensave_active] set screensave active status to 1 failed, gle 329

2022-03-08 08:58:34 [12120/14436] [WARN] [set_screensave_active] set screensave active status to 1 failed, gle 329

2022-03-08 08:58:35 [12120/14436] [WARN] [set_screensave_active] set screensave active status to 1 failed, gle 329

2022-03-08 08:58:36 [12120/14436] [WARN] [set_screensave_active] set screensave active status to 1 failed, gle 329

2022-03-08 08:58:37 [12120/14436] [WARN] [set_screensave_active] set screensave active status to 1 failed, gle 329

2022-03-08 08:58:38 [12120/14436] [WARN] [set_screensave_active] set screensave active status to 1 failed, gle 329

2022-03-08 08:58:39 [12120/14436] [WARN] [set_screensave_active] set screensave active status to 1 failed, gle 329

2022-03-08 08:58:40 [12120/14436] [WARN] [set_screensave_active] set screensave active status to 1 failed, gle 329

2022-03-08 08:58:41 [12120/14436] [WARN] [set_screensave_active] set screensave active status to 1 failed, gle 329

2022-03-08 08:58:42 [12120/14436] [WARN] [set_screensave_active] set screensave active status to 1 failed, gle 329

In 8:58:33, I began to logon the Win10.And, In 8:58:35, I logined the Win10.The API SystemParametersInfo is called every second for ten seconds. After 8:58:36, the system was not in lock states. But SystemParametersInfo also return error code 329.

Upvotes: 0

Views: 201

Answers (0)

Related Questions