Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用c时应用程序图标未正确更改_C#_.net_Winforms - Fatal编程技术网

C# 使用c时应用程序图标未正确更改

C# 使用c时应用程序图标未正确更改,c#,.net,winforms,C#,.net,Winforms,我将应用程序的图标更改为新图标,方法是转到:Project/MyProject Properties/icon and Manifiest,然后加载新图标。现在,在我的调试文件夹中,我的.exe文件的图标与新图标一起出现,这是正常的,但当我执行.exe时,任务栏中的应用程序图标仍然显示旧图标 请给出建议。确保您的*.ico文件包含大小合适的图标,如用于小任务栏的16x16 查看此图标信息及其支持的大小。假设这只是一个简单的错误,您正在检查您的ico是否符合此处指定的要求您有两个地方可以更改您的图

我将应用程序的图标更改为新图标,方法是转到:Project/MyProject Properties/icon and Manifiest,然后加载新图标。现在,在我的调试文件夹中,我的.exe文件的图标与新图标一起出现,这是正常的,但当我执行.exe时,任务栏中的应用程序图标仍然显示旧图标


请给出建议。

确保您的*.ico文件包含大小合适的图标,如用于小任务栏的16x16

查看此图标信息及其支持的大小。假设这只是一个简单的错误,您正在检查您的ico是否符合此处指定的要求

您有两个地方可以更改您的图标

第一名 第一位是在这个项目中

右键单击项目 选择属性 进入应用程序选项卡 选择图标和清单,然后选择所需的图标 第二名 第二个位置在Winform的属性中

打开表单 点击表格 按F4键或进入窗体的属性 在属性中向下查找图标 选择所需的图标。
在任务栏中有一个与application.exe图标不同的图标的原因是任务栏使用当前窗体图标显示在任务栏中。

遇到了相同的问题

通过执行以下操作来解决此问题

只需从任务管理器中停止explorer.exe,然后重新运行explorer.exe即可

在项目属性->资源->图标中复制新图标 在主加载函数中添加:

this.Icon = Properties.Resources.newIcon;

正如评论员提到的,您应该在*.ico文件的属性中设置:Copy to Output Dir:Copy if newer

此属性不是绝对必需的。我开发了一个winform应用程序,并在没有图标的情况下对其进行了测试。然后我创建并添加了图标。使用VS调试器运行时显示的图标。我将bin/debug目录复制到另一台pc上,并在那里显示图标

但是,当通过单击*.exe文件启动应用程序时,开发计算机上没有显示该图标

注销/登录窗口无法解决此问题

将图标文件上的Copy To Output Dir属性更改为Copy If Newer,并重新生成应用程序,这确实有帮助。现在,我可以通过单击*.exe启动应用程序,图标显示得很好

结论:


并不总是需要使用复制到输出目录的图标文件来构建应用程序,但通过此措施,您将增加机会。

您好,Wiktor,我有另一个应用程序使用新图标,一切正常,因此,图标大小不是问题。如果找不到正确的图标大小,则将动态创建Windows。请确保其.ico,并清理解决方案并重新构建。您是指可执行文件的图标还是窗口窗体的图标?两者之间存在差异。请确保您的表单也使用了新图标。如果您是从磁盘加载它而不是添加资源,请确保“在生成时复制”。重新生成所有内容,并确保以正确的配置运行。在Debug或ReleaseThank for respond@Daok中,我只想在任务栏中显示图标,这样我就不会在表单中使用图标。即使我将图标放在表单中,当我执行.exe文件时,它仍然显示旧图标:重新启动计算机后,它开始显示正确的图标,古怪看起来更新上面答案中显示的图标应该会正确地更改它们,但是正如您所列出的,资源管理器有时会缓存旧图标。奇怪的解决方案,但它可以工作!。。。我猜浏览器至少会在Win10 x64上缓存图标。好主意,@pan4321。这也是我的解决办法。我将我的程序添加到任务栏中,但是在两个地方都替换了它之后,图标没有改变,正如Patrick提到的,这是正确的,并且重新编译了它。但是在浏览器重新启动后,它在任务栏中被替换了。谢谢。成功了。我发现,如果我只是重命名图标或复制我的exe到其他文件夹,它会显示正确的图标