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

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

百度网盘链接


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

WPF 框架全构建环境虚拟机硬盘分享_编程语言

或者可以尝试使用磁力链接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=x86​​​ 在 ​​artifacts\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/ 欢迎大家访问,里面有很多新的博客。

如果在博客看到有任何不懂的,欢迎交流,我搭建了 dotnet 职业技术学院 欢迎大家加入


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