情况是这样的,ocx依赖一些DLL库,这些库和OCX不处于同级目录下,比如说OCX的路径是C:\myocx\xxx.ocx,而DLL的路径是C:\myocx\mydll\xxx.dll,请问这种情况下如何打CAB包,inf文件怎么写?技术上是否可行?
目前只能给40分,如果有好的解答,我会追加分数的

解决方案 »

  1.   

    COM讲究的是位置透明啊,如果是普通的dll,那就依靠LoadLibrary来处理不同路径的dll。
      

  2.   

    没写过这种inf,
    一般是直接把dll塞到system32下,
    能不能重新生成ocx,dll使用当前目录,打包的时候把dll全部拷到当前文件夹下。
      

  3.   

    其实不用这么麻烦啊,你把dll位置改一下就可以了。ocx被下载到客户端后,解包,然后自动的被安装到system32目录下,cab包中的类容也会一起放到那个目录下,也就是ocx和dll 这个时候会在同一级目录下了,所以....
      

  4.   

    现在的问题是位置不能改,由于产品要给不同的同级部门用,而每个部门依赖的DLL库是不一样的(其中有可能有重复的),所以DLL要分开放在不同的文件夹下,即一个部门需要依赖的DLL用一个文件夹。
      

  5.   

    先把dll都重命名,防止冲突,下载的时候在同一个目录,然后再对应的拷贝到不同的目录下面去