Похоже, вы либо определяете _DEBUG в конфигурации выпуска вашей сборки, либо напрямую вызываете _CrtDbgReport (), не заключая его в #ifdef _DEBUG.
http://msdn.microsoft.com/en-us/library/8hyw4sy7%28v=vs.80%29.aspx
Создает отчет с сообщением об отладке и отправляет отчет трем возможным адресатам (только в версии отладки).
Эта функция должна вызываться только в сборках отладки ...
В ответ на другие ваши вопросы, выпуск отладочной сборки обычно не вариант, потому что вам также нужно было бы поставлять MS Debug Runtime вместе с вашим двоичным файлом, и это не будет в вашем контракте на обслуживание с Microsoft.Кроме того, сборка не будет оптимизирована и, вероятно, будет работать на порядок медленнее, чем ваша сборка релиза ...
Вы можете воспроизвести эту ошибку с помощью следующего кода, он будет компилироваться как в режиме выпуска, так и в режиме отладки, но будетвыдает ошибку компоновщика в режиме релиза, аналогичную той, которую вы видите:
#define _DEBUG
#include "windows.h"
#include <crtdbg.h>
int _tmain(int argc, _TCHAR* argv[])
{
_CrtDbgReportW(_CRT_ASSERT, NULL, NULL, L"some module", NULL);
return 0;
}