Visual Studio'da Web Browser ActiveX Hatasını Nasıl Düzeltebilirim?

1

Microsoft Visual Studio 2012 kullanıyorum. Visual Studio ile Windows Uygulaması geliştiriyorum ve bu uygulamam da Web Browser kontrolünü kullanıyorum. Aşağıdaki kod stabil olarak çalışmaktaydı fakat program çalışmaya devam ederken yaklaşık 1 saat sonra bu hata mesajını verdi.

Unable to get the window handle for the 'WebBrowser' control. Windowless ActiveX controls are not supported.

 System.Windows.Forms.WebBrowser _webBrows = new System.Windows.Forms.WebBrowser(); 

 _webBrows.Navigate("about:blank");                        _webBrows.Document.OpenNew(false);

 _webBrows.Document.Write(urunListHtml[0].ToString());

yukarıdaki kodda dizideki bir web sayfasının source kodlarını _webBrows' un Doucemnt'ine yazdırıyorum ve burada almam gereken verileri alıyorum. Program uzun süre çalıştıktan sonra

 _webBrows.Navigate("about:blank"); _webBrows.Document.OpenNew(false);

kodlarında yukarıdaki hata mesajını vermektedir. Bu sorunu nasıl düzeltebilirim.

emkoroglu emkoroglu (327)
10 yıl önce sordu

    Toplam 1 Cevap


    0

    Emre, benzer bir sorunla karşılaşmıştım.  Sorun DEP - Data Execution Prevention (Veri Yürütme Engellemesi)  kaynaklıydı. DEP Windows 7 gibi işletim sistemlerinde, kullanıcıyı özellikle virüs gibi zararlı yazılımlardan korumak için kullanılan bir teknoloji. ActiveX işlemerinde zaman zaman sorun çıkartabiliyor.

    DEP Data Execution Prevention (Veri Yürütme Engellemesi) nasıl kapatılır? linkinde DEP nasıl kapatılır var.  DEP'i kapatıp tekrar deneyebilirsin.
     

    Uygulamanda Thread kullanıyorsan, Thread kullanımı ile ilgili hatan da olabilir.

    Thread kullanıyorsan 

    thread = new Thread (new ThreadStart (function)); 
     thread.SetApartmentState (System.Threading.ApartmentState.STA);

    şeklinde kullanmalısın.

    alattin alattin (16999)
    10 yıl önce cevaplandı

      üyelik gerektirir

      Cevap yazabilmek için üye girişi yapmalısınız.

      Eğer uzmanim.net üyesiyseniz giriş yapabilirsiniz: üye girişi yap
      uzmanim.net'e üye olmak çok kolaydır: hemen kayıt ol