Я работаю с большим консольным приложением.Решение содержит 5 проектов.Я добавляю 6-й проект для замены одного из существующих проектов, чтобы разрешить использование графического интерфейса.
Я получаю много ошибок компилятора C2011 относительно переопределения типа.В частности, они 'struct' type redefinitions
или '[function]: redefinition; different linkage
.Они приходят из заголовочных файлов ws2def.h
и winsock2.h
.
Я искал весь проект и все решение, где они включены, но я не вижу никаких #include <ws2def.h>
или #include <winsock2.h>
операторов, и ничего, что бы указывало на то, что они используются.
Однако в проект, который я заменяю, и в мой новый проект включены External Dependencies
папки / фильтры.И ws2def.h
, и WinSock2.h
существуют в этих фильтрах.Я не думаю, что наличие одного и того же файла, включенного в отдельные проекты в рамках одного решения, может вызвать эти проблемы.Кроме того, я получаю эти ошибки при сборке только моего нового проекта, то есть он все равно не должен видеть старый проект.
Основываясь на предоставленной мной информации, вы можете увидеть, где может возникнуть моя проблема?ложь?Это тот случай, когда эти заголовочные файлы должны быть #included
где-то внутри проекта, а я просто не вижу этого?Я рассмотрел удаление обоих заголовочных файлов из фильтра External Dependencies
, потому что, похоже, они мне не нужны.Есть ли другой, общий файл заголовка, который также включает эти файлы заголовка, чтобы они не отображались в CTRL-Find
?
Спасибо.