c# - Visual Studio 安装程序项目 - 未设置快捷方式图标
问题描述
我用 .NET 4.6.1 和 C# 创建了一个 WinForm 应用程序。我正在使用 Visual Studio 2017,更新了最新的修复程序(截至 2018 年 9 月 29 日)。该应用程序使用自定义图标,并且正确显示:exe 文件以正确的图标显示。
我使用“Microsoft Visual Studio 2017 安装程序项目”扩展创建了一个安装程序项目。安装程序复制不同位置的文件集(在 Program Files 下,在用户的 App Data 下等),并且文件被正确复制。EXE 文件正确显示我设置的自定义图标。
现在,问题来了。我在桌面上设置了一个快捷方式。快捷方式已创建并实际工作,但图标错误:显示的是默认窗口图标。我尝试了几种解决方案并阅读了多个论坛。
1-我尝试从文件系统视图(桌面文件夹)“创建新快捷方式”,然后从“属性”窗口设置图标。
2-我尝试右键单击输出 exe 并选择“创建主输出的快捷方式”,然后将快捷方式拖到桌面文件夹。
3-我尝试选择直接引用应用程序输出 exe 的图标:向导允许我选择正确的图标,我选择它并确认。
4- 我尝试选择引用源 ICO 文件的图标:再次,向导允许我选择正确的图标,我选择它并确认。
我尝试过的任何解决方案,我总是获得一个显示默认图标而不是自定义图标的快捷方式。
更重要的是,如果我尝试通过右键单击 EXE 手动“创建快捷方式”,在窗口的文件资源管理器中,快捷方式是使用正确的自定义图标创建的!因此,奇怪的是 Visual Studio(或安装程序)在安装过程中不能做同样的事情。
您是否知道问题的原因以及如何解决?
谢谢!
解决方案
我遇到了同样的问题,并尝试了 OP 也尝试过的所有组合。
最后,我的问题归结为我的 .ICO 文件没有正确大小的桌面快捷方式图像。(如果 Visual Studio 能告诉我,那就太好了!!!!)
奇怪的是,像手动生成快捷方式的OP确实使图标出现了,所以我觉得上面有点奇怪!
无论如何,我正在使用 GIMP 生成我的 .ICO 文件来转换 PNG。我显然弄错了这个阶段。
我建议先尝试一个不同的 .ICO 文件,看看这是否是原因。
这是给我的,我通过使用以下站点解决了它:
然后我勾选了尺寸的相关框,使用了这个新的 .ICO 文件,嘿,一切正常
推荐阅读
- php - 如何在laravel中使用`Shop`模型获取`users`表的`user`的外键名称?
- python - 如何使用文本显示以下文本
- r - 为什么我不能在 ggplot 中生成 CI 的最小值和最大值?
- javascript - 在第一页访问时显示元素
- python - Matplotlib 不显示不同语言的字符(印地语)和其他字符,如表情符号
- codeigniter - For循环问题在Codeigniter 4中迭代一次
- python - 使用爬虫从公司网站上抓取新闻稿?
- javascript - React.memo - 第二个参数“areEqual”永远不会被调用
- c++ - MISRA 2008:无法理解 5-0-13 规则
- c - TCP 套接字上的 POLLIN 事件,但没有要读取的数据