感覺(jué)讓自己的桌面動(dòng)起來(lái)非常屌,使用其他的軟件不是這收費(fèi)就是下載不了,沒(méi)法設(shè)置。首先看windows窗體查看工具spy++查看windows桌面如圖我們需要把我們的窗體,我們只要將我們的窗體放在第二WorkerW下即可。 接下來(lái)我們使用vs創(chuàng)建一個(gè)windfrom窗體應(yīng)用程序。 先了解一下基礎(chǔ)知識(shí),在C#中,我們不能直接獲取窗口控件的句柄,因?yàn)镃#是托管語(yǔ)言,不直接支持低級(jí)別的Windows API函數(shù)。但是,我們可以使用一種叫做P/Invoke(Platform Invocation Service)的技術(shù),通過(guò)它我們可以調(diào)用Windows API函數(shù)。 如果你想要獲取窗口的句柄,可以使用 我們創(chuàng)建一個(gè)Utils的類,實(shí)現(xiàn)查找窗口句柄需要需要的方法如下: 我們創(chuàng)建的窗體在Load方法中就可以直接調(diào)用:Utils.GetWorkerW()和Utils.SetWinParent()兩個(gè)方法就可以將窗體設(shè)置為桌面?,F(xiàn)在設(shè)置的桌面是什么東西都沒(méi)有,那么怎么讓它動(dòng)起呢,一種是直接播放一個(gè)視頻添加一個(gè)windows media player控件,直接播放視頻。另外一種我們可以使用瀏覽器在使用h5中video在播放視頻或者使用css來(lái)寫(xiě)一下特效,可玩性會(huì)更高。 在nuget中搜索Microsoft.Web.WebView2安裝到項(xiàng)目中,Microsoft.Web.WebView2是一個(gè)允許你將Web技術(shù)(HTML、CSS和JavaScript)嵌入到本機(jī)應(yīng)用中的控件。它使用Microsoft Edge作為呈現(xiàn)引擎來(lái)顯示W(wǎng)eb內(nèi)容。WebView2可以讓你在本機(jī)應(yīng)用的不同部分嵌入Web代碼,或在單個(gè)WebView實(shí)例中生成所有本機(jī)應(yīng)用。使用WebView2,你可以快速創(chuàng)新Web開(kāi)發(fā)并允許快速部署和迭代。代碼共享可以增加跨多個(gè)平臺(tái)的重用,而Microsoft提供支持并添加新功能,以幫助你固定版本分布并選擇在應(yīng)用中打包特定版本的Chromium位。你還可以使用WebView2來(lái)添加Web組件到應(yīng)用中。要開(kāi)始使用WebView2控件生成和測(cè)試應(yīng)用,你需要安裝WebView2 SDK。 在windows11或者windows10中已經(jīng)有edfe瀏覽器,但是并不是每個(gè)人的電腦都有,我們最好把它放在我們項(xiàng)目中,在官網(wǎng)下載Microsoft.WebView2.FixedVersionRuntime.119.0.2151.58.x86,初始化項(xiàng)目設(shè)置所在路徑,我放在WebView,同時(shí)設(shè)置瀏覽器充滿整個(gè)屏幕。 接下來(lái)設(shè)置訪問(wèn)本地html文件即可。 編寫(xiě)一個(gè)index.html文件效果如圖:使用video播放bg.mp4視頻文件,在右上角顯示一個(gè)3d時(shí)鐘。 這種桌面后效果: 現(xiàn)在需要優(yōu)化的地方還有很多,不能實(shí)時(shí)切換,因?yàn)樵趇ndex.html我們寫(xiě)死了bg.mp4視頻地址,需要找些喜歡的視頻作為壁紙的話更換了bg.mp4,需要使用cmd 執(zhí)行taskkill /f /t /im WindWallpaper.exe ,重新啟動(dòng)應(yīng)用。如果需要的更換打開(kāi)運(yùn)行,輸入shell:startup,回車,也可以快速打開(kāi)啟動(dòng)文件夾。創(chuàng)建一個(gè)啟動(dòng)的快捷方式,把快捷方式放到啟動(dòng)文件夾,開(kāi)機(jī)之后就會(huì)自動(dòng)啟動(dòng)。 由于我們是使用瀏覽器作為窗口并播放視頻,所以我們就可以發(fā)揮想象可以使用css寫(xiě)一下比較大氣的時(shí)鐘、日歷、天氣等信息,這個(gè)就請(qǐng)各位大佬發(fā)揮想象了。 |
|