各位大大好!
   我现在遇见一个问题,就是有一个比较大的系统,现在要再加进来几个人开发,但我不想让他们看到所有的源代码,他们只需要查看、调试自己需要的模块的代码就行了,要怎么才能做到呢?
   我的系统最终生成的是EXE,不是用的DLL,如果是SVN来控制读取权限的话,dpr中的Uses列表怎么处理呢?总不能一直把Uses列表改来改去吧?而且如果各个单元在不同的文件夹中,添加起来也是很麻烦的?大家有没有遇见过类似的问题呢?是怎么处理的呢?

解决方案 »

  1.   

    提供dcu,能让他编译就行,或者提供接口,他只负责他的模块开发就行了
      

  2.   

    用dcu是个好方法,不过为什么直接把已生成的dcu拿过来不能用呢?要重新生成一遍,再删除pas和dfm,这时候的dcu才能用?是哪里需要设置吗
      

  3.   

    我上面的说法不对,应该是带窗体的Pas生成的DCU不能用,需要有dfm文件才行
      

  4.   

    还有个问题,如果是只用dcu和dfm的话,基类窗体的继承怎么处理呢?
      

  5.   

    基类窗体的继承怎么处理?
    实在不了解需要处理什么。我们公司就是用 dcu 管理源代码, 你可以设置 dcu 输出目录,然后在共享里提供开发人员下载。
    开发人员每天更新一次 dcu, 以保证库永远都是最新的。
    带窗体的 dcu 提供 dfm, 其他没有需要注意的了。dcu 有的时候可能会出现冲突, 主要是由于本机所引用的 dcu 和共享中的不匹配, 到时你更新一下就好了
      

  6.   

    呵呵,是这样的,因为我项目中有个窗体是所有窗体的基类,刚才测试了下,将这个基类窗体的pas删掉,编译能通过,但是打不开这个窗体了,同时也不能再新建基于此窗体的窗体,这个问题怎么处理呢?
      

  7.   

    楼主对一小部分基础不是很清楚
    好的源码管理是不需要保护窗体代码的。核心代码不开放就行
    而且保护代码不要引用经常变动的单元文件。。
    尽量能保持独立性,可以用事件弥补扩展性。。
    至于基类、、、编译好后。。只用dcu和dfm就可以了、、
    而且基类最好是保持抽象方法就好。。不需要实现太多。。
      

  8.   

    同意楼上,核心算法都在DLL里实现。至于自己定义的基类啊,界面实现啊之类的有必要保密么?再就是把核心的部分做成组件不就完了?