SetupDiag

참고

이 문서는 300 수준 문서(보통 고급)입니다. 이 섹션의 전체 문서 목록은 Windows 업그레이드 오류 해결 을 참조하세요.

SetupDiag 정보

중요

SetupDiag를 수동으로 실행하는 경우 최신 버전의 SetupDiag를 실행하는 것이 좋습니다. 최신 버전은 다음 다운로드 링크를 통해 사용할 수 있습니다. 최신 버전을 실행하면 최신 기능이 보장되고 알려진 문제가 해결됩니다.

SetupDiag는 Windows 업그레이드가 실패한 이유에 대한 세부 정보를 가져오는 데 사용할 수 있는 진단 도구입니다.

SetupDiag는 Windows 설치 로그 파일을 검사하여 작동합니다. 이러한 로그 파일을 구문 분석하여 컴퓨터를 Windows로 업데이트하거나 업그레이드하지 못한 근본 원인을 확인하려고 합니다. SetupDiag는 업데이트에 실패한 컴퓨터에서 실행할 수 있습니다. 로그를 컴퓨터에서 다른 위치로 내보낸 다음 오프라인 모드에서 SetupDiag를 실행할 수도 있습니다.

SetupDiag는 현재 지원되는 모든 Windows 버전에서 Windows 설치 프로그램에 포함되어 있습니다.

업그레이드 프로세스 중에 Windows 설치 프로그램은 SetupDiag.exe포함한 모든 원본 파일을 %SystemDrive%$Windows.~bt\Sources 디렉터리로 추출합니다. 업그레이드에 문제가 있는 경우 SetupDiag가 자동으로 실행되어 오류의 원인을 확인합니다.

Windows 설치 프로그램에서 실행하는 경우 다음 매개 변수 가 사용됩니다.

  • /ZipLogs:False
  • /Format:xml
  • /Output:%windir%\logs\SetupDiag\SetupDiagResults.xml
  • /RegPath:HKEY_LOCAL_MACHINE\SYSTEM\Setup\SetupDiag\Results

결과 SetupDiag 분석은 의 레지스트리 HKLM\SYSTEM\Setup\SetupDiag\Results및 에서 %WinDir%\Logs\SetupDiag\SetupDiagResults.xml 찾을 수 있습니다.

참고

Windows 설치 프로그램이 SetupDiag를 자동으로 실행하면 SetupDiag를 수동으로 실행할 때 레지스트리 경로가 기본 레지스트리 경로와 동일하지 않습니다. SetupDiag가 수동으로 실행되고 매개 변수가 /RegPath 지정되지 않은 경우 데이터는 의 HKLM\SYSTEM\Setup\MoSetup\Volatile\SetupDiag레지스트리에 저장됩니다.

중요

SetupDiag에서 여러 오류가 발생했음을 나타내는 경우 로그 파일의 마지막 오류는 일반적으로 첫 번째 오류가 아니라 치명적인 오류입니다.

업그레이드 프로세스가 정상적으로 진행되면 정리 를 위해SetupDiag.exe포함한 원본 디렉터리가 %SystemDrive%\Windows.Old로 이동됩니다. 나중에 Windows.old 디렉터리가 삭제되면 SetupDiag.exe 제거됩니다.

요구 사항

  1. Windows의 대상 버전은 현재 지원되는 Windows 버전이어야 합니다. 원래 설치된 Windows 버전은 다음과 같은 경우 지원되지 않는 Windows 버전일 수 있습니다.

    • Windows의 대상 버전은 현재 지원되는 Windows 버전입니다.
    • Windows의 대상 버전으로 업그레이드는 원래 설치된 Windows 버전에서 지원됩니다.
  2. .NET Framework 4.7.2 이상을 설치해야 합니다. 특정 버전의 Windows와 함께 사전 설치된 .NET 버전을 확인하려면 .NET Framework 시스템 요구 사항: 지원되는 클라이언트 운영 체제를 참조하세요. 현재 설치되어 있는 .NET 버전을 확인하려면 방법: 설치된 .NET Framework 버전 확인을 참조하세요.

    다음 명령줄 쿼리를 사용하여 현재 설치된 .NET 버전을 표시할 수 있습니다.

    reg.exe query "HKLM\SOFTWARE\Microsoft\Net Framework Setup\NDP\v4" /s
    

    적어도 필요한 버전의 .NET이 설치되어 있는 한, 최신 버전이 설치된 경우를 포함하여 추가 작업이 필요하지 않습니다.

SetupDiag 사용

현재 컴퓨터에서 SetupDiag를 빠르게 사용하려면 다음을 수행합니다.

  1. 시스템이 요구 사항을 충족하는지 확인합니다.

  2. SetupDiag를 다운로드합니다.

  3. 웹 브라우저에서 파일로 수행할 작업을 묻는 경우 저장을 선택합니다. 기본적으로 파일은 다운로드 폴더에 저장 됩니다 . 원하는 경우 다른 이름으로 저장 을 사용하여 파일을 다른 위치에 저장할 수도 있습니다.

  4. SetupDiag 다운로드가 완료되면 파일이 다운로드된 폴더를 엽니다. 기본적으로 이 폴더는 다운로드 폴더로, 왼쪽 탐색 창의 빠른 액세스 아래에 파일 탐색기 표시됩니다.

  5. SetupDiag 파일을 두 번 클릭하여 실행합니다. 프로그램 실행을 승인하라는 메시지가 표시되면 예를 선택합니다.

파일을 두 번 클릭하여 실행하면 SetupDiag에서 분석을 완료하면 명령 창이 자동으로 닫힙니다. 대신 SetupDiag에서 생성하는 메시지를 검토하기 위해 창을 열어 두려면 두 번 클릭하는 대신 명령 프롬프트에 SetupDiag 를 입력하여 프로그램을 실행합니다. 명령 프롬프트에서 실행하는 경우 디렉터리를 SetupDiag가 있는 위치로 변경해야 합니다.

  1. SetupDiag가 컴퓨터를 진단하는 동안 명령 창이 열립니다. 이 프로세스가 완료되기를 기다립니다.

  2. SetupDiag가 완료되면 SetupDiag가 실행된 동일한 폴더에 두 개의 파일이 만들어집니다. 하나는 구성 파일이고 다른 하나는 로그 파일입니다.

  3. 메모장을 사용하여 로그 파일 SetupDiagResults.log 엽니다.

  4. 표시되는 정보를 검토합니다. 규칙이 일치하는 경우 이 정보는 컴퓨터를 업그레이드하지 못한 이유와 잠재적으로 문제를 해결하는 방법을 말할 수 있습니다. 텍스트 로그 샘플 섹션을 참조하세요.

오프라인 모드 및 고급 옵션으로 도구를 실행하는 방법에 대한 지침은 매개 변수예제 섹션을 참조하세요.

매개 변수

매개 변수 설명
/? 대화형 도움말 표시
/Output:[출력 로그 파일의 전체 경로 및 파일 이름] 이 선택적 매개 변수는 결과 로그 파일의 이름과 위치를 지정합니다. 출력 파일에는 SetupDiag의 분석이 포함되어 있습니다. 텍스트 형식 출력만 지원됩니다. UNC 경로는 SetupDiag 실행이 UNC 경로에 액세스할 수 있는 컨텍스트를 제공했습니다. 경로에 공백이 있는 경우 전체 경로를 큰따옴표(")로 묶어야 합니다. 예제는 예제 섹션을 참조하세요.

기본값: 지정하지 않으면 SetupDiag는 SetupDiag.exe 실행되는 동일한 디렉터리에 파일 SetupDiagResults.log 만듭니다.
/LogsPath:[로그에 대한 전체 경로] 이 선택적 매개 변수는 구문 분석할 로그의 위치와 오프라인 분석을 위한 로그 파일을 찾을 위치를 지정합니다. 이러한 로그 파일은 플랫 폴더 형식이거나 여러 하위 디렉터리를 포함할 수 있습니다. SetupDiag는 모든 자식 디렉터리를 재귀적으로 검색합니다. 기본값은 현재 시스템에서 로그를 확인하는 것입니다.
/ZipLogs:[True | False] 이 선택적 매개 변수는 SetupDiag.exe 결과와 구문 분석된 모든 로그 파일이 포함된 zip 파일을 만들도록 지시합니다. zip 파일은 SetupDiag.exe 실행되는 동일한 디렉터리에 만들어집니다.

기본값: 지정하지 않으면 'true' 값이 사용됩니다.
/Format:[xml | json] 이 선택적 매개 변수는 로그 파일의 출력 형식을 XML 또는 JSON으로 지정합니다. 이 매개 변수를 지정하지 않으면 텍스트 형식이 기본적으로 사용됩니다.
/Scenario:[Recovery | 디버그] 이 선택적 매개 변수는 사용된 인수에 따라 다음 두 항목 중 하나를 수행할 수 있습니다.

  • 복구는 SetupDiag.exe 다시 설정 및 복구 로그를 찾아서 처리하고 설정/업그레이드 로그를 무시하도록 지시합니다.
  • 버그에서는 필요한 디버그 이진 파일이 설치된 경우 메모리 덤프를 디버그하도록SetupDiag.exe지시합니다.
/자세한 이 선택적 매개 변수는 디버깅 정보, 추가 데이터 및 SetupDiag에 대한 세부 정보를 사용하여 현재 디렉터리에 진단 로그를 만듭니다. 기본적으로 SetupDiag는 주요 오류에 대한 로그 파일 항목만 생성합니다. /Verbose를 사용하면 SetupDiag에서 디버깅 세부 정보가 포함된 다른 로그 파일을 항상 생성합니다. 이러한 세부 정보는 SetupDiag 문제를 보고할 때 유용할 수 있습니다.
/NoTel 이 선택적 매개 변수는 SetupDiag.exe 진단 원격 분석을 Microsoft에 보내지 않도록 지시합니다.
/RegPath 이 선택적 매개 변수는 지정된 경로 아래의 레지스트리에 오류 정보를 추가하도록 SetupDiag.exe 지시합니다. 레지스트리 경로는 HKEY_LOCAL_MACHINE 또는 HKEY_CURRENT_USER 시작하고 권한 상승 수준 SetupDiag가 실행될 때 액세스할 수 있어야 합니다. 이 매개 변수를 지정하지 않으면 기본 경로는 HKLM\SYSTEM\Setup\MoSetup\Volatile\SetupDiag입니다.
/AddReg 이 선택적 매개 변수는 오프라인 모드에서 실행 중인 시스템의 레지스트리에 오류 정보를 추가하도록 SetupDiag.exe 지시합니다. SetupDiag는 기본적으로 온라인 모드에서만 레지스트리에 오류 정보를 추가합니다. 레지스트리 데이터는 달리 지정하지 않는 한 HKEY_LOCAL_MACHINE\SYSTEM\Setup\MoSetup\Volatile\SetupDiag 이동합니다.

참고

/Mode 매개 변수는 SetupDiag에서 더 이상 사용되지 않습니다.

이전 버전에서는 이 명령을 LogsPath 매개 변수와 함께 사용하여 SetupDiag를 오프라인 방식으로 실행하여 다른 컴퓨터에서 캡처된 로그 파일 집합을 분석하도록 지정했습니다. 현재 버전의 SetupDiag에서는 /LogsPath가 지정된 경우 SetupDiag가 오프라인 모드에서 자동으로 실행되므로 /Mode 매개 변수가 필요하지 않습니다.

  • 다음 예제에서 SetupDiag는 온라인 모드에서 기본 매개 변수를 사용하여 실행됩니다. 결과 파일은 SetupDiag가 실행되는 동일한 폴더에 SetupDiagResults.log .

    SetupDiag.exe
    
  • 다음 예제에서는 SetupDiag가 온라인 모드로 실행됩니다(이 모드는 기본값임). 현재(실패) 시스템에서 로그를 찾을 위치를 알고 있으므로 미리 로그를 수집할 필요가 없습니다. 결과에 대한 사용자 지정 위치가 지정됩니다.

    SetupDiag.exe /Output:C:\SetupDiag\Results.log
    
  • 다음 예제에서는 /Output 매개 변수를 사용하여 공백이 포함된 경로 이름에 결과를 저장합니다.

    SetupDiag /Output:"C:\Tools\SetupDiag\SetupDiag Results\Results.log"
    
  • 다음 예제에서는 SetupDiag가 오프라인 모드에서 실행되고 D:\Temp\Logs\LogSet1에 있는 로그 파일을 처리하도록 지정합니다.

    SetupDiag.exe /Output:C:\SetupDiag\Results.log /LogsPath:D:\Temp\Logs\LogSet1
    
  • 다음 예제에서는 오프라인 모드에서 복구 시나리오를 설정합니다. 이 예제에서 SetupDiag는 지정된 LogsPath 위치에서 다시 설정/복구 로그를 검색하고 /Output 매개 변수로 지정된 디렉터리에 결과를 출력합니다.

    SetupDiag.exe /Output:C:\SetupDiag\RecoveryResults.log /LogsPath:D:\Temp\Cabs\PBR_Log /Scenario:Recovery
    
  • 다음 예제에서는 온라인 모드에서 복구 시나리오를 설정합니다. 이 예제에서 SetupDiag는 현재 시스템에서 다시 설정/복구 로그를 검색하고 XML 형식의 출력 결과를 검색합니다.

    SetupDiag.exe /Scenario:Recovery /Format:xml
    
  • 다음 예제는 오프라인 모드의 예입니다. SetupDiag는 LogsPath 디렉터리에서 설정/업그레이드 로그 파일을 구문 분석하고 결과를 로 출력하도록 C:\SetupDiag\Results.txt지시됩니다.

    SetupDiag.exe /Output:C:\SetupDiag\Results.txt /LogsPath:D:\Temp\Logs\Logs1 /RegPath:HKEY_CURRENT_USER\SYSTEM\SetupDiag
    
  • 다음 예제는 온라인 모드의 예입니다. SetupDiag는 현재 시스템에서 설정/업그레이드 로그를 찾아 XML 형식으로 결과를 에 출력하도록 C:\SetupDiag\Results.xml지시됩니다.

    SetupDiag.exe /Output:C:\SetupDiag\Results.xml /Format:xml
    
  • 다음 예제는 매개 변수가 필요하거나 사용되지 않는 온라인 모드의 예입니다. SetupDiag는 현재 시스템에서 설정/업그레이드 로그를 찾고 결과를 SetupDiag가 있는 동일한 디렉터리에 출력하도록 지시됩니다.

    SetupDiag.exe
    
  • 다음 예제는 오프라인 모드 다시 설정/복구의 예입니다. SetupDiag는 지정된 LogsPath 위치에서 재설정/복구 로그를 찾도록 지시됩니다. 그런 다음 결과를 /Output 매개 변수로 지정된 디렉터리에 출력합니다.

    SetupDiag.exe /Output:C:\SetupDiag\RecoveryResults.log /LogsPath:D:\Temp\Cabs\PBR_Log /Scenario:Recovery
    
  • 다음 예제는 초기화/복구 온라인 모드의 예입니다. SetupDiag는 현재 시스템에서 다시 설정/복구 로그를 찾고 결과를 XML 형식으로 출력하도록 지시됩니다.

    SetupDiag.exe /Scenario:Recovery /Format:xml
    

로그 파일

Windows 설치 로그 파일 및 이벤트 로그에는 Windows 설치 중에 로그가 만들어지는 위치에 대한 정보가 있습니다. 오프라인 처리의 경우 전체 폴더의 내용에 대해 SetupDiag를 실행해야 합니다. 예를 들어 업그레이드에 실패한 시기에 따라 다음 폴더 중 하나를 오프라인 위치에 복사합니다.

  • \$Windows.~bt\sources\panther
  • \$Windows.~bt\Sources\Rollback
  • \Windows\Panther
  • \Windows\Panther\NewOS

부모 폴더와 모든 하위 폴더가 복사되면 SetupDiag는 모든 하위 디렉터리에서 로그 파일을 자동으로 검색합니다.

버그 검사 분석 설정

Microsoft Windows에서 안전한 시스템 작업을 손상시키는 조건이 발견되면 시스템이 중단됩니다. 이 조건을 버그 검사 호출합니다. 이 조건을 일반적으로 시스템 크래시, 커널 오류, 중지 오류 또는 BSOD라고도 합니다. 일반적으로 하드웨어 디바이스, 하드웨어 드라이버 또는 관련 소프트웨어로 인해 이 오류가 발생합니다.

시스템에서 크래시 덤프를 사용하도록 설정 하면 크래시 덤프 파일이 만들어집니다. 업그레이드 중에 버그 검사 발생하면 Windows 설치 프로그램에서 미니덤프(setupmem.dmp) 파일을 추출합니다. SetupDiag는 이러한 설정 관련 미니덤프를 디버그할 수도 있습니다.

설치 관련 버그 검사 디버그하려면 다음을 수행합니다.

  • /LogsPath 매개 변수를 지정합니다. 메모리 덤프는 온라인 모드에서 디버그할 수 없습니다.

  • 실패한 시스템에서 설치 메모리 덤프 파일('setupmem.dmp)을 수집합니다.

    Setupmem.dmp는 버그 검사 발생하는 시기에 따라 %SystemDrive%$Windows.~bt\Sources\Rollback 또는 %WinDir%\Panther\NewOS\Rollback에서 만들어집니다.

  • SetupDiag를 실행하는 컴퓨터에 Windows 디버깅 도구를 설치합니다.

다음 예제 setupmem.dmp 에서는 파일이 디렉터리에 복사 D:\Dump 되고 SetupDiag를 실행하기 전에 Windows 디버깅 도구가 설치됩니다.

SetupDiag.exe /Output:C:\SetupDiag\Dumpdebug.log /LogsPath:D:\Dump

알려진 문제

  • 관련된 로그 파일이 큰 경우 일부 규칙은 처리하는 데 시간이 오래 걸릴 수 있습니다.

샘플 출력

다음 명령은 SetupDiag가 오프라인 모드에서 실행되는 예제입니다.

D:\SetupDiag>SetupDiag.exe /output:c:\setupdiag\result.xml /logspath:D:\Tests\Logs\f55be736-beed-4b9b-aedf-c133536c946e /format:xml

SetupDiag v1.7.0.0
Copyright (c) Microsoft Corporation. All rights reserved.

Searching for setup logs...
Found d:\tests\Logs\f55be736-beed-4b9b-aedf-c133536c946e\setupact_6.log with update date 6/12/2023 2:44:20 PM to be the correct setup log.
Found d:\tests\Logs\f55be736-beed-4b9b-aedf-c133536c946e\setupact_1.log with update date 6/12/2023 2:45:19 PM to be the correct rollback log.

Gathering baseline information from setup logs...

SetupDiag: processing rule: CompatScanOnly.
...No match.

...

SetupDiag: processing rule: DISMImageSessionFailure.
..
Error: SetupDiag reports DISM provider failure.
Last Phase: Safe OS
Last Operation: Apply Optional Component status
Message = Failed to get the IDismImage instance from the image session
Function: CDISMManager::CloseImageSession
Error: 0x800706ba
Recommend you re-download the update source files, reboot and try the update again.

SetupDiag found 1 matching issue.

SetupDiag results were logged to: c:\setupdiag\results.xml
Logs ZipFile created at: c:\setupdiag\Logs_14.zip

규칙

SetupDiag는 로그 파일을 검색할 때 일련의 규칙을 사용하여 알려진 문제를 일치합니다. 이러한 규칙은 xml 파일에 포함되어 있습니다. 새 버전의 SetupDiag를 사용할 수 있게 됨에 따라 xml 파일이 새 규칙 및 업데이트된 규칙으로 업데이트될 수 있습니다.

각 규칙 이름과 연결된 고유 규칙 식별자는 알려진 업그레이드 차단 문제에 대한 설명과 함께 나열됩니다. 규칙 설명에서 하위 수준 이라는 용어는 원래 OS에서 실행되는 업그레이드 프로세스의 첫 번째 단계를 나타냅니다.

규칙 이름 GUID 설명
CompatScanOnly FFDAFD37-DB75-498A-A893-472D49A1311D 이 규칙은 설치 프로그램이 업그레이드가 setup.exe 아닌 호환성 검사만 수행하는 것임을 나타내는 특정 명령줄 매개 변수를 사용하여 호출되었음을 나타냅니다.
PlugInComplianceBlock D912150B-1302-4860-91B5-527907D08960 서버 규정 준수 플러그 인에서 모든 호환성 블록을 검색합니다. 이 규칙은 서버 업그레이드에만 적용됩니다. 필요한 규정 준수 블록 및 수정을 출력합니다.
BitLockerHardblock C30152E2-938E-44B8-915B-D1181BA635AE 이 블록은 대상 OS가 BitLocker를 지원하지 않지만 호스트 OS에 BitLocker가 사용하도록 설정된 업그레이드 블록입니다.
VHDHardblock D9ED1B82-4ED8-4DFD-8EC0-BE69048978CC 이 블록은 호스트 OS가 VHD 이미지로 부팅될 때 발생합니다. 호스트 OS가 VHD 이미지에서 부팅되는 경우 업그레이드가 지원되지 않습니다.
PortableWorkspaceHardblock 5B0D3AB4-212A-4CE4-BDB9-37CA404BB280 이 블록은 호스트 OS가 Windows To-Go 디바이스(USB 키)에서 부팅되었음을 나타냅니다. Windows To-Go 환경에서는 업그레이드가 지원되지 않습니다.
AuditModeHardblock A03BD71B-487B-4ACA-83A0-735B0F3F1A90 이 블록은 호스트 OS가 현재 Windows 상태를 수정하기 위한 특수 모드인 감사 모드로 부팅되었음을 나타냅니다. 업그레이드는 이 상태에서 지원되지 않습니다.
SafeModeHardblock 404D9523-B7A8-4203-90AF-5FBB05B6579B 이 블록은 호스트 OS가 안전 모드로 부팅되고 업그레이드가 지원되지 않음을 나타냅니다.
InsufficientSystemPartitionDiskSpaceHardblock 3789FBF8-E177-437D-B1E3-D38B4C4269D1 이 블록은 설치 프로그램에서 시스템 파티션에 업그레이드 프로세스 중에 필요한 최신 부팅 파일로 서비스할 공간이 충분하지 않다고 판단할 때 발생합니다. 시스템 파티션은 부팅 로더 파일이 저장되는 위치입니다.
CompatBlockedApplicationAutoUninstall BEBA5BC6-6150-413E-8ACE-5E1EC8D34DD5 이 규칙은 설치를 계속하기 전에 제거해야 하는 애플리케이션이 있음을 나타냅니다.
CompatBlockedApplicationDismissable EA52620B-E6A0-4BBC-882E-0686605736D9 설정이 /quiet 모드에서 실행되면 명령줄에서 /compat ignorewarning을 지정하지 않는 한 해제 가능한 애플리케이션 메시지가 블록으로 바뀝니다. 이 규칙은 설정이 /quiet 모드에서 실행되었지만 설치가 계속되지 않도록 하는 애플리케이션 해제 가능한 블록 메시지가 있음을 나타냅니다.
CompatBlockedFODDismissable 7B693C42-793E-4E9E-A10B-ED0F33D45E2A 설정이 /quiet 모드에서 실행되면 명령줄에서 /compat ignorewarning을 지정하지 않는 한 해제 가능한 요청 시 기능 메시지가 차단으로 바뀝니다. 이 규칙은 설정이 /quiet 모드에서 실행되었지만 설정이 계속되지 않도록 하는 요청 시 해제 가능한 기능 블록 메시지가 있음을 나타냅니다. 일반적으로 대상 OS 이미지에 현재 OS에 설치된 주문형 기능이 누락되었습니다. 현재 OS에서 주문형 기능 제거도 문제를 resolve 합니다.
CompatBlockedApplicationManualUninstall 9E912E5F-25A5-4FC0-BEC1-CA0EA5432FF4 이 규칙은 프로그램 추가/제거 항목이 없는 애플리케이션이 시스템에 있고 설치가 계속되지 않도록 차단함을 나타냅니다. 이 블록은 일반적으로 계속하려면 이 애플리케이션과 연결된 파일을 수동으로 제거해야 합니다.
GenericCompatBlock 511B9D95-C945-4F9B-BD63-98F1465E1CF6 규칙은 시스템이 Windows를 실행하기 위한 하드웨어 요구 사항을 충족하지 않음을 나타냅니다. 예를 들어 디바이스에 TPM 2.0에 대한 요구 사항이 없습니다. 이 문제는 하드웨어 요구 사항을 무시하려고 시도하는 경우에도 발생할 수 있습니다.
GatedCompatBlock 34A9F145-3842-4A68-987F-4622EE0FC162 이 규칙은 임시 블록으로 인해 업그레이드가 실패했음을 나타냅니다. 특정 소프트웨어 또는 하드웨어 드라이버에서 문제가 발견되고 문제가 해결 보류 중인 경우 임시 블록이 배치됩니다. 수정 사항이 널리 제공되면 블록이 해제됩니다.
HardblockDeviceOrDriver ED3AEFA1-F3E2-4F33-8A21-184ADF215B1B 이 오류는 호스트 OS에 로드된 디바이스 드라이버가 최신 OS 버전과 호환되지 않음을 나타냅니다. 업그레이드하기 전에 디바이스 드라이버를 제거해야 합니다.
HardblockMismatchedLanguage 60BA8449-CF23-4D92-A108-D6FCEFB95B45 이 규칙은 호스트 OS 및 대상 OS 언어 버전이 일치하지 않음을 나타냅니다.
HardblockFlightSigning 598F2802-3E7F-4697-BD18-7A6371C8B2F8 이 규칙은 대상 OS가 시험판이고, Windows 참가자 빌드이며, 대상 머신에 보안 부팅이 사용하도록 설정되어 있음을 나타냅니다. 이 규칙은 컴퓨터에 설치된 경우 시험판 서명된 빌드의 부팅을 차단합니다.
DiskSpaceBlockInDownLevel 6080AFAC-892E-4903-94EA-7A17E69E549E 이 오류는 업그레이드의 하위 수준 작업 중에 시스템이 디스크 공간이 부족했음을 나타냅니다.
DiskSpaceFailure 981DCBA5-B8D0-4BA7-A8AB-4030F7A10191 이 오류는 시스템 드라이브가 업그레이드에 처음 다시 부팅된 후 어느 시점에서 사용 가능한 디스크 공간이 부족했음을 나타냅니다.
PreReleaseWimMountDriverFound 31EC76CC-27EC-4ADC-9869-66AABEDB56F0 인식할 수 없는 wimmount.sys 드라이버가 시스템에 등록되어 있어 발생하는 오류를 캡처합니다.
DebugSetupMemoryDump C7C63D8A-C5F6-4255-8031-74597773C3C6 이 오프라인 전용 규칙은 설치 중에 버그 검사 발생했음을 나타냅니다. 시스템에서 디버거 도구를 사용할 수 있는 경우 SetupDiag는 메모리 덤프를 디버그하고 세부 정보를 제공합니다.
DebugSetupCrash CEEBA202-6F04-4BC3-84B8-7B99AED924B1 이 오프라인 전용 규칙은 설치 자체에 프로세스 메모리 덤프를 초래하는 오류가 발생했음을 나타냅니다. 디버거 도구가 시스템에 설치된 경우 SetupDiag는 메모리 덤프를 디버그하고 자세한 정보를 제공합니다.
DebugMemoryDump 505ED489-329A-43F5-B467-FCAAF6A1264C 이 오프라인 전용 규칙은 설치/업그레이드 작업 중에 발생한 모든 memory.dmp 파일에 대한 것입니다. 디버거 도구가 시스템에 설치된 경우 SetupDiag는 메모리 덤프를 디버그하고 자세한 정보를 제공합니다.
DeviceInstallHang 37BB1C3A-4D79-40E8-A556-FDA126D40BC6 이 오류 규칙은 업그레이드의 디바이스 설치 단계에서 시스템이 중단되거나 버그가 확인되었음을 나타냅니다.
DriverPackageMissingFileFailure 37BB1C3A-4D79-40E8-A556-FDA126D40BC6 이 규칙은 디바이스를 설치하는 동안 드라이버 패키지에 누락된 파일이 있음을 나타냅니다. 드라이버 패키지를 업데이트하면 문제를 resolve 수 있습니다.
UnsignedDriverBootFailure CD270AA4-C044-4A22-886A-F34EF2E79469 이 규칙은 서명되지 않은 드라이버가 부팅 실패를 발생했음을 나타냅니다.
BootFailureDetected 4FB446C2-D4EC-40B4-97E2-67EB19D1CFB7 이 규칙은 업데이트의 특정 단계에서 부팅 오류가 발생했음을 나타냅니다. 규칙은 진단 목적으로 실패 코드 및 단계를 나타냅니다.
WinSetupBootFilterFailure C073BFC8-5810-4E19-B53B-4280B79E096C 커널 모드 파일 작업에서 오류를 검색합니다.
FindDebugInfoFromRollbackLog 9600EB68-1120-4A87-9FE9-3A4A70ACFC37 이 규칙은 메모리 덤프를 초래한 설치/업그레이드 프로세스 중에 버그 검사 발생하는 시기를 결정하고 세부 정보를 제공합니다. 그러나 실행 중인 컴퓨터에서는 디버거 패키지가 필요하지 않습니다.
AdvancedInstallerFailed 77D36C96-32BE-42A2-BB9C-AAFFE64FCADC 설치 실패를 일으키는 치명적인 고급 설치 관리자 작업을 찾습니다. 설치 관리자 패키지를 실행하는 동안 AdvancedInstaller에서 중요한 오류를 나타내며, 호출되는 .exe, 단계, 모드, 구성 요소 및 오류 코드를 포함합니다.
AdvancedInstallerPluginInstallFailed 2F784A0E-CEB1-47C5-8072-F1294C7CB4AE 이 규칙은 고급 설치 관리자(FeatureOnDemand, 언어 팩, .NET 패키지 등)를 통해 설치되는 일부 구성 요소를 설치하지 못했음을 나타냅니다. 규칙은 설치 중인 것을 호출합니다. 실패한 구성 요소가 FeatureOnDemand인 경우 Windows 기능을 제거하고 다시 부팅한 다음 업그레이드를 다시 시도합니다. 실패한 구성 요소가 언어 팩인 경우 추가 언어 팩을 제거하고 다시 부팅한 다음 업그레이드를 다시 시도합니다.
AdvancedInstallerGenericFailure 4019550D-4CAA-45B0-A222-349C48E86F71 일반 의미에서 AdvancedInstaller 읽기/쓰기 실패와 일치하는 규칙입니다. 일반적인 의미에서 고급 설치 관리자 실패를 트리거합니다. 단계, 모드, 구성 요소 및 오류 코드라는 애플리케이션을 출력합니다.
FindMigApplyUnitFailure A4232E11-4043-4A37-9BF4-5901C46FD781 업데이트가 실패하는 마이그레이션 단위 오류를 검색합니다. 이 규칙은 마이그레이션 플러그 인의 이름과 진단 목적으로 생성된 오류 코드를 출력합니다.
FindMigGatherUnitFailure D04C064B-CD77-4E64-96D6-D26F30B4EE29 업데이트 실패를 초래한 마이그레이션 수집 단위 오류를 검색합니다. 이 규칙은 gather unit/plug-in의 이름과 진단 목적으로 생성된 오류 코드를 출력합니다.
FindMigGatherApplyFailure A9964E6C-A2A8-45FF-B6B5-25E0BD71428E 마이그레이션 엔진이 수집 또는 적용 작업에서 실패할 때 오류를 표시합니다. 마이그레이션 개체(파일 또는 레지스트리 경로), 마이그레이션을 나타냅니다.
OptionalComponentFailedToGetOCsFromPackage D012E2A2-99D8-4A8C-BBB2-088B92083D78 이 규칙은 패키지에서 구성 요소를 열거하려고 할 때 특정 선택적 구성 요소 오류와 일치합니다. 선택적 구성 요소(OC) 마이그레이션 작업이 OC 패키지에서 선택적 구성 요소를 열거하지 못했음을 나타냅니다. 패키지 이름 및 오류 코드를 출력합니다. 이 규칙은 있는 OptionalComponentInstallFailure 규칙을 대체합니다.
OptionalComponentOpenPackageFailed 22952520-EC89-4FBD-94E0-B67DF88347F6 OC 패키지를 열려고 할 때 특정 선택적 구성 요소 오류와 일치합니다. 패키지 이름 및 오류 코드를 출력합니다. 선택적 구성 요소 마이그레이션 작업이 선택적 구성 요소 패키지를 열지 못했음을 나타냅니다. 패키지 이름 및 오류 코드를 출력합니다.
OptionalComponentInitCBSSessionFailed 63340812-9252-45F3-A0F2-B2A4CA5E9317 고급 설치 관리자 서비스 또는 구성 요소가 시스템에서 작동하거나 시작되지 않는 특정 오류와 일치합니다. 하위 수준 시스템의 서비스 스택이 손상되었음을 나타냅니다. 기존 OS에서 서비스 구성 요소를 초기화하는 동안 발생한 오류 코드를 출력합니다.
CriticalSafeOSDUFailure 73566DF2-CA26-4073-B34C-C9BC70DBF043 이 규칙은 중요한 동적 업데이트로 SafeOS 이미지를 업데이트하는 동안 오류가 발생했음을 나타냅니다. 진단 목적으로 SafeOS 이미지를 업데이트하는 동안 발생한 단계 및 오류 코드를 나타냅니다.
UserProfileCreationFailureDuringOnlineApply 678117CE-F6A9-40C5-BC9F-A22575C78B14 업데이트의 온라인 적용 단계에서 사용자 프로필을 만들거나 수정하는 동안 심각한 오류가 발생했음을 나타냅니다. 진단 목적으로 오류와 관련된 작업 및 오류 코드를 나타냅니다.
UserProfileCreationFailureDuringFinalize C6677BA6-2E53-4A88-B528-336D15ED1A64 설치의 종료 단계에서 특정 사용자 프로필 만들기 오류와 일치합니다. 오류 코드를 출력합니다.
UserProfileSuffixMismatch B4BBCCCE-F99D-43EB-9090-078213397FD8 파일 또는 다른 개체로 인해 업데이트 중에 사용자 프로필의 마이그레이션 또는 생성이 실패하는 시기를 감지합니다.
DuplicateUserProfileFailure BD7B3109-80F1-4421-8F0A-B34CD25F4B51 이 규칙은 일반적으로 단일 사용자 프로필과 연결된 여러 SID를 사용하여 사용자 프로필을 마이그레이션하는 동안 심각한 오류를 나타냅니다. 이 오류는 일반적으로 소프트웨어가 사용되거나 로그인되지 않은 로컬 사용자 계정을 만들 때 발생합니다. 규칙은 오류를 일으키는 계정의 SID 및 UserName을 나타냅니다. 문제를 resolve 시도하려면 먼저 영향을 받는 사용자 계정에 대한 모든 사용자의 파일을 백업합니다. 사용자의 파일이 백업되면 지원되는 방식으로 계정을 삭제합니다. 계정이 필요하거나 현재 디바이스에 로그인하는 데 사용되는 계정이 아닌지 확인합니다. 계정을 삭제한 후 다시 부팅하고 업그레이드를 다시 시도합니다.
WimMountFailure BE6DF2F1-19A6-48C6-AEF8-D3B0CE3D4549 이 규칙은 업데이트가 WIM 파일을 탑재하지 못했음을 나타냅니다. WIM 파일의 이름과 진단 목적으로 오류와 관련된 오류 메시지 및 오류 코드가 표시됩니다.
WimMountDriverIssue 565B60DD-5403-4797-AE3E-BC5CB972FBAE 시스템 등록 실패를 WimMount.sys 검색합니다.
WimApplyExtractFailure 746879E9-C9C5-488C-8D4B-0C811FF3A9A8 설치의 WIM 추출 단계에서 WIM 적용 실패와 일치합니다. 확장, 경로 및 오류 코드를 출력합니다.
UpdateAgentExpanderFailure 66E496B3-7D19-47FA-B19B-4040B9FD17E2 Windows 업데이트 업데이트의 하위 수준 단계에서 DPX 확장기 오류와 일치합니다. 패키지 이름, 함수, 식 및 오류 코드를 출력합니다.
FindFatalPluginFailure E48E3F1C-26F6-4AFB-859B-BF637DA49636 setupplatform이 설치에 치명적이라고 결정하는 플러그 인 오류와 일치합니다. 플러그 인 이름, 작업 및 오류 코드를 출력합니다.
MigrationAbortedDueToPluginFailure D07A24F6-5B25-474E-B516-A730085940C9 설치 프로그램이 마이그레이션을 중단하도록 하는 마이그레이션 플러그 인의 심각한 오류를 나타냅니다. 설치 작업, 플러그 인 이름, 플러그 인 작업 및 오류 코드를 제공합니다.
DISMAddPackageFailed 6196FF5B-E69E-4117-9EC6-9C1EAB20A3B9 DISM 패키지 추가 작업 중 심각한 오류를 나타냅니다. 패키지 이름, DISM 오류를 지정하고 패키지 오류 코드를 추가합니다.
DISMImageSessionFailure 61B7886B-10CD-4C98-A299-B987CB24A11C DISM이 이미지 세션을 성공적으로 시작하지 못할 때 실패 정보를 캡처합니다.
DISMproviderFailure D76EF86F-B3F8-433F-9EBF-B4411F8141F4 중요한 작업에서 DISM 공급자(플러그 인)가 실패할 때 트리거됩니다. 파일(플러그 인 이름), + 오류 코드라는 함수 및 공급자의 오류 메시지를 출력합니다.
SysPrepLaunchModuleFailure 7905655C-F295-45F7-8873-81D6F9149BFD 중요한 작업에서 sysPrep 플러그 인이 실패했음을 나타냅니다. 플러그 인 이름, 작업 이름 및 오류 코드를 나타냅니다.
UserProvidedDriverInjectionFailure 2247C48A-7EE3-4037-AFAB-95B92DE1D980 명령줄 입력을 통해 설치에 제공된 드라이버가 어떤 식으로든 실패했습니다. 드라이버 설치 함수 및 오류 코드를 출력합니다.
DriverMigrationFailure 9378D9E2-256E-448C-B02F-137F611F5CE3 이 규칙은 드라이버를 마이그레이션할 때 치명적인 오류를 나타냅니다.
UnknownDriverMigrationFailure D7541B80-5071-42CE-AD14-FBE8C0C4F7FD 이 규칙은 잘못된 드라이버 패키지가 시스템에 상주했음을 나타냅니다. 드라이버 패키지는 드라이버 패키지가 새 OS로 마이그레이션하려고 할 때 업그레이드가 실패합니다. 규칙은 일반적으로 문제를 일으킨 드라이버 패키지 이름을 나타냅니다. 수정은 잘못된 드라이버 패키지를 제거하고, 다시 부팅하고, 업그레이드를 다시 시도하는 것입니다. 이 드라이버에 대한 업데이트를 OEM에서 사용할 수 있는 경우 드라이버 패키지를 업데이트하는 것이 좋습니다.
FindSuccessfulUpgrade 8A0824C8-A56D-4C55-95A0-22751AB62F3E 지정된 설정이 성공했는지 또는 로그를 기반으로 하지 않는지 확인합니다.
FindSetupHostReportedFailure 6253C04F-2E4E-4F7A-B88E-95A69702F7EC 업그레이드 프로세스 초기에 발생한 오류에 대한 정보를 다음으로 제공합니다. setuphost.exe
FindDownlevelFailure 716334B7-F46A-4BAA-94F2-3E31BC9EFA55 하위 수준 단계의 뒷부분에서 SetupPlatform에 의해 노출되는 오류 정보를 제공합니다.
FindAbruptDownlevelFailure 55882B1A-DA3E-408A-9076-23B22A0472BD 시스템이 하위 수준에서 실패할 때 마지막 작업 실패 정보를 제공하지만 로그는 갑자기 종료됩니다.
FindEarlyDownlevelError A4CE4FC9-5E10-4BB1-8ECE-3B29EB9D7C52 설치 플랫폼이 호출되기 전에 하위 수준 단계에서 오류를 검색합니다.
FindSPFatalError A4028172-1B09-48F8-AD3B-86CDD7D55852 설치 플랫폼에서 치명적인 오류가 발생할 때 오류 정보를 캡처합니다.
FindSetupPlatformFailedOperationInfo 307A0133-F06B-4B75-AEA8-116C3B53C2D1 SetupPlatform이 심각한 오류를 나타내는 경우 마지막 단계 및 오류 정보를 제공합니다. 이 규칙은 진단 목적으로 오류와 관련된 작업 및 오류를 나타냅니다.
FindRollbackFailure 3A43C9B5-05B3-4F7C-A955-88F991BB5A48 롤백이 발생할 때 마지막 작업, 실패 단계 및 오류 정보를 제공합니다.

샘플 로그

텍스트 로그 샘플

Matching Profile found: OptionalComponentOpenPackageFailed - 22952520-EC89-4FBD-94E0-B67DF88347F6
System Information:
    Machine Name = Offline
    Manufacturer = MSI
    Model = MS-7998
    HostOSArchitecture = x64
    FirmwareType = PCAT
    BiosReleaseDate = 20160727000000.000000+000
    BiosVendor = BIOS Date: 07/27/16 10:01:46 Ver: V1.70
    BiosVersion = 1.70
    HostOSVersion = 10.0.15063
    HostOSBuildString = 15063.0.amd64fre.rs2_release.170317-1834
    TargetOSBuildString = 10.0.16299.15 (rs3_release.170928-1534)
    HostOSLanguageId = 2057
    HostOSEdition = Core
    RegisteredAV = Windows Defender,
    FilterDrivers = WdFilter,wcifs,WIMMount,luafv,Wof,FileInfo,
    UpgradeStartTime = 3/21/2023 9:47:16 PM
    UpgradeEndTime = 3/21/2023 10:02:40 PM
    UpgradeElapsedTime = 00:15:24
    ReportId = dd4db176-4e3f-4451-aef6-22cf46de8bde

Error: SetupDiag reports Optional Component installation failed to open OC Package. Package Name: Foundation, Error: 0x8007001F
Recommend you check the "Windows Modules Installer" service (Trusted Installer) is started on the system and set to automatic start, reboot and try the update again.  Optionally, you can check the status of optional components on the system (search for Windows Features), uninstall any unneeded optional components, reboot and try the update again.
Error: SetupDiag reports down-level failure, Operation: Finalize, Error: 0x8007001F - 0x50015
Refer to https://learn.microsoft.com/windows/deployment/upgrade/upgrade-error-codes for error information.

XML 로그 샘플

<?xml version="1.0" encoding="utf-16"?>
<SetupDiag xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="https://learn.microsoft.com/windows/deployment/upgrade/setupdiag">
  <Version>1.7.0.0</Version>
  <ProfileName>FindSPFatalError</ProfileName>
  <ProfileGuid>A4028172-1B09-48F8-AD3B-86CDD7D55852</ProfileGuid>
  <SystemInfo>
    <MachineName>Offline</MachineName>
    <Manufacturer>Gigabyte Technology Co., Ltd.</Manufacturer>
    <Model>X470 AORUS ULTRA GAMING</Model>
    <HostOSArchitecture>1033</HostOSArchitecture>
    <FirmwareType>UEFI</FirmwareType>
    <BiosReleaseDate>20180808000000.000000+000</BiosReleaseDate>
    <BiosVendor>F3</BiosVendor>
    <BiosVersion />
    <HostOSVersion>10.0.18908</HostOSVersion>
    <HostOSBuildString>18908.1000.amd64fre.rs_prerelease.190524-1658</HostOSBuildString>
    <TargetOSBuildString>10.0.18912.1001 (rs_prerelease.190601-1739)</TargetOSBuildString>
    <HostOSLanguageId />
    <HostOSEdition>Professional</HostOSEdition>
    <RegisteredAV>Windows Defender</RegisteredAV>
    <FilterDrivers />
    <UpgradeStartTime>2023-06-06T21:19:10</UpgradeStartTime>
    <UpgradeElapsedTime />
    <UpgradeEndTime>2023-06-06T22:21:49</UpgradeEndTime>
    <RollbackStartTime>0001-01-01T00:00:00</RollbackStartTime>
    <RollbackEndTime>0001-01-01T00:00:00</RollbackEndTime>
    <RollbackElapsedTime />
    <FinalizeStartTime>0001-01-01T00:00:00</FinalizeStartTime>
    <PostOOBESuccessTime>0001-01-01T00:00:00</PostOOBESuccessTime>
    <TotalOfflineTime />
    <CommercialId>Offline</CommercialId>
    <CV>MgUweCZk90KdwUiZ</CV>
    <SetupReportId>F21F8FB6-00FD-4349-84FB-2AC75F389E73</SetupReportId>
    <ReportId>F21F8FB6-00FD-4349-84FB-2AC75F389E73</ReportId>
  </SystemInfo>
  <LogErrorLine>2023-06-06 21:47:11, Error                 SP     Error converting install time 5/2/2023 to structure[gle=0x00000057]</LogErrorLine>
  <FailureData>
Error: SetupDiag reports Fatal Error.
Last Setup Phase = Downlevel
Last Setup Operation: Gather data, scope: EVERYTHING
Error: 0x00000057</FailureData>
  <FailureData>LogEntry: 2023-06-06 21:47:11, Error                 SP     Error converting install time 5/2/2023 to structure[gle=0x00000057]</FailureData>
  <FailureData>LogEntry: 2023-06-06 21:47:11, Error                 SP     Error converting install time 5/2/2023 to structure[gle=0x00000057]</FailureData>
  <FailureData>
Refer to "https://learn.microsoft.com/windows/desktop/Debug/system-error-codes" for error information.</FailureData>
  <FailureDetails>Err = 0x00000057, LastOperation = Gather data, scope: EVERYTHING, LastPhase = Downlevel</FailureDetails>
</SetupDiag>

JSON 로그 샘플

{
    "Version":"1.6.0.0",
    "ProfileName":"FindSPFatalError",
    "ProfileGuid":"A4028172-1B09-48F8-AD3B-86CDD7D55852",
    "SystemInfo":{
        "BiosReleaseDate":"20180808000000.000000+000",
        "BiosVendor":"F3",
        "BiosVersion":"F3",
        "CV":"MgUweCZk90KdwUiZ",
        "CommercialId":"Offline",
        "FilterDrivers":"",
        "FinalizeStartTime":"\/Date(-62135568000000-0800)\/",
        "FirmwareType":"UEFI",
        "HostOSArchitecture":"x64",
        "HostOSBuildString":"18908.1000.amd64fre.rs_prerelease.190524-1658",
        "HostOSEdition":"Professional",
        "HostOSLanguageId":"",
        "HostOSVersion":"",
        "MachineName":"Offline",
        "Manufacturer":"Gigabyte Technology Co., Ltd.",
        "Model":"X470 AORUS ULTRA GAMING",
        "PostOOBESuccessTime":"\/Date(-62135568000000-0800)\/",
        "RegisteredAV":"Windows Defender",
        "ReportId":"F21F8FB6-00FD-4349-84FB-2AC75F389E73",
        "RollbackElapsedTime":"PT0S",
        "RollbackEndTime":"\/Date(-62135568000000-0800)\/",
        "RollbackStartTime":"\/Date(-62135568000000-0800)\/",
        "SetupReportId":"F21F8FB6-00FD-4349-84FB-2AC75F389E73",
        "TargetOSArchitecture":null,
        "TargetOSBuildString":"10.0.18912.1001 (rs_prerelease.190601-1739)",
        "TotalOfflineTime":"PT0S",
        "UpgradeElapsedTime":"PT1H2M39S",
        "UpgradeEndTime":"\/Date(1559884909000-0700)\/",
        "UpgradeStartTime":"\/Date(1559881150000-0700)\/"
    },
    "LogErrorLine":"2023-06-06 21:47:11, Error                 SP     Error converting install time 5\/2\/2023 to structure[
        gle=0x00000057
    ]",
    "FailureData":[
        "\u000aError: SetupDiag reports Fatal Error.\u000aLast Setup Phase = Downlevel\u000aLast Setup Operation: Gather data, scope: EVERYTHING\u000aError: 0x00000057",
        "LogEntry: 2023-06-06 21:47:11, Error                 SP     Error converting install time 5\/2\/2023 to structure[
            gle=0x00000057
        ]",
        "LogEntry: 2023-06-06 21:47:11, Error                 SP     Error converting install time 5\/2\/2023 to structure[
            gle=0x00000057
        ]",
        "\u000aRefer to \"https:\/\/learn.microsoft.com\/windows\/desktop\/Debug\/system-error-codes\" for error information."
    ],
    "FailureDetails":"Err = 0x00000057, LastOperation = Gather data, scope: EVERYTHING, LastPhase = Downlevel",
    "DeviceDriverInfo":null,
    "Remediation":[
        
    ],
    "SetupPhaseInfo":null,
    "SetupOperationInfo":null
}

레지스트리 키 예제

Addreg 레지스트리 키의 예입니다.