How are you creating and starting the thread? I'm guessing that you're probably doing something like this:
Dim workerThread As Thread = New Thread(AddressOf MyThreadFunc)
workerThread.Start()
If so, try doing something like this:
Dim workerThread As Thread = New Thread(AddressOf MyThreadFunc)
workerThread.ApartmentState = ApartmentState.STA
workerThread.Start()
If you're using the ActiveX controls in another thread, the apartment state needs to be STA. You can only set the ApartmentState property when the thread is in an unstarted or running state and it can only be set once per thread, so that's why you need to set the property before you actually start the thread.
Please give this a try and post what the results we
re. If this doesn't work, please post a code snippet that shows how you're creating the thread and creating/calling the COM objects. Thanks.
- Elton