Clipboard.SetDataObject调用提示内存不足
public void showpic(string b){
Clipboard.SetDataObject(Image.FromFile(b), true);
//.FromStream(c_filestream)
this.richTextBox1.Paste();
}
当我使用委托调用showpic()这个方法时,提示内存不足?到底怎么回事啊,求解决办法!!! --------------------编程问答-------------------- 代码帖全点。程序没发现问题。
委托的部分code?
public void showpic(string b)
{
Clipboard.SetDataObject(Image.FromFile(b), true);
this.richTextBox1.Paste();
}
delegate void del(string b);
private void button2_Click(object sender, EventArgs e)
{
string path = @"c:\alarm24.png";
Delegate dela = Delegate.CreateDelegate(typeof(del), this, "showpic");
dela.DynamicInvoke(new object[] { path });
} --------------------编程问答-------------------- 委托
public delegate void showtext(string a);
private void button2_Click(object sender, EventArgs e)
{
richTextBox1.Invoke(new showtext(showpic), @"C:\Users\ken\Desktop\11.jpg");
} --------------------编程问答-------------------- 我还是贴完整的吧~~主要是在SOCKET通信上出错了
private void button2_Click(object sender, EventArgs e)
{
c = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp );
FileStream filestream = new FileStream(@"C:\Users\ken\Desktop\11.jpg", FileMode.OpenOrCreate );
Byte[] picture_c = new Byte[2024];
try
{
filestream.Read(picture_c, 0, picture_c.Length - 1);
c.Connect(IPAddress.Parse("172.16.14.228"), 22222);
Byte[] sendbyte_c = Encoding.UTF8.GetBytes(textBox2.Text);
Byte[] recebyte_c = new Byte[1024];
if (c.Connected)
{
c.Receive(recebyte_c);
textBox1.Invoke(new showtext(showtexttext), Encoding.UTF8.GetString(recebyte_c));
richTextBox1.Invoke(new showtext(showpic), @"C:\Users\ken\Desktop\11.jpg");
//c.Send(sendbyte_c);
c.Send(picture_c, picture_c.Length, SocketFlags.None);
filestream.Close();
c.Close();
}
}
catch (Exception err)
{
// MessageBox.Show("请检查服务器是否已监听");
MessageBox.Show(err.ToString());
}
} --------------------编程问答-------------------- 你还是直接调用SetImage方法吧 --------------------编程问答--------------------
直接调用可以的话我就不必用委托了 --------------------编程问答-------------------- 自己顶起 --------------------编程问答-------------------- Paste前判断一下试试。 --------------------编程问答-------------------- 初学者,帮顶。在怀疑的地方打断点试试吧 --------------------编程问答--------------------
我已经知道是在委托那里错了,可是该怎么改 --------------------编程问答-------------------- 我顶啊~~~!!!!为什么会提示内存不足 --------------------编程问答-------------------- 顶顶顶!!!!!!!!!!!!!!
补充:.NET技术 , C#