主题:如何在网上显示图像?
ztong
[专家分:10] 发布于 2005-08-08 16:55:00
我使用
image.Save("c:\\drawline2.gif",System.Drawing.Imaging.ImageFormat.Gif);
Image1.ImageUrl="c:\\drawline2.gif";
在我的机器上存储图像文件,但是通过局域网在其他机器上调用发现不能显示图像,清高手指点,在这里谢谢了!
而且,如果写成:
image.Save("C:\\Inetpub\\wwwroot\\WebApplication101\\drawline2.gif",System.Drawing.Imaging.ImageFormat.Gif);
Image1.ImageUrl="C:\\Inetpub\\wwwroot\\WebApplication101\\drawline2.gif";
这样就连已经在本机上画好的图像也画不出来了,为什么?谢谢大虾了!
回复列表 (共7个回复)
沙发
jzyray [专家分:20610] 发布于 2005-08-08 17:12:00
用相对路径或者使用MapPath返回的绝对路径。
板凳
ztong [专家分:10] 发布于 2005-08-09 12:01:00
当我使用:
string newPath;
string myPath="\\";
newPath =HttpContext.Current.Server.MapPath(myPath);
string myFileName;
myFileName ="drawline2.gif";
string temp = newPath + myFileName ;
image.Save(temp,System.Drawing.Imaging.ImageFormat.Gif);
Image1.ImageUrl=temp;
时,显示错误:GDI+一般性错误!
不知道如何修改!在别人机器上是正确的,而我的机器上是错误!谢谢大虾了!
3 楼
jzyray [专家分:20610] 发布于 2005-08-09 13:09:00
MapPath的参数是相对路径,也就是说,如果传入文件的相对路径,就会得到相应的绝对路径。
因此,同一文件夹下的文件可以这样访问:
string tmp=HttpContext.Current.Server.MapPath("drawline2.gif");
4 楼
ztong [专家分:10] 发布于 2005-08-09 15:18:00
我修改后:
string tmp=HttpContext.Current.Server.MapPath("drawline2.gif");
image.Save(tmp,System.Drawing.Imaging.ImageFormat.Gif);
Image1.ImageUrl=tmp;
但是调试时仍出现错误:GDI+ 中发生一般性错误。为什么?我不知道如何修改!
5 楼
ztong [专家分:10] 发布于 2005-08-09 20:57:00
知道仍为绝对路径,修改为
Response.ContentType="image/gif";
image.Save(Response.OutputStream,System.Drawing.Imaging.ImageFormat.Gif);
Image1.ImageUrl="Response.OutputStream";
后发现在网络上也可以显示图像,但是已经不是在webform.aspx中设计的页面了。只显示图像,这样怎么修改呢?
6 楼
ztong [专家分:10] 发布于 2005-08-11 14:55:00
怎么没有人回答呢?正在网上等!谢谢了!
7 楼
ztong [专家分:10] 发布于 2005-08-22 10:21:00
怎么没有人回答呢?正在网上等!谢谢了!
我来回复