从嵌入式资源流中读取

时间:2010-04-16 11:56:13

标签: c++-cli stream resources

我一直在尝试在名为“Images.resx”的嵌入式RESX文件中访问名为“IndexPointer.jpg”的图像资源。 GetManifestResourceNames()返回一个值 - SCtor.Images.resources“。

大会:: GetExecutingAssembly() - > GetManifestResourceStream( “SCtor.Images.resources.IndexPointer.jpg”)

仅返回nullptr。显然,我的清单名称错了。什么是正确的?

2 个答案:

答案 0 :(得分:0)

使用Reflector打开程序集以找出正确的资源名称。

答案 1 :(得分:0)

好吧,我终于明白了。奇怪的是,我记得遇到(并尝试)工作解决方案并忽视它。在任何情况下,我使用程序集的资源实例化ResourceManager对象,并使用其GetObject方法提取嵌入的图像。

ResourceManager^ resources = gcnew ResourceManager("<rootNamespace>.<resourceName>", Assembly::GetExecutingAssembly());
Bitmap^ Image1 = gcnew Bitmap(dynamic_cast<Image^>(resources->GetObject("<nameOfTheImageResourceWithoutItsExtension>")));