VS C# 调用OpenFileDialog发生异常,大神帮看看!
private void button1_Click(object sender, EventArgs e)
{
/*
Thread recvThread = new Thread(new ThreadStart(InPutImage));
recvThread.SetApartmentState(ApartmentState.STA);
recvThread.Start();
*/
//this.Hide();
if (this.openFileDialog1.ShowDialog() == DialogResult.OK)
{
openFileDialog1.Title = "请选择图片";
openFileDialog1.Filter = "图片|*.jpg;*.png;*.jpeg;";
System.IO.FileInfo fileInfo = null;
try
{
fileInfo = new System.IO.FileInfo(openFileDialog1.FileName);
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
// 其他处理异常的代码
}
MessageBox.Show("文件大小=" + System.Math.Ceiling(fileInfo.Length / 1024.0) + " KB");
//this.Show();
}
}
System.Threading.ThreadStateException:“在可以调用 OLE 之前,必须将当前线程设置为单线程单元(STA)模式。请确保您的 Main 函数带有 STAThreadAttribute 标记。 只有将调试程序附加到该进程才会引发此异常。”
坦白:吾乃中学生一,网上浪了一圈发现他们没有用线程的,我的代码和他们一样但就是报错。。。【**无情**】
Ps:我真的是一个中学生。。。