ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

PowerToys 如何搭建 Visual Studio 开发环境并完成首次源码构建?

PowerToys 如何搭建 Visual Studio 开发环境并完成首次源码构建? PowerToys 如何搭建 Visual Studio 开发环境并完成首次源码构建【免费下载链接】PowerToysMicrosoft PowerToys is a collection of utilities that supercharge productivity and customization on Windows项目地址: https://gitcode.com/GitHub_Trending/po/PowerToys如果你已经拿到 PowerToys 的源码仓库想在自己的 Windows 机器上打开解决方案、跑通一次完整构建并且能定位构建失败的位置这篇文章就是给你准备的。按下面的顺序操作核对系统前提 → 安装 Visual Studio 及所需工作负载 → 克隆仓库并执行环境初始化脚本 → 在 Visual Studio 或命令行中构建 → 验证x64\Release\PowerToys.exe产物。整个过程依据仓库内 开发者文档 和 构建脚本指南。核对系统与工具链前提PowerToys 文档列出的前置条件如下构建前先逐项确认Windows 10 April 2018 Update1803或更高版本Visual Studio 2026推荐或 Visual Studio 2022 17.4并安装以下工作负载/组件Desktop development with CWinUI application development.NET desktop developmentWindows 11 SDK (10.0.22621.0)Windows 11 SDK (10.0.26100.3916).NET 8 SDKWindows 长路径支持已开启开发者文档要求开启方法见其引用的 Windows 文档链接。这些前提可以直接对照 doc/devdocs/readme.md 的 Prerequisites 一节核对。安装 Visual Studio 与所需工作负载文档提供两条路径任选其一路径 A用仓库内的 WinGet 配置文件自动安装文档推荐用于全新机器仓库根目录的.config目录带有 Visual Studio 的 WinGet 配置文件configuration.winget会自动安装带所需工作负载的 Visual Studio。选择与你 VS 版本匹配的文件例如configuration.vsProfessional.winget或configuration.vsEnterprise.wingetwinget configure .config\configuration.winget路径 B已有 Visual Studio手动补齐组件用 Visual Studio Installer 导入仓库根目录的 .vsconfig 文件安装全部所需工作负载。或者打开 PowerToys.slnx如果解决方案资源管理器面板出现install extra components对话框点击install即可补齐缺失组件。克隆仓库并执行环境初始化脚本先在 GitHub 上 Fork 仓库并克隆到本地。克隆完成后在仓库根目录PowerShell运行文档推荐的自动化环境脚本.\tools\build\setup-dev-environment.ps1setup-dev-environment.ps1 会依次执行四步开启 Windows 长路径支持需要管理员权限开启 Windows Developer Mode需要管理员权限从.vsconfig安装所需 Visual Studio 组件脚本会先检测 VS 安装路径交互提示是否立即调用 VS Installer 安装初始化 git 子模块等价于git submodule update --init --recursive。需要注意的副作用与前提脚本以管理员运行时直接写入注册表开启长路径和 Developer Mode非管理员运行时对应步骤会跳过并给出警告你需要手动以管理员身份再跑或手动开启这两项。第 3 步会启动 Visual Studio Installer安装前脚本提示先关闭正在运行的 Visual Studio。脚本是幂等的可重复运行用-Help查看全部选项-SkipLongPaths、-SkipDevMode、-SkipVSComponents、-SkipSubmodules可分别跳过对应步骤-VSInstallPath可手动指定 VS 安装路径。如果不想用脚本手动路径是打开PowerToys.slnx处理组件安装提示然后在仓库根目录执行git submodule update --init --recursive这是一次性步骤初始化前大部分模块无法编译。在 Visual Studio 中完成首次构建这是文档给出的主路径用 Visual Studio 打开 PowerToys.slnx在Solutions Configuration下拉菜单中选择Release或Debug从Build菜单选择Build Solution或按CtrlShiftB构建完成后PowerToys 二进制输出在仓库下的x64\Release\目录。构建完成后可直接运行x64\Release\PowerToys.exe验证无需安装 PowerToys。但文档明确说明PowerRename、ImageResizer、文件资源管理器扩展等模块在未构建并安装安装器的情况下不可用——如果你的目标是验证这些模块需要继续走安装器构建流程。命令行构建可选替代路径文档同时提供tools\build\下的脚本适合习惯命令行的迭代方式# 构建完整解决方案自动检测平台 .\tools\build\build.ps1 # 指定配置构建 .\tools\build\build.ps1 -Platform x64 -Configuration Release # 只构建 runner settings 等核心项目加快迭代 .\tools\build\build-essentials.ps1 # 构建安装器仅 Release 可用 .\tools\build\build-installer.ps1build.ps1 的-Platform缺省时自动检测宿主平台-Configuration缺省为Debug额外参数如/p:CIBuildtrue会原样转发给 MSBuild-RestoreOnly只执行 NuGet 还原。build-essentials.ps1 先对整个PowerToys.slnx还原 NuGet 包再只构建runner.vcxproj和PowerToys.Settings.csproj两个核心项目。build-installer.ps1是完整的本地打包管线还原、构建、签名 MSIX、WiX v5 MSI/bootstrapper并会清理installer/下部分输出完整本地打包才用它。Debugging 文档 还给出了不用脚本的裸 MSBuild 命令在 Developer Command Prompt for VS 中执行文档示例为 ARM64 平台msbuild -restore -p:RestorePackagesConfigtrue -p:PlatformARM64 -m PowerToys.slnx /tl /p:NuGetInteractivetrue文档给出的参考耗时全量构建约 13–14 分钟具体时间取决于机器性能。构建失败时查看哪里仓库构建脚本在失败时会把日志写到被构建解决方案/项目旁边见 BUILD-GUIDELINES.mdbuild.configuration.platform.all.log— 完整日志build.configuration.platform.errors.log— 仅错误build.configuration.platform.warnings.log— 仅警告build.configuration.platform.trace.binlog— 可用 MSBuild Structured Log Viewer 打开如果构建报缺图片文件.png、.ico等资源之类的错误文档判断这是构建状态损坏处理顺序为在 Visual Studio 中 Build Clean Solution或命令行执行msbuild PowerToys.slnx /t:Clean /p:Platformx64 /p:ConfigurationDebug删除仓库根目录下的x64/、ARM64/、Debug/、Release/、packages/输出目录这是删除构建产物不影响源码重新构建。仓库也提供了对应的清理脚本它会执行 MSBuild Clean 并删除上述目录加-SkipMSBuildClean可只删目录.\tools\build\clean-artifacts.ps1清理后用如下命令重新构建msbuild -restore -p:RestorePackagesConfigtrue -p:Platformx64 -m PowerToys.slnx另一个常见坑构建脚本会先尝试 DevShellMicrosoft.VisualStudio.DevShell.dll/Enter-VsDevShell再回退VsDevCmd.bat来初始化 VS 环境如果脚本找不到 VS改用 Developer PowerShell for VS 启动终端或确认Program Files (x86)\Microsoft Visual Studio\Installer下存在vswhere.exe。构建之后的限制与下一步直接运行x64\Release\PowerToys.exe时依赖安装器注册的模块PowerRename、ImageResizer、文件资源管理器扩展等不可用要覆盖这些模块需构建安装器且安装器只能在Release模式下编译build-installer.ps1仅 Release。要在 Visual Studio 中调试文档建议把runner项目设为启动项目调试 FancyZones、Shortcut Guide 等涉及提权窗口的场景时建议以管理员权限运行 Visual Studio。详见 Debugging。后续要写自己的 PowerToy 模块继续阅读 Creating a New PowerToy编码规范见 Coding Guidelines。【免费下载链接】PowerToysMicrosoft PowerToys is a collection of utilities that supercharge productivity and customization on Windows项目地址: https://gitcode.com/GitHub_Trending/po/PowerToys创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表