(100分求解)通过GetManifestResourceStream方法加载资源文件的问题

dazhu2 2007-03-06 10:08:09
我在程序集Imagestream中添加了一个文件夹picture1,picture1中添加了一个图片1.jpg,我想通过以下方法获取该图片,但出错,代码如下
//加载图片
this.pictureBox1.Image = Image.FromStream(System.Reflection.Assembly.GetExecutingAssembly().GetManifestResourceStream("Imagestream.picture1.1.jpg"));
但程序运行后出现错误,提示如下:
“ null值”对于“stream”无效。
请问是何缘故?、
...全文
4161 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
asnow1989 2011-05-04
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 jiufu168 的回复:]
我也遇到了同样的问题,最后通过这个方法解决了,呵呵。
http://hi.baidu.com/jiufu/blog/item/43d7cbc8ef06451c7f3e6fcd.html
[/Quote]
非常感谢啊,我也解决问题了~
elvalloo 2011-01-14
  • 打赏
  • 举报
回复
想要请问一下,我也是遇到同样的问题,我现在是想通过.xml文件读到world文档中。
与你所报的错误一样。也是说是空值,问题的原因是什么呢?有高手也希望指点一下,最近在看。
也把我的代码部分说说:
public static string GetTestXml(string xmlName)
{
using (StreamReader s = new StreamReader(_assembly.GetManifestResourceStream(
string.Format("{0}.Xml.{1}.xml", _namespace, xmlName)), Encoding.UTF8))
{

return s.ReadToEnd();
}
}
不是很能理解string.Format()方法的意思,其参数有谁能讲解一下?
jiufu168 2010-01-30
  • 打赏
  • 举报
回复
我也遇到了同样的问题,最后通过这个方法解决了,呵呵。
http://hi.baidu.com/jiufu/blog/item/43d7cbc8ef06451c7f3e6fcd.html
imelodious 2009-12-30
  • 打赏
  • 举报
回复
对啊,加入的图片属性设置为Embedded Resource,应该没问题了
flyaqiao 2007-03-07
  • 打赏
  • 举报
回复
图片的BuildAction是嵌入资源吗?
plhfish 2007-03-07
  • 打赏
  • 举报
回复
图片必须设置为嵌入资源,且要用命名空间引用 项目名.文件夹名.文件名
bill024 2007-03-06
  • 打赏
  • 举报
回复
将GetExecutingAssembly改成GetEntryAssembly
feiyun0112 2007-03-06
  • 打赏
  • 举报
回复
应该是这个名称Imagestream.picture1.1.jpg不对,应该还要namespace

*****************************************************************************
欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码)

最新版本:20070212

http://www.cnblogs.com/feiyun0112/archive/2006/09/20/509783.html
dazhu2 2007-03-06
  • 打赏
  • 举报
回复
up
Red_angelX 2007-03-06
  • 打赏
  • 举报
回复
项目名.文件夹名.文件名
sunjay117 2007-03-06
  • 打赏
  • 举报
回复
("Imagestream.picture1.1.jpg"));
或者命名空间没加把?
Red_angelX 2007-03-06
  • 打赏
  • 举报
回复
你先取得所有的资源名字弹出来看看是不是写错了
代码没问题估计就是没有Imagestream.picture1.1.jpg这个东西
北京的雾霾天 2007-03-06
  • 打赏
  • 举报
回复
给你个参考:
public static object GetObject(string KeyName)
{
string text = Assembly.GetExecutingAssembly().GetManifestResourceNames()[0];
ResourceManager manager = new ResourceManager(text.Substring(0, text.LastIndexOf(".")), Assembly.GetExecutingAssembly());
object obj2 = manager.GetObject(KeyName);
manager.ReleaseAllResources();
return obj2;
}

bill024 2007-03-06
  • 打赏
  • 举报
回复
this.pictureBox1.Image = Image.FromStream(System.Reflection.Assembly.GetEntryAssembly().GetManifestResourceStream("你的工程项目名称.picture1.1.jpg"));

应该是你的工程项目名称.picture1.1.jpg 不是你的程序集名称.picture1.1.jpg
hertcloud 2007-03-06
  • 打赏
  • 举报
回复
这里直接用("picture1.1.jpg")呢
dazhu2 2007-03-06
  • 打赏
  • 举报
回复
好像还是不行

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧