WIndowsのCOMコンポーネントは、STA(シングルスレッドアパートメント)でないとエラーになります。
Windows Forms Applicationを作ると、デフォルトではMain()にSTAThreadが付いているはずです。このため、普段は問題ありません。
static class Program { [STAThread] static void Main() { } }
しかし、Threadを新規作成して、そのスレッドないでクリップボードやActiveXコントロールを使おうとすると、ThreadStateExceptionが発生します。
Threadオブジェクトのプロパティで設定しておきましょう。
var th= new Thread(new ThreadStart(threadMethod)); th.SetApartmentState(ApartmentState.STA); th.Start();