flash程序,在前台修改图片之后,提供打印和Email功能。这两个功能都是把图片发到服务器上,然后跳转到Email页面和打印页面。Email页面多做一个动作,就是通过SMTP把嵌入图片的Html发出去。Email和打印两个过程对比图如下:
问题是,打印这个功能一切正常。而Email功能,当成功发送出去一张照片之后,然后再发送同一张照片,就发送不出去了。
检查flash那端代码没发现什么。用Woreshark抓包,发现第二次Email同一张照片时,服务器返回了Internal Server Error:
马上猜到是服务器temp目录中同名照片正被使用。检查Smtp发送代码(从网上找的),发现在将图片嵌入LinkedResource之后,LinkedResource没有Dispose。
Dispose之,bug消除。