MSDN上写的很清楚.exp文件是为dll生成的包含导出信息的文件.而生成exe时也生成exp似乎没什么道理.当然.这个问题并不严重.因为他不会影响程序的运行.
这次又遇到这个问题.想着弄个明白吧.看看到底导出了什么信息.
并不是每个exe工程都会有这样的问题.但导致这种问题的可能情况很多.比如说如果链接了static_lib的ACE库.只要包含ACE的文件.就会有导出.如果链接的是dll版的ACE库.在使用宏ACE_NEW_RETURN时会有导出.如果没有链接任何库.那么如果在预编译头文件中包含<new>的话会有导出.
总之导出的结果都是一样.用depends可以看出.导出了一个函数名称为 ??4_Init_locks@std@@QAEAAV01@ABV01@@Z .
经过一番搜索.发现微软的在线支持曾经答复过这个问题.认定此问题为一些版本(比如2005sp1)的CRT的一个..嗯.他不认为这是一个BUG.因为他觉得没什么影响.
解决方案?..呵呵.只有打补丁包了..