TypeLoadException в приложении магазина Windows
Я использую Winmd (компонент среды выполнения Windows) в приложении магазина Windows. Когда я пытаюсь создать экземпляр типа, который определен в winmd, я получаю следующее исключение:
System.TypeLoadException was unhandled by user code
HResult=-2146233054
Message=Requested Windows Runtime type 'SmartTech.BrokeredProxy.EnterpriseServer' is not registered.
Source=mscorlib
TypeName=SmartTech.BrokeredProxy.EnterpriseServer
InnerException: System.Runtime.InteropServices.COMException
HResult=-2147221164
Message=Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))
ErrorCode=-2147221164
InnerException:
Я добавил все ссылки, которые мне нужны, и внес соответствующие изменения в файл манифеста. Я что-то пропустил? У кого-нибудь есть идея, что вызывает это?
1 ответ
Я знаю, что эта ошибка обычно указывает на то, что компонент не зарегистрирован. т.е. regsvr32 "path of the component"
но для приложения win 8 не уверен, что оно полностью применимо.
Другой случай, когда я столкнулся с подобными проблемами, связан с конфликтами 32-битных / любых процессоров.
компонент может быть 32-разрядным компонентом, а Visual Studio может компилироваться с параметром "Любой процессор". Попробуйте изменить "Target CPU" на x86 из свойств проекта и посмотрите, возникает ли проблема.
Project -> Properties -> Build tab -> Platform Target -> Any CPU to x86