Winform 图像 (ResourceManager) 在 Windows 10 上不可见
Winform images (ResourceManager) not visible on Windows 10
我有一个 Windows 表单应用程序,在 Windows 7 上运行良好,但在 Windows 10 上打开时,图像文件使用 ResourceManager[=20= 】 不要出现。应用程序正在使用 .Net 3.5 框架。以下是一些代码:
static readonly System.Resources.ResourceManager rm = new System.Resources.ResourceManager("ImageResources", Assembly.GetExecutingAssembly());
rm.GetObject("ImageName");
错误如下:
Could not find any resources appropriate for the specified culture or
the neutral culture. Make sure was correctly embedded or linked into
assembly at compile time, or that all the satellite assemblies
required are loadable and fully signed.
System.Resources.MissingManifestResourceException:
是由于某种不兼容还是 Windows 10 以某种方式限制 ResourceManager class 使用所有这些图像?
尝试在目标机器上检查 Environment.Version 的值(例如一些 MessageBox)。
如果你得到 4.0,那么你需要按照 Dr. Stich 的建议更改配置文件。
如果您没有配置文件,请按照此处所述创建它:
How to: Add an Application Configuration File to a C# Project
并将其内容更改为如下内容:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v2.0.50727" />
</startup>
</configuration>
上获取运行时版本
这个问题最终通过在 rm.GetObject
方法参数中添加 CultureInfo.CurrentCulture
得到解决,即
rm.GetObject("ImageName", CultureInfo.CurrentCulture);
我有一个 Windows 表单应用程序,在 Windows 7 上运行良好,但在 Windows 10 上打开时,图像文件使用 ResourceManager[=20= 】 不要出现。应用程序正在使用 .Net 3.5 框架。以下是一些代码:
static readonly System.Resources.ResourceManager rm = new System.Resources.ResourceManager("ImageResources", Assembly.GetExecutingAssembly());
rm.GetObject("ImageName");
错误如下:
Could not find any resources appropriate for the specified culture or the neutral culture. Make sure was correctly embedded or linked into assembly at compile time, or that all the satellite assemblies required are loadable and fully signed. System.Resources.MissingManifestResourceException:
是由于某种不兼容还是 Windows 10 以某种方式限制 ResourceManager class 使用所有这些图像?
尝试在目标机器上检查 Environment.Version 的值(例如一些 MessageBox)。 如果你得到 4.0,那么你需要按照 Dr. Stich 的建议更改配置文件。 如果您没有配置文件,请按照此处所述创建它: How to: Add an Application Configuration File to a C# Project
并将其内容更改为如下内容:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v2.0.50727" />
</startup>
</configuration>
上获取运行时版本
这个问题最终通过在 rm.GetObject
方法参数中添加 CultureInfo.CurrentCulture
得到解决,即
rm.GetObject("ImageName", CultureInfo.CurrentCulture);