Visual Studio 2015 또는 2017에 IntelliSense 오류가 표시되지만 솔루션 컴파일
현재 새로운 Visual Studio 2015를 평가 중이며 IntelliSense에 이상한 문제가 발생했습니다. 새 스튜디오로 주요 솔루션을 컴파일하면 빌드가 성공하지만 그럼에도 6 가지 오류가 표시됩니다.
나는 그것이 실제 오류가 아니라 지능 오류라는 것을 발견했다. 코드는 정확하고 모든 것이 성공적으로 컴파일되었습니다. 그러나 코드는 빨간색으로 표시되고 오류 목록에 오류가 표시됩니다.
6 개의 오류는 모두 동일한 출처를 갖습니다. 간단한 생성자 호출입니다. 충분히 이상하지만 오류없이 정확히 동일한 생성자가 발생하는 경우도 있습니다.
오류 메시지 :
Code: CS1729
Message: '<the class>' does not contain a constructor that takes that many arguments.
Project: <the project name>
File: <the path to the file>
새로운 스튜디오는 레거시 소프트웨어없이 VS7없이 새로 설치된 Windows 7에 설치되었습니다.
이미 캐시를 지우고 suo 파일을 삭제하고 bin 및 obj 디렉토리를 삭제하고 솔루션 등을 정리하고 다시 작성하려고 시도했지만 아무것도 작동하지 않았습니다.
누구든지 저에게 그 행동을 설명 할 수 있습니까?
마이그레이션 된 프로젝트 에서도이 문제가 발생하여 Microsoft.CSharp dll을 참조했습니다. 일부 프로젝트에서는 프로젝트에서 참조를 제거했다가 다시 추가해야했습니다.
나는 수천 개의 intellisense 오류와 0 빌드 오류가있었습니다. .suo
파일을 삭제 하고 다시 시작한 후 IntelliSense 오류가 사라졌습니다.
Suo
파일은 소스에서 상대적으로 다음 위치에 있습니다. .vs\SolutionName\v14\.suo
의견에 따르면 : *.suo
숨겨진 파일 임을 명심 하십시오.
편집 : 의견에 따르면 VS2017에는 동일한 문제가 있으므로 유사한 솔루션을 사용할 수 있습니다 : 삭제.vs\SolutionName\v15\.suo
Visual Studio 2017 ASP.Net Core Project에서 비슷한 문제가 발생했습니다. 다음 단계는 나를 위해 속임수를 썼다.
- 깨끗한 솔루션을 수행
- VS 닫기
- .suo 파일 삭제 및 bin / obj 디렉토리 삭제
- VS 재개
다른 사람과 비슷한 문제이지만 해상도가 다릅니다. 다른 사람을 도울 수있는 경우에 게시.
Visual Studio 2017 실행 15.5.2. Git을 사용하고 자주 분기를 전환합니다. 몇 주 전에 편집자가 오류를 표시하기 시작했습니다 (참조가 유효하더라도 찾을 수없는 유형과 관련된 모든 것). 컴파일은 훌륭하게 작동했습니다. VS 2017 15.6 Preview (Jan 6, 2018)에서 동일한 문제를 확인했습니다. 캐시, SUO 파일 또는 bin / obj 폴더를 삭제하려고 시도했지만 아무런 영향을 미치지 않습니다. 처음에는 작동하는 것처럼 보입니다. Visual Studio를 다시 열면 모든 것이 좋아 보일 것입니다. "Rebuild Solution"을 사용하면 IntelliSense 오류가 반환됩니다. 심지어 Visual Studio를 제거 / 다시 설치하려고했습니다.
동일한 버전의 Visual Studio를 사용하는 두 대의 컴퓨터에서 동일한 문제가 발생했습니다.
누락 된 유형에 대한 오류를 살펴보면 모두 두 개의 참조 된 프로젝트에서 나온 것으로 보입니다. 이러한 참조 중 하나는 솔루션의 다른 모든 프로젝트에서 사용하는 공유 프로젝트이지만 그 중 하나는 많은 참조가없는 작은 프로젝트였습니다. 작은 프로젝트도 더 큰 공유 프로젝트에 의해 참조되었습니다. Visual Studio에서 작은 프로젝트를 언로드했다가 다시로드했습니다. 오류가 사라졌습니다! Rebuild Solution에서 오류가 발생하지 않았습니다.
그런 다음 Git 브랜치를 전환하고 오류가 모두 발생했습니다. 다행히도 작은 프로젝트를 언로드 / 다시로드하는 위의 단계를 반복하여 오류가 사라졌습니다.
Git 분기를 전환 할 때마다 해당 프로세스를 반복 할 때까지 오류가 다시 발생합니다. 언로드 / 리로드하는 더 작은 프로젝트를 위해 Git 브랜치 사이에는 아무런 변화가 없습니다. 그 순서가 왜 내 문제를 해결하고 있는지 확실하지 않습니다.
또한이 문제 (특정 오류 메시지가 아닌 제목)와 편집기의 구불 구불 한 줄이있었습니다. 첫 번째 구불 구불 한 줄은 첫 번째 #include
명령문 아래에 있으며 사전 컴파일 된 헤더의 이름을 지정합니다. Intellisense는 사전 컴파일 된 헤더를 포함하지 않지만 오류로 나열하지는 않습니다. 대신 사전 컴파일 된 헤더의 선언에 의존하는 코드에서 파일 아래로 오류를 나열합니다.
Intellisense가 내 환경에서 사전 컴파일 된 헤더를 찾지 못하는 이유는 명명 된 헤더가 실제 파일이 아니기 때문입니다. 사전 컴파일 된 헤더 설정이 올바르게 구성되어있는 한, 내가 사용한 다른 VC 또는 gcc 버전이나 2015 컴파일러에있을 필요는 없습니다. 분명히 Intellisense에는 더 이상 없습니다. 2013 년에 그것이 다르다는 것을 완전히 확신하지 못합니다. 아마도 결코 눈치 채지 못했습니다.
이 문제가 여기에보고 될 가능성은 적지 만, 해결책은 간단합니다. #include
지시어에 지정된대로 사전 컴파일 된 헤더의 pretend-name으로 작은 파일을 만들고 해당 파일에 사전 컴파일 된 헤더의 실제 이름을 포함 시키십시오.
궁금하다면 ... 왜 '#include'문의 사전 컴파일 된 헤더 이름과 사전 컴파일 된 헤더의 실제 파일 이름을 구분해야합니까? 미리 컴파일 된 헤더 설정이 올바르게 구성되어 있기 때문입니다. 미리 컴파일 된 헤더가 "#included"인 곳에는 포함 할 수있는 파일이 없습니다. 실제로 사전 컴파일 된 (이진) 버전의 실제 헤더를 읽거나 컴파일에 실패합니다. 분명히 단점은 Intellisense뿐만 아니라 사람들 이 코드를 읽는 것을 혼란스럽게한다는 것 입니다.
Visual Studio 2017 위치 .vs \ SolutionName \ v15.suo에서 ".suo"파일을 삭제 한 다음 Visual Studio를 다시 시작했습니다. 이것은 나를 위해 일했습니다.
오늘 나는 MSVC ++ 2015와 비슷한 문제를 겪었습니다. IDE 힌트없이 거의 포기하고 계속하기로 결정했지만 때로는 문제가있는 하위 프로젝트의 stdafx.h에 표준 라이브러리 헤더가 포함되어 있지 않음을 알았습니다. 모듈 컴파일 속도가 느려질 수 있다고 제안했지만 표준 헤더를 포함하면 Intellisense도 수정되었습니다.
stdfax.h
추가 포함 디렉토리에 여러 개가 있었습니다 . stdafx.h
당신이 의도 한 것이 당신의 첫 번째 길 인지 확인하십시오 .
다른 Visual Studio 버전에서 비슷한 문제가 발생했습니다.
.suo 또는 .vs 폴더를 삭제해도 도움이되지 않았습니다.
나를위한 해결책은 Extension StopOnFirstBuildError가 활성화되어 있다는 것입니다. 빌드 메뉴에서 "빌드 첫 번째 오류 중지"를 해제하고 솔루션이 완전히 빌드 된 후 Intellisense가 표시 한 오류가 사라졌습니다.
I was seeing the intellisearch errors only when publishing a website. (ASP/C# site, VS 2017). They broke the publish. Site ran fine locally.
Cleared the errors by unchecking the setting to pre-compile, and it published fine. Publish -> Setting -> File Publish Options -> Precompile during publishing
'programing tip' 카테고리의 다른 글
일반 링크를 사용하여 양식을 제출하십시오. (0) | 2020.07.21 |
---|---|
NGINX는 프록시 웹 소켓을 역전시키고 SSL을 활성화합니까 (wss : //)? (0) | 2020.07.21 |
네비게이션 바가없는 UINavigationController? (0) | 2020.07.21 |
컴퓨터 과학의 맥락에서 '조건 자'는 무엇을 의미합니까? (0) | 2020.07.21 |
Visual Studio에서 직접 실행 창을 어떻게 사용합니까? (0) | 2020.07.20 |