Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/36.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/multithreading/4.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
Asp.net 在.NET中,当我在另一个线程中运行表单时,如何设置STAThread?_Asp.net_Multithreading_Com - Fatal编程技术网

Asp.net 在.NET中,当我在另一个线程中运行表单时,如何设置STAThread?

Asp.net 在.NET中,当我在另一个线程中运行表单时,如何设置STAThread?,asp.net,multithreading,com,Asp.net,Multithreading,Com,我正在运行第二个线程中的表单。如果我按Ctrl-C键复制剪贴板上的文本,我会得到一个异常,当前线程必须设置为单线程,然后才能进行OLE调用。使用剪贴板显然涉及OLE 将[StatThread]与第二个线程的入口点thread proc放在一起不起作用。什么有效 [STAThread] private void MyFormThreadproc(object o) { form = new MyForm(); Application.Run(form); } 创建线程时,请在启动

我正在运行第二个线程中的表单。如果我按Ctrl-C键复制剪贴板上的文本,我会得到一个异常,当前线程必须设置为单线程,然后才能进行OLE调用。使用剪贴板显然涉及OLE

将[StatThread]与第二个线程的入口点thread proc放在一起不起作用。什么有效

[STAThread]
private void MyFormThreadproc(object o)
{
    form = new MyForm();
    Application.Run(form);
}

创建线程时,请在启动方法之前调用该方法。不能对线程池线程执行此操作

例如:

Thread thread = new Thread(threadAction);
thread.SetApartmentState(ApartmentState.STA);
thread.Start();