El control ActiveX '8856f961-340a-11d0-a96b-00c04fd705a2' no se puede instanciar porque el subproceso actual no está en un apartamento de un solo subproceso
Recibo este error cuando intento mostrar un formulario con un navegador web en él.
El control ActiveX '8856f961-340a-11d0-a96b-00c04fd705a2' no se puede instanciar porque el subproceso actual no está en un apartamento de un solo subproceso
Lo llamo por:
Public Class frmMain
Class Server
Public Shared Sub Main()
Dim aTcpMessaging As IMessagingSystemFactory = New TcpMessagingSystemFactory()
Dim anInputChannel As IInputChannel = aTcpMessaging.CreateInputChannel(theIPforLocal & ":" & thePort)
Dim aStringMessagesFactory As IStringMessagesFactory = New StringMessagesFactory()
Dim aStringMessageReceiver As IStringMessageReceiver = aStringMessagesFactory.CreateStringMessageReceiver()
AddHandler aStringMessageReceiver.MessageReceived, AddressOf StringMessageReceived
aStringMessageReceiver.AttachInputChannel(anInputChannel)
End Sub
Private Shared Sub StringMessageReceived()
Call New frmMM().Show()
End Sub
End Class
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim RelState As Integer = 0
Call frmMain.Server.Main()
lblVer.Text = "V.7"
Pid = 0
End Sub
End Class
¿Cómo puedo cargar esto para que no me muestre ese error?
Gracias
David
Code update
Class Server
<STAThread()> Public Sub Main()
Dim aTcpMessaging As IMessagingSystemFactory = New TcpMessagingSystemFactory()
Dim anInputChannel As IInputChannel = aTcpMessaging.CreateInputChannel(theIPforLocal & ":" & thePort)
Dim aStringMessagesFactory As IStringMessagesFactory = New StringMessagesFactory()
Dim aStringMessageReceiver As IStringMessageReceiver = aStringMessagesFactory.CreateStringMessageReceiver()
AddHandler aStringMessageReceiver.MessageReceived, AddressOf StringMessageReceived
aStringMessageReceiver.AttachInputChannel(anInputChannel)
End Sub
Private Shared Sub StringMessageReceived()
Call New frmMM().Show()
End Sub
End Class
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim RelState As Integer = 0
Call frmMain.Server.Main() '<-- the error now
lblVer.Text = "V.7"
Pid = 0
End Sub
End Class