WebBrowser
コンポーネントを.NET Compact Framework 3.5プロジェクトで使用したいと考えています。私はこれに関する矛盾した情報に直面している。コンパクトフレームワークのWebブラウザ
私はちょうどそれを使用しようとすると、私は次の例外を取得:私には
System.Threading.ThreadStateException: ActiveX control '8856f961-340a-11d0-a96b-00c04fd705a2' cannot be instantiated because the current thread is not in a single-threaded apartment.
at System.Windows.Forms.WebBrowserBase..ctor(String clsidString)
at System.Windows.Forms.WebBrowser..ctor()
at dce.pd.dialogmgr.baseimpl.DialogDeviceImpl.createGui(XmlElement pDialogManagerNode) in C:\sourceview\CS.NETCF.2008\dce\pd\dialogmgr\baseimpl\DialogDeviceImpl.cs:line 362
at dce.pd.dialogmgr.baseimpl.DialogDeviceImpl.init() in C:\sourceview\CS.NETCF.2008\dce\pd\dialogmgr\baseimpl\DialogDeviceImpl.cs:line 118
at dce.pd.dialogmgr.thinimpl.ThinClient.createDeviceImpl() in C:\sourceview\CS.NETCF.2008\dce\pd\dialogmgr\thinimpl\ThinClient.cs:line 82
at dce.pd.dialogmgr.thinimpl.ThinClient.init() in C:\sourceview\CS.NETCF.2008\dce\pd\dialogmgr\thinimpl\ThinClient.cs:line 87
at dce.pd.dialogmgr.thinimpl.ThinClient.form_Load(Object sender, EventArgs e) in C:\sourceview\CS.NETCF.2008\dce\pd\dialogmgr\thinimpl\ThinClient.cs:line 66
at System.Windows.Forms.Form.OnLoad(EventArgs e)
at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
at System.Windows.Forms.Control.CreateControl()
at System.Windows.Forms.Control.WmShowWindow(Message& m)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
を私はMain
方法に[STAThread]
ディレクティブを置くために持っているように、これが鳴ります。
[STAThread]
static void Main()
{
...
}
しかし、それはどちらも、the [STAThread] option is not available in compact framework.ために動作しません。したがって、アプリケーションは今でもコンパイルされません。
しかし、Microsoft's documentationによれば、WebBrowser
コンポーネントは、コンパクトなフレームワークプロジェクトで使用できます。いくつかの例があります。 (残念ながら、完全なコードは提供されていません)。
私は何が欠けていますか?
このプロジェクトをどのように開発していますか? [WebBrowser Control](https://msdn.microsoft.com/en-us/library/aa752040.aspx)を使用したとき、私はVisual Studio 2008で開発していました.VS2010以降では.Net CF 。 – jp2code
それはコンパクトなフレームワークを持つVisual Studio 2008にあります。012 – bvdb