Я пишу библиотеку службы Wcf и хочу загрузить неуправляемую com dll. Длл ком резьба модель не установлена так его однопоточные компонент унаследованных, который работает только в главном STA threading modelНевозможно создать объект комком компонентов, записанный в неуправляемом коде с .Net wcf service
В ФОС службе, я поставил квартиру в ГНА like
Теперь, когда я пытаюсь создать экземпляр COM-компонент, это дает исключение
System.Runtime.InteropServices.SEHException : External component has thrown an exception.
Когда я отладки DLL ком и бросает ошибку RPC_E_WRONG_THREAD
.
Я могу исправить проблему, установив модель резьбы на Free Threaded Marshaller
. Но мне не разрешено изменять текущую модель потоков com dll.
Так что, пожалуйста, помогите мне, как я могу получить доступ к com dll из wcf-сервиса?
.Net Framework 4.0, Windows 7 x64
Infact я могу получить доступ к COM DLLs от простого C# консольное приложение, установив квартиру как STA, потому что я к нему доступ из главного потока, который соответствует потоковой модели из COM DLLs. – Amjad
, но в службе wcf я пытаюсь получить доступ к COM через рабочий поток (который является STA), поэтому его не получают доступа. так есть ли какой-либо способ доступа к COM из основного потока службы WCF ???? – Amjad