close

原本我用的換桌布程式碼如下:

const int SPI_SETDESKWALLPAPER = 0x0014;

const int SPIF_SENDWININICHANGE = 0x02;

string wallpaperPath = ""; // write your path

SystemParametersInfo( SPI_SETDESKWALLPAPER, 0, wallpaperPath, SPIF_SENDWININICHANGE );

 

但在驗證程式功能的時候發現

上面這種寫法桌布換是換了

但對應的registry位置卻沒有更動 (Computer\HKEY_CURRENT_USER\Control Panel\Desktop\WallPaper)

重開機之後還是會回復成registry原本指向的桌面

 

後來換了以下寫法就沒問題了

對應的registry位置也會變成我指定的桌布圖片位置

 const int SPIF_UPDATEINIFILE = 0x01;
 const int SPIF_SENDWININICHANGE = 0x02;

 SystemParametersInfo( SPI_SETDESKWALLPAPER, 0, wallpaperPath, SPIF_UPDATEINIFILE | SPIF_SENDWININICHANGE );

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 iam9527 的頭像
    iam9527

    翁丸的育兒筆記

    iam9527 發表在 痞客邦 留言(0) 人氣()