Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/276.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用剪贴板方法时出现ThreadStateException问题_C#_Clipboard - Fatal编程技术网

C# 使用剪贴板方法时出现ThreadStateException问题

C# 使用剪贴板方法时出现ThreadStateException问题,c#,clipboard,C#,Clipboard,嗨,我在调试时遇到了这个问题,不知道如何找到解决方案。 System.Windows.Forms.dll中出现System.Threading.ThreadStateException 代码如下: namespace PhoneTaker { class Program { static void Main(string[] args) { List<string> NamesList = File.Re

嗨,我在调试时遇到了这个问题,不知道如何找到解决方案。 System.Windows.Forms.dll中出现System.Threading.ThreadStateException

代码如下:

    namespace PhoneTaker
{
    class Program
    {
        static void Main(string[] args)
        {
            List<string> NamesList = File.ReadLines("Names.txt").ToList();
            string str = NamesList.ElementAt(0);
            Console.WriteLine(str);
            Clipboard.Clear();
            Clipboard.SetText(str);
            NamesList.Remove(str);
            File.WriteAllLines("Names.txt", NamesList);
            Console.WriteLine("All Done");
            Console.ReadLine();
        }
    }
}
namespace电话接受器
{
班级计划
{
静态void Main(字符串[]参数)
{
List NamesList=File.ReadLines(“Names.txt”).ToList();
string str=NamesList.ElementAt(0);
控制台写入线(str);
剪贴板。清除();
剪贴板.SetText(str);
名称列表。删除(str);
File.writeAllines(“Names.txt”,NamesList);
控制台。写入线(“全部完成”);
Console.ReadLine();
}
}
}

剪贴板需要STA线程来支持非线程安全的剪贴板客户端。只要你只把文本放在剪贴板上,那就不是真正的问题。将[StatThread]属性放在Main()方法上。@Hans Passant你的意思是:StatThreadAttribute Stat就像我写的一样,将它从注释复制/粘贴到Main()上方的一行。@Hans Passant谢谢你的帮助