코드 분석 도구를 사용하여 응용 프로그램 품질 분석
코드 분석 창은 Visual Studio 2013의 모든 버전에서 사용할 수 있습니다.
코드 분석 기능
코드 분석 창 |
이제 코드 분석 도구 창에 코드 분석 경고가 나타납니다.이 창에서는 코드 분석 경고를 관리 및 해결할 수 있습니다. |
경고 메시지 필터링 |
창에서 키워드, 프로젝트 및 심각도별로 코드 분석 창의 메시지를 필터링할 수 있습니다. |
코드 편집기 강조 표시 |
코드 분석 창에서 메시지를 선택하면 메시지가 트리거된 줄이 소스 코드 편집기에서 강조 표시됩니다. |
C++ 메시지 표시 안 함 |
코드 분석 창에서, 선택한 경고를 표시하지 않는 pragma를 소스 코드에 삽입할 수 있습니다. |
C++ 규칙 집합 |
이제 관리 코드와 같이, 규칙 집합을 만들거나 사용하여 코드 분석 실행에 적용하려는 분석 규칙을 지정할 수 있습니다. |
Windows 스토어 앱에 대한 지원
Windows 스토어 앱에서 Visual Basic, C# 및 C/++ 코드에 대한 코드 분석을 실행할 수 있습니다.자세한 내용은 Windows 개발자 센터에서 Visual Studio 코드 분석을 사용하여 Windows 스토어 앱의 코드 품질 분석을 참조하세요.
새 C++ 동시성 경고
새 동시성 경고는 다중 스레드 C/C++ 프로그램에서 잠금 분야를 확인하는 데 도움이 됩니다.분석기는 잠재적 경합 상태, 잠금 순서 반전, 호출자/호출 수신자 잠금 계약 위반, 일치하지 않는 동기화 작업 등의 많은 동시성 버그를 검색합니다.
경합 상태.<var> 변수는 <lock> 잠금으로 보호되어야 합니다. |
|
<var> 변수에 연관 작업을 적절하게 사용할 수 없습니다. |
|
잠금 순서 위반.<level> 수준으로 <lock> 잠금을 가져오면 순서가 반전됩니다. |
|
호출자가 <func> 함수를 호출하기 전에 <lock> 잠금을 유지할 수 없습니다. |
|
호출자가 <func> 함수를 호출하기 전에 <lock> 잠금을 해제할 수 없습니다. |
|
호출자가 <func> 함수를 호출하기 전에 잠금을 유지할 수 없습니다. |
|
<func> 함수에서 <lock> 잠금을 해제할 수 없습니다. |
|
<func> 함수에서 <lock> 잠금을 가져오거나 유지할 수 없습니다. |
|
<func> 함수에서 유지되지 않은 <lock> 잠금을 해제합니다. |
|
<func> 함수에서 주석 _Requires_lock_held_(<lock>) 또는 _No_competing_thread_가 누락되었습니다.누락되지 않은 경우 경합 상태일 수 있습니다.<var> 변수는 <lock> 잠금으로 보호되어야 합니다. |
|
<func> 함수에서 <annotation> 주석이 누락되었습니다. |
|
동시성 SAL 주석 오류 |
|
호출자가 <func> 함수를 호출하기 전에 <lock> 잠금을 유지할 수 없습니다. |
|
잠금을 해제할 수 없습니다. |
|
<func> 함수에서 <lock> 잠금을 가져오거나 유지할 수 없습니다. |
|
<func> 함수에서 유지되지 않은 <lock> 잠금을 해제할 수 있습니다. |
|
드라이버 모듈에서 현재 함수가 함수의 잘못된 형식인 것으로 유추했습니다. |
|
NULL 포인터 역참조 |
단원 내용
관리 코드 분석
관리 코드에 대한 코드 분석에서는 Microsoft .NET Framework 디자인 지침에 명시된 프로그래밍 및 디자인 규칙의 위반과 같은 관리되는 어셈블리 관련 정보를 제공합니다.경고 메시지는 관련 프로그래밍 및 디자인 문제를 식별하며 가능한 경우 문제 해결 방법에 대한 정보를 제공합니다.
코드 분석을 사용하여 관리 코드 품질 분석
관리 코드 분석 도구를 구성하고 실행하는 방법에 대해 알아봅니다.관리 코드 경고에 대한 코드 분석 코드 분석에서 C/C++ 코드에 대해 보고하는 경고를 설명합니다.
C++ 코드 분석
C/C++ 코드 분석 도구는 C/C++ 소스 코드에서 발생할 수 있는 오류에 대한 정보를 개발자에게 제공합니다.이 도구를 통해 보고되는 일반적인 코딩 오류에는 버퍼 오버런, 초기화되지 않은 메모리, null 포인터 역참조, 메모리 및 리소스 누수 등이 포함됩니다.
코드 분석을 사용하여 C/C++ 코드 품질 분석
C/C++ 코드 분석 도구를 구성하고 실행하는 방법에 대해 알아봅니다.C/C++용 코드 분석 경고
코드 분석에서 C/C++ 코드에 대해 보고하는 경고를 설명합니다.
드라이버에 대한 코드 분석
코드 분석 도구는 드라이버 소스 코드를 체계적으로 분석하여 안정성과 드라이버의 신뢰성을 향상시킬 수 있습니다.
Analyzing Driver Quality by Using Code Analysis Tools
드라이버에 대한 코드 분석은 기본적인 C 및 C++ 프로그램의 오류 코드를 감지하고 (주로) 커널 모드 드라이버 코드에서 오류를 검색하도록 설계된 특수한 모듈을 포함하는 컴파일 시간 정적 확인 도구입니다.SDV(정적 드라이버 확인 프로그램)는 Windows 커널 모드 드라이버의 소스 코드를 체계적으로 분석하는 정적 검증 도구입니다.SDV는 드라이버가 Windows 운영 체제 커널과 제대로 상호 작용하는지 여부를 결정합니다.Code Analysis for Drivers Warnings
드라이버에 대한 코드 분석이 드라이버 코드에서 가능한 오류를 검색할 때 보고하는 경고에 대해 설명합니다.