2012-02-20 3 views
2

배경을 변경하고 로그 아웃 한 프로그램을 가진 사람이 컴퓨터에서 일하는 것을 보았습니다 (변경 사항이 적용됨). "소스 코드. 나는 그것을 할 수있는 코드를 잠시 동안보고 있었으므로 그것을 실험 할 수있었습니다. ,C++로 Windows 7 배경 화면 변경

는이 코드가 동일한 폴더에 위치한 이미지로 두 번했다

(C++)

#include <windows.h> 
int main() 
{ 
    SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, (PVOID)"image.jpg", SPIF_UPDATEINIFILE); 
} 
종류의 일

를 .. 발견, 나는 두 이미지를 테스트 두 번째 이후에는 작업이 중단되었습니다.

나는 왜 내가 멈추지 않았는 지 알아낼 수 없다. (나는 여러개의 파일 확장자를 시험해 봤다.

저는 Dev-C++에서 일하고 있습니다.

또한 로컬 이미지 대신 URL을 사용하도록 코드를 수정하고 싶습니다 ... 가능합니까?

감사합니다.

편집 : image.jpgimage.bmp으로 변경하면 매번 바뀝니다.하지만 이는 *.bmp에서만 작동한다는 의미입니까? 이전에 jpeg로 작업했습니다.

+0

시도의 배경 정보 http://technet.microsoft.com/en-us/sysinternals/bb897557 – ixe013

+0

당신이 URL을 지정하는 경우, 당신이 먼저 다운로드해야합니다. – ixe013

+0

마지막 편집과는 달리 현재 어떤 이미지로도 작업하는 것처럼 보입니다. URL을 다운로드하여 무엇을 의미하는지 지정할 수 있습니까? 내가 설정하고 싶은 이미지 에서처럼? '* .exe '가있는 곳에있는 * .bmp 파일을 필요로하지 않고 여러 컴퓨터에서'* .exe' 파일 만 사용할 수 있도록 URL 자체에서 이미지를 가져올 수 있기를 바랍니다. . –

답변

0
#include <windows.h> 
int main() 
{ 
int i; 
for(i=0;;i++) 
{ 
    Sleep(800); 
    if(i%2==0) 
    { 
    const wchar_t *filenm = L"C:\\Pictures\\image1.jpg"; //ADDRESS of first image 
    bool isWallSet=SystemParametersInfoW(SPI_SETDESKWALLPAPER, 0,(void*)filenm,SPIF_UPDATEINIFILE); 
    } 
    else 
    { 
    const wchar_t *filenm = L"C:\\Pictures\\image2.jpg"; //ADDRESS of second image 
    bool isWallSet=SystemParametersInfoW(SPI_SETDESKWALLPAPER, 0,(void*)filenm,SPIF_UPDATEINIFILE); 
    } 
} 
    return 0; 
}