2009-11-29 2 views
0

C#의 SystemParametersInfo API에 문제가 있습니다. 나는 스크린 세이버 타임 아웃을 얻는 데 문제가 없지만 "로그온 화면 재개시"확인란을 선택하려고 할 때 나는 항상 을 얻는다..Windows 7 및 SPI_GETSCREENSAVERSECURE

[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); 
} 

결과는 항상 레지스트리를 통해 설정하는 것으로 나의 새로운 설정을 일으킬 것 때문에 내가 레지스트리 값이 1에서 0으로 변경 (하지만 레지스트리 값을 사용할 수 없습니다 보는가, 0이 될 것이다 로그 오프 후에 만 ​​처리됨).

값 14를 사용하여 화면 보호기 시간 초과 값을 검색 할 수 있습니다.

나는 이미 심판 부울심판 UINT에서 외부 함수를 다시 작성하는 것을 시도했다, 그러나 그것은 중요하지 않습니다.

저는 Windows 7 x64를 사용하고 있습니다. MSDN은 매개 변수 정보에 대한 내 소스입니다.
http://msdn.microsoft.com/en-us/library/ms724947(VS.85).asp

단서가 있습니까?

답변

2

SPI_GETSCREENSAVESECURE는 76이 아니라 0x76입니다.

+0

아, 118 세, whoooops! Thnx! – Zyphrax