问题一:关于DLL文件的引用
在安装文件夹内
APIObject.dll==>RTXSAPI.dll 服务器API接口
RTXCAPI.DLL ==> 客户端API接口
问题二:RTX二次开发运行代码
RootObj = new RTXSAPIRootObj(); //创建根对象
出现错误
RootObj = new RTXSAPIRootObj(); //创建根对象
出现错误
检索 COM 类工厂中 CLSID 为 {79210E58-99EB-45D0-8890-763EFEAA143F} 的组件时失败,原因是出现以下错误: 80040154。
方法一: 调用com+的时候,对COM 组件的调用返回了错误 HRESULT E_FAIL
原因:调用rtx组件实现登陆的时候,需要对NTFS文件夹进行权限配置
解决办法:
1. 在控制面板--->管理工具--->服务 中,开启Distributed Transaction Coordinator 服务。
2. 打开控制面板--->管理工具--->组件服务--->选择计算机--->我的电脑--->右击属性--->选择MSDTC--->选择安全配置勾选事务管理器通信中的允许出站、允许入站和不要求进行验证。
如下图所示:
重启IIS
原因:调用rtx组件实现登陆的时候,需要对NTFS文件夹进行权限配置
解决办法:
1. 在控制面板--->管理工具--->服务 中,开启Distributed Transaction Coordinator 服务。
2. 打开控制面板--->管理工具--->组件服务--->选择计算机--->我的电脑--->右击属性--->选择MSDTC--->选择安全配置勾选事务管理器通信中的允许出站、允许入站和不要求进行验证。
如下图所示:
重启IIS
方法二:
本地IIS没问题,发布到虚拟机上又出问题。
当时一共测试了2个虚拟机,都是WinServer2008 X64 的,结果就是无法获取到sessionkey。抛出异常为“检索 COM 类工厂中 CLSID 为 {79210E58-99EB-45D0-8890-763EFEAA143F} 的组件时失败,原因是出现以下错误: 80040154”。这个问题烦了我好久,在网上也搜到了这个问题,不过给的解决方案无效,于是发了E-Mail给腾讯通技术,回复说是RTX SDK dll是32位的,默认VS采用ANY CPU编译,如果这种模式编译,在64位系统上会出现异常,可以改为X86编译。
当然最后我还是用的WinServer2003 X86的虚拟机解决问题的。
问题三:
解决方案是:
AppConnConfig.xml 添加服务器地址(本机地址)
<APIClient>
<IPLimit Enabled="1">
<IP>127.0.0.1</IP>
<IP>192.168.1.111</IP>
</IPLimit>
</APIClient>
添加后请切记重启所有服务。
注意如果开发过程中遇到Question请检查一下三个Files:
AppConnConfig.xml、SDKProperty.xml、SDKServer.ini