2010-12-23 37 views
0

我有一個ASP.NET應用程序,並需要在其中使用一些COM組件。是否有一個通用的'FuncSTA'用於通過STA線程調用委託?

我需要一個超過FuncAction的包裝類,它會創建一個新的STA線程並使用該線程運行委託或類似的東西。你是否知道開箱即用的類或圖書館或示例代碼?

CodeUsingComComponent.InvokeSTA() 

回答

0

沒有這樣的方法存在。
你可以自己寫一個:

public static void InvokeSTA(this ThreadStart method) { 
    var thread = new Thread(method); 
    thread.SetApartmentState(ApartmentState.STA); 
    thread.Start(); 
} 

如果你想同步調用,添加thread.Join()