为C#应用程序设置256*256图标

为C#应用程序设置256*256图标,c#,icons,C#,Icons,我有一个C#项目即将完成,其规模之大足以让我不想重写它。现在我几乎完成了,我想为它设置一个图标,使它变得漂亮。经过多次错误和尝试,我创建了一个256*256.ico文件,并在下面的面板中将其设置为应用程序的图标: 项目设置 应用程序选项卡 图标和清单 图标 问题是,在Windows资源管理器中,.exe文件的图标不会超过32*32像素(或者可能是48*48,我不确定),并且图标周围有一个丑陋的框(我认为Windows在找不到合适的图标大小时会将其放在那里)。在这种情况下,正如我前面所说,图标是一

我有一个C#项目即将完成,其规模之大足以让我不想重写它。现在我几乎完成了,我想为它设置一个图标,使它变得漂亮。经过多次错误和尝试,我创建了一个256*256.ico文件,并在下面的面板中将其设置为应用程序的图标:

  • 项目设置
  • 应用程序选项卡
  • 图标和清单
  • 图标
  • 问题是,在Windows资源管理器中,.exe文件的图标不会超过32*32像素(或者可能是48*48,我不确定),并且图标周围有一个丑陋的框(我认为Windows在找不到合适的图标大小时会将其放在那里)。在这种情况下,正如我前面所说,图标是一个256*256 only.ico文件(文件中只有一个帧,即256*256像素)

    因此,为了进一步测试它,我创建了另一个类似于上一个项目的项目,并设置了完全相同的图标文件。令我惊讶的是,编译后的.exe文件的图标会像Windows资源管理器中的其他图标一样大

    谁知道我该怎么解决这个问题?Windows资源管理器是否可能从缓存中显示旧的资源管理器?如果是,如何重置该缓存

    [更新]


    我设法证明这是Windows资源管理器的错,因为它缓存了图标,并且向我显示了我的图标的旧版本。那么如何重置Windows资源管理器的缓存呢?

    图标缓存几乎肯定是罪魁祸首。系统在缓存图标方面非常积极,因为它将这些图标视为静态的。当然,这与正在试验应用程序的开发人员有冲突

    一种简单的检查方法是获取具有错误图标的可执行文件并重命名该文件。这足以绕过缓存,您的大图标应该会显示出来


    关于重建图标缓存的说明:

    对不起,您的确切问题是什么?您想在应用程序标题栏中显示256x256图标吗?或者你想删除黑色轮廓?我想为我的.exe文件添加一个256*256的图标,我很确定一旦实现,黑色轮廓将自动消失。你是否对256px图标使用PNG压缩?这将对你的可执行文件的大小产生很大的影响。我还没有到那个程度,但感谢你指出这一点。