第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

單線程單元-無法實例化ActiveX控件

單線程單元-無法實例化ActiveX控件

qq_笑_17 2019-11-30 13:32:38
我需要獲取有關(guān)HTML頁面中應(yīng)用的CSS樣式的信息。我使用了AxWebBrowser并迭代了IHTMLDOMNode。我能夠獲取所需的所有數(shù)據(jù)并將代碼移入應(yīng)用程序。問題是這部分正在后臺工作程序內(nèi)部運行,嘗試實例化控件時出現(xiàn)異常。AxWebBrowser browser = new AxWebBrowser();ActiveX control '8856f961-340a-11d0-a96b-00c04fd705a2' cannot be instantiatedbecause the current thread is not in a single-threaded apartment.除了AxWebBrowser之外,還有什么方法可以解決此問題或其他選項?
查看完整描述

3 回答

?
紅糖糍粑

TA貢獻(xiàn)1815條經(jīng)驗 獲得超6個贊

您遇到的問題是,大多數(shù)后臺線程/輔助API都會以“多線程單元”狀態(tài)創(chuàng)建線程。錯誤消息表明控件要求線程是單線程單元。


您可以通過自己創(chuàng)建一個線程并在該線程上指定STA公寓狀態(tài)來解決此問題。


var t = new Thread(MyThreadStartMethod);

t.SetApartmentState(ApartmentState.STA);

t.Start();


查看完整回答
反對 回復(fù) 2019-11-30
?
Cats萌萌

TA貢獻(xiàn)1805條經(jīng)驗 獲得超9個贊

如果您習(xí)慣[STAThread]了應(yīng)用程序的主條目,但仍然收到錯誤,則可能需要對控件進(jìn)行線程安全調(diào)用 ……如下所示。對于我來說,同樣的問題,以下解決方案有效!


Private void YourFunc(..)

{

    if (this.InvokeRequired)

    {

        Invoke(new MethodInvoker(delegate()

        {

           // Call your method YourFunc(..);

        }));

    }

    else

    {

        ///

    }


查看完整回答
反對 回復(fù) 2019-11-30
  • 3 回答
  • 0 關(guān)注
  • 884 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號