C# 编写小巧快速的 Windows 动态桌面软件
支持视频播放(目前使用的 WPF 框架内置的 MediaElement 播放视频仅支持 .mp4, .mov 视频文件,后面增加其他播放引擎) 支持 URL 和网页文件 支持启动后自动播放 支持设置显示器 支持自动暂停播放
GIF 和 APNG 播放 Live2D 播放 使用鼠标和桌面交互 屏幕保护程序 更多视频格式
使用技术
使用到了 WinForms, WPF, WebView2, Native 等技术,各取其优点来实现项目功能
WinForms: 创建菜单简单,方便处理 Windows 消息 WPF: 使用了内置媒体播放功能,播放 .mp4 文件够了。其他播放引擎运行时太大 WebView2: 和 CefSharp 比较 WebView2 有 Edge 加持不需要携带一个巨大的运行时,而且安装简单下载速度也快有微软 CDN 加速 Native: C# P/Invoke 支持的很完善,但是如果需要调用大量 Windows API。还是使用 C++ 写比较简单,然后提供接口 C 接口给 C# 调用
动态桌面软件原理
如果能把一个窗口放在桌面背景桌面图标之间,然后在自己的这个窗口播放视频或者动画,桌面就有动态效果了。
作者 Gerald Degeneve 的一篇博客 Draw Behind Desktop Icons in Windows 8+ 详细描写了在桌面图标下面绘制一个窗口的方法。
转自:he55
链接:cnblogs.com/he55/p/15687219.html
评论