最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

代碼修改win10主題色并與WallpaperEngine同步

2022-09-23 17:34 作者:克莉絲諾  | 我要投稿

未搜到相關(guān)教程,故自行研究。直接上代碼:https://github.com/Xrysnow/AccentColorSync

1. 代碼修改win10主題色

獲取主題色很簡單,使用 DwmGetColorizationColor 即可。但微軟沒有公開修改主題色相關(guān)的API,只能自己找。通過IDA分析dwmapi.dll,可以找到兩個相關(guān)的非公開API:

DwmpGetColorizationParameters(*)

DwmpSetColorizationParameters(*,BOOL)

其中指針參數(shù)指向的是一個結(jié)構(gòu)體,和注冊表中?HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\DWM 的一些值對應(yīng),具體見代碼。直接修改對應(yīng)的注冊表不會立即生效,需要重啟DWM,并非正確做法。

使用API后發(fā)現(xiàn)只有邊框顏色變了,查看注冊表發(fā)現(xiàn)還有一個AccentColor項需要修改,好在該項修改會立即生效,加入代碼即可。需要注意的是,若先調(diào)用API再修改AccentColor會使邊框變黑,反之則正常。

2. 與WallpaperEngine同步

WallpaperEngine雖然提供了修改主題色的功能,但只能設(shè)置一次,不好用。本文的目標(biāo)是在使用Personal Slideshow換圖的同時自動更新主題色。

由于基于網(wǎng)頁的壁紙在WallpaperEngine中是運行在CEF上的,所以可以在網(wǎng)頁腳本里進(jìn)行通信,讓另一個程序來換色。由于http請求會遇到跨域問題,故使用WebSocket通信,并用python編寫服務(wù)端。

程序大致流程如下:網(wǎng)頁壁紙換圖時將圖片路徑發(fā)給服務(wù)端 -> 服務(wù)端讀取圖片并計算主題色 ->?服務(wù)端設(shè)置系統(tǒng)主題色。

通過通信還可以實現(xiàn)更多更復(fù)雜的功能,例如和音樂/當(dāng)前程序/外部設(shè)備同步,把信息發(fā)送給壁紙顯示,實現(xiàn)桌面小組件等等。

本文僅針對win10進(jìn)行研究,在21H2版本上測試,其他版本的windows請自行研究。

代碼修改win10主題色并與WallpaperEngine同步的評論 (共 條)

分享到微博請遵守國家法律
元谋县| 吉安市| 成武县| 厦门市| 新和县| 大丰市| 阿拉善左旗| 六枝特区| 彩票| 确山县| 吉木乃县| 神池县| 赤水市| 忻城县| 共和县| 宜兰县| 丘北县| 曲麻莱县| 台江县| 新田县| 丰顺县| 清原| 福建省| 彰武县| 海晏县| 肇州县| 蓬溪县| 高平市| 图片| 惠州市| 新乡市| 通道| 石城县| 板桥市| 右玉县| 渝中区| 任丘市| 武安市| 乐安县| 和田县| 攀枝花市|