有好几个自行开发的OCX控件和DLL函数库,版本在不断更新。
每次一键恢复系统,或在新的机器上安装。都不得不重新编译这些控件和函数库才能让项目运行起来(提示版本不对,无法调出控件)。
用安装包把新版的自定义控件注册进去好象行不通。

解决方案 »

  1.   

    需要一个快速批量的实现的方法。有时候要紧急出差,得快速把开发环境转移到笔记本上,这时候就很烦人。
    有一次到了那边才发现有一个控件不行,结果又得让人MAIL一个过来。
      

  2.   

    每个组件(工程)自己要设成二进制兼容模式,组件之间的引用要直接引用 Ocx/Dll 而不是在工程组中引用其它工程。
    安装被引用的先后关系做个 vbe.exe ???.vbp /make 的批处理是比较保险的做法。
      

  3.   

    二进制兼容不能解决问题,各个控件和DLL之间的依赖关系会出现问题。
    看来真的是要用批处理文件搞定它们了..........
      

  4.   

    二进制兼容只有在公共接口没有变化的情况下才可以单独替换组件。
    接口有变化大体上分两种情况:1)增加公共类/控件,或者增加公共类/控件中的公共方法/属性
    编译后的组件与前个版本可以保持向下兼容,其它组件如果对该组件调用的不变化(不大可能,否则增加功能做什么)不需要重新编译。
    这时编译结果中的 TypeLib 其实生成了一个新的版本(注意接口版本和组件版本是两码事),理论上可以无效地向下兼容,实际上接口版本过多后 Windows 自己就会出问题,这时候只能重做二进制兼容。2)有任何删除(更名可以认为是先删除再添加)公共类/控件,或者任何删除公共类/控件中的公共方法/属性,或者任何增删改公共方法/属性的参数
    编译后的组件无法与前个版本保持向下兼容,建议删除后重做二进制兼容;所有对该组件进行引用的工程都必须重新引用,编译。
      

  5.   

    管理的问题.一,VSS
    二,FinalBuilder 一个辅助编译工具有这二个,一切NO问题了。
      

  6.   

    下载试用FinalBuilder...........结贴。