You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用J-INTEROP开发Android OPC DA客户端遇JIException错误求助

解决J-INTEROP连接KepServerEX V4时的0xC0000034错误

针对你遇到的org.jinterop.dcom.common.JIException: The object name is not found [0xC0000034]错误,结合PC客户端可正常连接的情况,可按以下步骤排查解决:

  • 验证ProgID与CLSID的匹配性
    服务器端的ProgID可能存在变体,直接使用CLSID替代ProgID尝试连接。在KepServer所在Windows服务器的注册表中,定位HKEY_CLASSES_ROOT\KEPware.KEPServerEx.V4\CLSID,复制对应的CLSID值,然后修改代码:

    val comServer = JIComServer(JIClsid.valueOf("这里填复制的CLSID"), "192.168.1.11", session)
    

    若使用CLSID可连接,说明ProgID在Android端的J-INTEROP解析存在问题。

  • 检查DCOM端口与防火墙配置
    确保Windows服务器防火墙允许Android设备访问以下端口:

    • DCOM默认端口135
    • KepServer DCOM配置中指定的动态端口范围(可在KepServer的DCOM属性→“终结点”中设置固定端口范围,避免动态端口的防火墙拦截)
      同时确认Android设备与服务器在同一网络,无VPN、网络隔离等限制导致端口无法访问。
  • 修正会话账号配置
    确保J-INTEROP会话的用户名包含服务器主机名/域名前缀,避免本地账号解析错误:

    session.setUserName(JIString("服务器主机名\有权限的用户名"))
    session.setPassword(JIString("对应密码"))
    

    该账号需已在Windows服务器的DCOM权限设置及KepServer的OPC访问权限中配置允许远程连接。

  • 确认KepServer的远程访问设置
    打开KepServerEX管理界面,进入“OPC Settings”→“DA Settings”,确保勾选“Allow Remote Clients”选项,同时检查“Security”标签页中已添加Android端使用的账号权限。

  • 排查J-INTEROP版本兼容性
    若使用较旧版本的J-INTEROP,可能存在Android平台的DCOM解析兼容性问题,尝试升级至最新稳定版本后重新测试。

内容的提问来源于stack exchange,提问作者Ariel Violla

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 05:25:22