У меня проблема с API-интерфейсом SystemParametersInfo в C #. У меня нет проблем с получением тайм-аута заставки, но когда я пытаюсь получить состояние флажка «При возобновлении отображения экрана входа», я всегда получаю false .
[DllImport("user32.dll", EntryPoint = "SystemParametersInfo")]
private static extern bool SystemParametersInfo(uint uiAction, uint uiParam, ref uint pvParam, uint fWinIni);
public void Test() {
uint result = 0;
SystemParametersInfo(76, 0, ref result, 0);
}
Результат всегда будет равен 0, однако я вижу, что значение реестра изменяется с 1 на 0 (но я не могу использовать значение реестра, поскольку его установка через реестр приведет к тому, что мои новые параметры будут обработаны только после выхода ).
Вы можете использовать значение 14 для получения значения времени ожидания заставки.
Я уже пытался переписать внешнюю функцию с ref uint на ref bool , но это не имеет значения.
Я использую Windows 7 x64. MSDN - мой источник информации о параметрах:
http://msdn.microsoft.com/en-us/library/ms724947(VS.85).asp
У кого-нибудь есть подсказка?