当我在VS2012中调试它时,WCF运行正常。引用是可以的,但是当我在IIS中发布它时服务无法解析引用..在发布的输出文件夹中,没有这些dll,我不知道它是否正常。
我发现这个错误:“没有se pudo recuperar el generador de clases COM para el componente con CLSID {9A8831F1-A263-11D1-8DCF-00A0C90FFFC2} debido al siguiente error:80040154 Clase no registrada(ExcepcióndeHRESULT:0x80040154( REGDB_E_CLASSNOTREG))“
答案 0 :(得分:1)
最简单的方法是以管理员身份登录该服务器,并运行与您在开发计算机上获取的DLL相同的安装包。对于对DLL的引用,您可能不希望将Copy Local设置为true。安装COM对象时,它们在注册表中注册,这就是您需要管理员权限的原因。您将首先想要在DEV服务器上测试它!
如果您没有原始安装包,则可能需要使用Google DLLS,请确保获得正确的版本。
您只需执行此操作一次,然后就可以在不重新安装COM对象的情况下发布新版本的服务。
如果您希望能够轻松地安装到多台计算机上,您可以通过在解决方案中添加安装和部署项目来实现这一点,尽管DLL附带的安装程序可能是一个更好,更简单的选择
EDIT, 例如,我在Microsoft网站MSRdo20.cab
上找到了RDO 2.0的安装答案 1 :(得分:0)
您需要将这些程序集本地复制到构建输出。最简单的方法是在Visual Studio中更改它们:
答案 2 :(得分:0)
IIS不太可能访问您的文档文件夹。您必须将apppool身份读取权限授予持有dll的文件夹,或者取消注册它们并将其注册到其他位置。