我在xp下开发的控件,为何注册不了,我用命令:REGSVR32 
命令和文件名称,绝对正确,为何在2000SERVER上注册不了,提示:LoadLibrary(C:\ZXH\TEST.DLL)failed-找不到相应的模块。
请问出现这种情况,怎么解决,我在别的XP的机上,可以注册成功的

解决方案 »

  1.   

    控件和DLL库的开发和应用都最好不要用到中文字符。
      

  2.   

    看需要的dll在2000 server上是否不支持,用dependency 查一下
      

  3.   

    很可能是OCX的路径有空格,被截断.
    使用REGSVR32的时候最好用""试试.如
    regsvr32 "d:\soft\my ocx\myocx.ocx"
      

  4.   

    确实如zhang_zhibin(阿笨猫) 所说可能是放控件的路径有汉字,
    而且我觉得还是写清楚路径全名
      

  5.   

    1.dependency 查一下,确定是否有dll没注册
    2.如果是 release depandence, 没改atl 源码,有中文路径问题
      

  6.   

    你的某些开发库在win2K下没有,我感觉你的编译方式有问题不能用vs默认的编译环境的.你需要修改!
      

  7.   

    可能是楼主所注册的DLL目录下没有相应的DLL存在,因为在注册的时候如果你的COM DLL
    加载了其它的DLL,这时注册的时候是要检查的,不然就会跳出楼主所看到的错误。
      

  8.   

    查看你的应用程序是不是mfc想到建立的,假如是的话,把.tlb文件拷贝到dll文件同一目录下,ok
      

  9.   

    呵呵,是啊,为何MFC建立的,要这么做?
      

  10.   

    问题解决了,缺了下列DLL,
    mfc42 .dll  
    msvcrt .dll  
    kernel32.dll  
    user32 .dll  
    ole32 .dll  
    oleaut32.dll  
    atl .dll  
    winsock .dll  : newkey007(无限天空) ( ) 信誉:102  2004-6-27 12:25:43  得分: 0  
     
     
       
    1.dependency 查一下,确定是否有dll没注册
    非常正确!!!
      
     
      

  11.   

    这些都是系统和VC提供的DLL,怎么会没有注册?