2012-11-11 1 views
4

Windows에서 바탕 화면 배경 무늬를 변경하고 싶습니다 (차이가 있다면 7 점).루비를 사용하여 Windows 배경 화면 설정

내 시도가 실패했습니다. 내가 알 수있는 한 벽지, 레지스트리 키를 변경하거나 인쇄 '0'이외의 작업을 수행하지 않습니다.

require 'Win32API' 

SPI_SETDESKWALLPAPER = 20 
SPIF_UPDATEINIFILE = 0x1 
SPIF_SENDWININICHANGE = 0x2 

wallpaper_path = 'C:\\test.bmp' 

systemParametersInfo = Win32API.new('user32', 'SystemParametersInfo', ['I','I','P','I'], 'I') 
puts systemParametersInfo.call(SPI_SETDESKWALLPAPER, 0, wallpaper_path, SPIF_UPDATEINIFILE | SPIF_SENDWININICHANGE) 

2 시간 동안 Google 검색 결과가 나에게 알려지지 않았습니다. 어쩌면 여기 누군가가 도울 수 있습니다.

+0

실행하면 어떻게됩니까? – AnandVeeramani

+0

알아 낸 것이지만 도움을 주셔서 감사합니다. –

+0

해결책으로 답을 추가하십시오. – Ikaso

답변

0

제 친구는 다른 이미지를 사용하여 작동한다는 것을 알았습니다.

GIMP를 사용하여 .bmp 파일을 저장했습니다.이 파일은 기본 내보내기 옵션을 사용하는 경우 문제가 될 수 있습니다. 내보내기 할 때 "색 공간 정보를 쓰지 마십시오"를 선택하면 제대로 작동합니다.

코드가 결국 괜찮 았습니다.