现在 WPF 完全开源了,咱可以构建自己私有的版本。我分享一个虚拟机硬盘给你,只要你下载下来,通过 VMWare 导入,即可无需任何配置,拿到一个能构建 WPF 官方源代码的全构建环境。可以用来只做你的定制版的 WPF 框架

现在 WPF 完全开源,但是构建的过程中需要用到很多工具,这些工具和 VS 环境相对来说需要一段时间才能拉下来,再加上每个小伙伴有趣的定制,也许会忘记安装复杂的 C++ 环境。因此我就拜托了太子帮我做一个虚拟机,我在虚拟机里面添加了 WPF 框架的全构建环境,同时构建 WPF 源代码通过之后,将硬盘保存起来,只需要 VMWare 导入此硬盘即可拿到全构建环境

百度网盘链接

链接:https://pan.baidu.com/s/1_p5xdtG1wayI7tzqGfCL2w

提取码:gk99

如果百度下载太慢,可以尝试开启 P2P 模式:

或者可以尝试使用磁力链接1磁力链接2 用 BT 软件下载

在 VMWare 最新版本,版本最低是 15.5 版本,导入虚拟机硬盘,然后启动虚拟机。此时将会打开一个 win10 系统,这个系统里面将包含社区版的 VS 以及构建 WPF 需要的工具包。如需独立下载 WPF 构建套件,请点击 WPF 构建套件 .tools 3.1.7z 下载完成之后解压缩文件到 WPF 仓库的 .tools 文件夹里面

这个系统的用户名是 dotnet-wpf 密码是 wpf 进入之后,里面仅有 WPF 源代码和构建环境

完全的 WPF 仓库放在 C:\Code\WPF 这个仓库已经构建通过

构建命令是 build.cmd -pack -ci -configuration Release -prepareMachine /p:Platform=x86artifacts\packages\Release 文件夹可以找到构建完成输出文件

附磁力链接地址,如第一个用户找不到,可以添加 torrent.walterlv.com:36690 用户

// 磁力链接1 纯硬盘文件 58G 文件

magnet:?xt=urn:btih:6B489EEDA460298F10498D13C48D9B46FE175F1D&dn=Windows_10_x64_for_WPF&tr=http%3a%2f%2ftorrent.walterlv.com%3a36690%2fannounce&tr=udp%3a%2f%2ftracker.opentrackr.org%3a1337%2fannounce&tr=http%3a%2f%2fp4p.arenabg.com%3a1337%2fannounce&tr=http%3a%2f%2ftracker3.itzmx.com%3a6961%2fannounce&tr=http%3a%2f%2ftracker1.itzmx.com%3a8080%2fannounce&tr=http%3a%2f%2ftracker.zerobytes.xyz%3a1337%2fannounce&tr=http%3a%2f%2ftracker.nyap2p.com%3a8080%2fannounce&tr=http%3a%2f%2fopentracker.i2p.rocks%3a6969%2fannounce&tr=http%3a%2f%2fh4.trakx.nibba.trade%3a80%2fannounce&tr=udp%3a%2f%2fexplodie.org%3a6969%2fannounce&tr=http%3a%2f%2fvps02.net.orel.ru%3a80%2fannounce&tr=http%3a%2f%2ftrun.tom.ru%3a80%2fannounce&tr=http%3a%2f%2ftracker2.dler.org%3a80%2fannounce&tr=http%3a%2f%2ftracker.yoshi210.com%3a6969%2fannounce&tr=http%3a%2f%2ftracker.ygsub.com%3a6969%2fannounce&tr=http%3a%2f%2ftracker.sloppyta.co%3a80%2fannounce&tr=http%3a%2f%2ftracker.skyts.net%3a6969%2fannounce&tr=http%3a%2f%2ftracker.lelux.fi%3a80%2fannounce&tr=http%3a%2f%2ftracker.gbitt.info%3a80%2fannounce&tr=http%3a%2f%2ftracker.dler.org%3a6969%2fannounce&tr=http%3a%2f%2ftracker.bt4g.com%3a2095%2fannounce&tr=http%3a%2f%2ft3.leech.ie%3a80%2fannounce&tr=http%3a%2f%2ft2.leech.ie%3a80%2fannounce&tr=http%3a%2f%2ft1.leech.ie%3a80%2fannounce&tr=http%3a%2f%2ft.overflow.biz%3a6969%2fannounce&tr=http%3a%2f%2ft.nyaatracker.com%3a80%2fannounce&tr=http%3a%2f%2fretracker.sevstar.net%3a2710%2fannounce&tr=http%3a%2f%2fpow7.com%3a80%2fannounce&tr=http%3a%2f%2fopen.acgtracker.com%3a1096%2fannounce&tr=http%3a%2f%2fopen.acgnxtracker.com%3a80%2fannounce&tr=http%3a%2f%2fmail2.zelenaya.net%3a80%2fannounce&tr=http%3a%2f%2faaa.army%3a8866%2fannounce&tr=http%3a%2f%2ftracker4.itzmx.com%3a2710%2fannounce&tr=http%3a%2f%2ftracker2.itzmx.com%3a6961%2fannounce&tr=http%3a%2f%2ftracker.shittyurl.org%3a80%2fannounce&tr=http%3a%2f%2ft.acg.rip%3a6699%2fannounce

// 磁力链接2 压缩档 7z 压缩 22G 文件

magnet:?xt=urn:btih:2580F4E5E2B56FEC2B64B48585B6F9DD8B9D1B76&dn=Windows_10_x64_for_WPF.7z&tr=http%3a%2f%2ftorrent.walterlv.com%3a36690%2fannounce&tr=udp%3a%2f%2ftracker.opentrackr.org%3a1337%2fannounce&tr=http%3a%2f%2fp4p.arenabg.com%3a1337%2fannounce&tr=http%3a%2f%2ftracker3.itzmx.com%3a6961%2fannounce&tr=http%3a%2f%2ftracker1.itzmx.com%3a8080%2fannounce&tr=http%3a%2f%2ftracker.zerobytes.xyz%3a1337%2fannounce&tr=http%3a%2f%2ftracker.nyap2p.com%3a8080%2fannounce&tr=http%3a%2f%2fopentracker.i2p.rocks%3a6969%2fannounce&tr=http%3a%2f%2fh4.trakx.nibba.trade%3a80%2fannounce&tr=udp%3a%2f%2fexplodie.org%3a6969%2fannounce&tr=http%3a%2f%2fvps02.net.orel.ru%3a80%2fannounce&tr=http%3a%2f%2ftrun.tom.ru%3a80%2fannounce&tr=http%3a%2f%2ftracker2.dler.org%3a80%2fannounce&tr=http%3a%2f%2ftracker.yoshi210.com%3a6969%2fannounce&tr=http%3a%2f%2ftracker.ygsub.com%3a6969%2fannounce&tr=http%3a%2f%2ftracker.sloppyta.co%3a80%2fannounce&tr=http%3a%2f%2ftracker.skyts.net%3a6969%2fannounce&tr=http%3a%2f%2ftracker.lelux.fi%3a80%2fannounce&tr=http%3a%2f%2ftracker.gbitt.info%3a80%2fannounce&tr=http%3a%2f%2ftracker.dler.org%3a6969%2fannounce&tr=http%3a%2f%2ftracker.bt4g.com%3a2095%2fannounce&tr=http%3a%2f%2ft3.leech.ie%3a80%2fannounce&tr=http%3a%2f%2ft2.leech.ie%3a80%2fannounce&tr=http%3a%2f%2ft1.leech.ie%3a80%2fannounce&tr=http%3a%2f%2ft.overflow.biz%3a6969%2fannounce&tr=http%3a%2f%2ft.nyaatracker.com%3a80%2fannounce&tr=http%3a%2f%2fretracker.sevstar.net%3a2710%2fannounce&tr=http%3a%2f%2fpow7.com%3a80%2fannounce&tr=http%3a%2f%2fopen.acgtracker.com%3a1096%2fannounce&tr=http%3a%2f%2fopen.acgnxtracker.com%3a80%2fannounce&tr=http%3a%2f%2fmail2.zelenaya.net%3a80%2fannounce&tr=http%3a%2f%2faaa.army%3a8866%2fannounce&tr=http%3a%2f%2ftracker4.itzmx.com%3a2710%2fannounce&tr=http%3a%2f%2ftracker2.itzmx.com%3a6961%2fannounce&tr=http%3a%2f%2ftracker.shittyurl.org%3a80%2fannounce&tr=http%3a%2f%2ft.acg.rip%3a6699%2fannounce

如不知道如何使用磁力链接…… 请使用百度网盘,如百度网盘链接炸了,请发邮件给我

一些问答

是不是在 2020 我才可以看到 WPF 的源代码,之前不可以?

答: 不是的,在 2016 的时候 WPF 就开放了源代码,但开放源代码不等于开源,仅仅只是让你可以看到源代码

仅开放源代码是不是不能构建通过?

答:也可以,在 2017 的时候德熙魔改一点代码构建通过了,也做了私有的版本。但因为我的技术有限,此时的私有版本必须依赖原有的 WPF 框架

现在 WPF 是否完全开源?

答:是的,全部框架代码以及构建方法完全开源。现在是 2020.07 官方关于测试部分还没有完全开源,但是测试部分不影响咱构建私有版本

是否可以基于 WPF 开发自己的 UI 框架?

答:是的,没有任何法务问题。可以改现有的 WPF 框架作为自己的私有的 UI 框架,同时这个 UI 框架你可以对外发布获取商业价值。仅有一点不能做的是在这个 UI 框架上面声明微软相关商标

现在WPF是否属于微软的?

答:不是的,现在 WPF 属于 dotnet 基金会,微软只是其中一个成员。其实咱很难理解微软的做法,辛苦开发了这么久的框架,就完全开源出去了,属权也让出去了

如果添加了自己的代码的私有版本,是否后续难以维护?

答:如果是小功能,或独立模块,之后合并官方的更改难度不大。如果你还能提回官方的话,那就更好了

为什么我提到官方的 MR 还没有被合并,是不是 WPF 不维护了?

答:不是的,如上面的回答,现在 WPF 的测试部分还没有开源。在测试没有准备好之前,来自社区的 PR 暂时只合并没有 IL 更改的代码。官方没有合并代码不意味着你不能使用你的代码,依然可以构建自己的私有版本


本文会经常更新,请阅读原文: https://blog.lindexi.com/post/WPF-%E6%A1%86%E6%9E%B6%E5%85%A8%E6%9E%84%E5%BB%BA%E7%8E%AF%E5%A2%83%E8%99%9A%E6%8B%9F%E6%9C%BA%E7%A1%AC%E7%9B%98%E5%88%86%E4%BA%AB.html ,以避免陈旧错误知识的误导,同时有更好的阅读体验。

如果你想持续阅读我的最新博客,请点击 RSS 订阅,推荐使用RSS Stalker订阅博客,或者前往 CSDN 关注我的主页

知识共享许可协议 本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。欢迎转载、使用、重新发布,但务必保留文章署名林德熙(包含链接: https://blog.lindexi.com ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请 与我联系

以下是广告时间

推荐关注 Edi.Wang 的公众号