学习dll两个工程分别为prog1 prog2 prog1向 out 文件夹生成一个dll文件prog2向 out 文件夹生成一个exe文件prog2 使用prog1 的动态链接库函数问题是:prog1先rebuilt 生成dll 然后prog2 rebuilt 生成exe这时会把先前的dll文件删除  反过来生成了dll会自动删掉exe文件两个工程的文件名 放置文件夹 都不一样 只有输出的文件夹是一样的  这是为什么
如果我修改prog1 的输出路径 待输出后单独把dll和lib文件拷贝到对应目录下  再生成prog2  就不会删掉这个dll文件

解决方案 »

  1.   

    没碰到过
    看看ide的设置,编译链接前后都有什么事件
      

  2.   

    两个工程的文件名 放置文件夹 都不一样 只有输出的文件夹是一样的
    ----------------------------------------------------------
    你组织架构为什么这样搞呢?你可以用一个解决方案,其中包括prog1 和 prog2两个工程项目 不行吗?
      

  3.   

    中间文件不要输出到out下,放到各个工程的release下即可,你看看你编译器的中间文件输出路径设置即可
      

  4.   

    “prog2 rebuilt 生成exe时会把先前的dll文件删除”??怎么回事?
      

  5.   

    可能是因为执行rebuild时执行了清理工作吧,默认的清理动作为删除*.dll, *.exe,所以你可以选择build,而不要用“rebuild”。而且一般情况下,rebuild只会清理工程目录下的*.dll或*.exe,所以你可以将生成的dll
    和exe输出到这两个工程目录之外的目录,试下吧。
      

  6.   

    两个工程放到了同一个Solution下 其他的不变
    按8楼的做法  无论是rebuild还是build 都会清理掉 lib dll这两个文件两个工程分别放到两个Solution下 其他不变
    按8楼的做法  rebuild会清理dll和lib  build没有清理  生成成功  谢谢!两个工程分别放到两个Solution下 还原了prog1的输出dll lib的目录 prog1生成之后再拷贝
    这时prog2 rebuild就不会删除dll和lib还是不知道为什么