请问一个动态库编译上的有关问题

请教一个动态库编译上的问题。
vs2005编译环境。有一个解决方案包含多个项目,某个项目A(是个dll工程)代码没有改动。这个A.dll的debug版本大概340k,release版本以前是116k,昨天再做其他修改时由于编译原因将整个解决方案全编译了一下,结果现在这个A.dll的release版本变成320k了。这个明显有问题,而且release版本在运行时程序会崩溃(会提示什么堆损坏,可能是由于某些dll有bug。),debug版本运行是没有问题。之前的备份编译出的A.dll是正常的,使用也没有问题,但在现在这个工程里编译老是320k。这种情况可能的原因是什么?搞了一天了,才找出是这个A.dll的问题,但不知为啥会这样?参照另外那个正确的编译设置都一样的

------解决方案--------------------
呵呵!这挺神奇的哦,竟然修改了dll文件
------解决方案--------------------
引用:
突然文件大了那么多,只能想到是原先动态链接的现在变成了静态链接


LZ或许可以试试将项目A完全独立出来独自编译,在独立出来的过程中或许容易找到问题所在
------解决方案--------------------
楼主说编译设置没变,那怎么会突然从动态链接编程静态链接呢?求解请问一个动态库编译上的有关问题
------解决方案--------------------
这个问题很复杂。A虽然没有修改,但是它可能依赖某个公共头文件的#if或者define。编译选项可能也对它有所影响,有时候为了追求效率编译的时候选择内联展开,实际运行的指令完全是不同的。

先分析下A的依赖关系,看看最近的改动都伤及到A的哪里。检查一下编译选项。