我的debugging器似乎运行不同的代码比我build立

我在Windows 7上使用Visual Studio 2010,用C ++编写。 在我的程序中,我有一个包含我在程序中经常使用的一堆函数的.dll文件。 最近我在修改.dll文件时遇到了一些麻烦。 每当我改变我的DLL中定义的函数时,程序生成并运行时,这些更改似乎不起作用。 也就是说,我相信我的DLL每次成功构build(或重build)我的解决scheme都不正确更新。

如果我试图在.cpp文件中的任何函数中设置一个断点(从用户代替一个DLL中隐藏的那个函数),visual studio会告诉我这些代码将不会被执行,并且不能设置断点那里。 不过,今天早些时候我可以在那里设置一个断点。

此外,我的function之一打印“帧接收”的Visual Studio中的debugging输出。 这仍然在发生,所以这个function的某些版本仍然有效。 所以我想连续10次打印“Frame Received”,看看我的修改是否真正生效。 奇怪的是,即使在build立和清理/重build之后,程序仍然只写一次“接收帧”,就好像它忽略了我的改变。

我不确定是什么原因造成的,但正如我所说的那样,它只是显示我的.dll没有被更新和/或Visual Studio使用.dll的旧版本,而不是最新的版本。 无论哪种方式,我不知道如何解决这个问题。 有任何想法吗?

编辑:我忘记提及,早些时候,在debugging时,我试图进入一个function,我无法放置断点,我被击中这个错误信息:

错误

建造的输出可能会进入其他目录。 – 检查你的outdir设置。