【问题标题】:Windows 10 / 8 start menu tile icon size for classic WPF desktop applications适用于经典 WPF 桌面应用程序的 Windows 10 / 8 开始菜单磁贴图标大小
【发布时间】:2019-02-02 00:34:01
【问题描述】:

我实际上想知道如何控制在 Windows 10 开始菜单中作为磁贴快捷方式出现的“经典”WPF 应用程序的图标大小(或通常:使用哪个图标?)。

我只发现很少有像this one on SO 这样的帖子,但得到的唯一答案是,相应的机制仅适用于“现代”Windows 应用程序。就活动磁贴和基于清单的定义而言,这可能是正确的。

但是,必须有一种触发“更大”图标的方法。具体示例:我构建了一个 WPF 应用程序,当固定到开始菜单时,它只显示一个小图标。这是所有“经典”应用程序的情况 - 请参阅'Orca.exe' db editor 快捷方式的附件图像。我确实相信有一种方法可以实现更大的图标,因为我注意到 Mozilla Thunderbird 应用程序(这是一个“经典”应用程序)显示为 this one(自定义背景颜色和大图标大小)。

有没有人知道如何实现这一目标并可以分享他的知识?我已经从可执行文件/快捷方式中提取了使用过的图标并进行了比较,但两者都只提供最大 256px 的标准图标大小,没有区别。

谢谢!

【问题讨论】:

  • @magicandre1981 谢谢,但我很好奇如何在不创建商店包的情况下实现这一点 - 关于我描述的示例,这必须以某种方式实现..
  • there is a tool 为经典程序创建高分辨率的磁贴

标签: wpf windows-10 icons tiles startmenu


【解决方案1】:

这实际上非常简单,但我记得自己很难找到文档(或意识到这对于“经典”应用程序非常有效):

参考:MS docs - How to customize Start screen tiles for desktop apps

您可以使用名为 [Software].VisualElementsManifest.xml 的 xml 文件控制开始菜单图块的描述行为和外观,其中 [Software] 必须替换为 .exe 的名称文件(无扩展名),例如thunderbird.VisualElementsManifest.xml。正如您已经提到的,您可以查看 Thunderbird 文件夹以获取其内容的工作示例。基本上是这样的:

<Application xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>
  <VisualElements
    ShowNameOnSquare150x150Logo='on'
    Square150x150Logo='VisualElements\VisualElements_150.png'
    ForegroundText="dark"
    BackgroundColor="#FF0000"/>
</Application>

您甚至可以通过创建适当的资源文件来提供额外的选项和资产,以实现适当的缩放、本地化和可访问性,MS 的documentation 对此有分步说明。

请注意,文档会警告其已弃用的内容。我不知道这项工作需要多长时间,或者他们是否计划在未来完全删除这种瓷砖规范方式,但到目前为止,它在所有版本的 W10 上都运行良好。

注意 #2: 如果您使用现有安装/快捷方式尝试此操作,则必须刷新相应快捷方式的修改时间戳,然后再次取消固定/固定磁贴,否则shell 不会注意到新定义文件的存在。 PS中最简单的方法(修改系统文件夹中的快捷方式时以管理员身份运行):

(ls "$env:ProgramData\Microsoft\Windows\Start Menu\Programs\[ShortcutName].lnk").lastwritetime = get-date

或从目标文件夹中的 CMD:

copy /b [ShortcutName].lnk +,,

【讨论】:

  • 谢谢,这确实很简单,而且比我预期的要少得多“黑客”!确认我在我的机器上找到了几个使用这些的安装。我试试看
猜你喜欢
  • 2013-07-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多