Я хотел бы использовать компонент WebBrowser
в проекте .NET Compact Framework 3.5. Я столкнулся с противоречивой информацией об этом.Webbrowser в компактном каркасе
Если я просто пытаюсь использовать его, я получаю следующее исключение:
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)
Для меня это звучит, как я должен поставить [STAThread]
директиву к моему Main
метода.
[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, с компактной структурой 3.5 – bvdb