我的一个COM EXE服务绝大多数用户都是正常的 只是在极个别用户机器上注册失败返回上面的错误
XP WIN7都遇到过 他们的机器上发生了什么。有人遇到过么。
我查看了exe嵌入的tlb 感觉一切正常

解决方案 »

  1.   

    atl exe的注册功能是自身实现的 (-RegServer)
    首先exe跑起来了那么静态依赖肯定没问题的 主要是再次从exe的resource里提取.tlb失败
      

  2.   

    HRESULT:0x80029C4A (TYPE_E_CANTLOADLIBRARY)
    tlb是不是依赖其他DLL文件等
      

  3.   

    这个type library 是嵌入在exe资源里的啊
    exe 都能起来 这个type library 为嘛加载不了。
      

  4.   

    idl 中接口都是采用oleautomation标注来实现列集的 没有proxy/stub dll
      

  5.   

    你看看在正常的机器上, 运行中的进程里头都加载了哪些 dll,
    先分析一下看看有没有可能在其他机器缺失的.
    比如 debug 版本的 crt 之类的
      

  6.   

    exe能起来不一定代表你的静态依赖一定就没问题了,我个人同样倾向于你的依赖环境有所缺失,但应该不是crt相关,如果用户许可,不妨在出问题的电脑上安装下开发环境,确认下到底是否是环境因素引起,如果问题依旧,那需要你自己去调试了。