오버레이 아이콘을 등록하는 도구를 너무 많이 설치 한 것 같습니다. Windows는 변경할 수없는 오래된 16 비트 코드로 인해 오버레이 아이콘이 15 개로 제한됩니다 .
값 15는 이미지 목록의 해당 한계에서 나왔습니다. ImageList_SetOverlayImage 함수는 이미지 목록 당 최대 15 개의 이미지 목록 오버레이를 지원합니다. (이봐, 그것은 더 나 빠졌다. 한도는 3 이었어!)
알았어, 그런데 왜 15 살이야? 왜 더하지?
오버레이 이미지는 이미지 목록에서 이미지를 그릴 때 사용되는 정보 중 하나입니다. 옵션은 fStyle 매개 변수로 인코딩되며 비트가 다양한 목적으로 분할 된 경우 오버레이 이미지를 지정하는 데 4 비트를 사용할 수 있습니다. ( "오버레이 없음"을 지정하기 위해 값 중 하나를 잃기 때문에 16 개 대신 15 개의 오버레이 이미지가 나타납니다.)
그래도 fStyle 매개 변수의 값은 하위 16 비트 만 사용합니다. 상위 16 비트는 어떻습니까? 거기에 충분한 공간이 있습니다.
16 비트 제한은 16 비트 버전의 공용 컨트롤 (Windows 95에서 여전히 지원해야 함)에서 가져 왔습니다. 물론 오늘날에는 16 비트 버전의 공통 컨트롤에 신경 쓰지 않는 사람이 있다면 왜 상위 비트를 사용하지 않습니까?
불만족스러운 설명이 있습니다. fStyle을 내부적으로 관리하는 코드는 여전히 일부 위치에서 WORD를 사용하므로 fStyle을 관리하는 모든 코드를 수정해야합니다. 이것은 Windows의 여러 모듈에서 발생하므로 여러 구성 요소에서 동기화 된 변경을 수행해야합니다. 인터페이스가 더 이상 호환되지 않기 때문에 이진 수준의 주요 변경 사항입니다. 주요 변경 사항은 절차 적으로 조정하기가 어렵습니다. 영향을받는 코드는 아직 트렁크에 RI로 연결되지 않은 멀리 떨어진 리프 브랜치에 있기 때문에 셸 팀에 표시되지 않을 수 있습니다. fStyle을 WORD에서 DWORD로 확장하면 일부 구성 요소에 큰 영향을 줄 수 있습니다.
따라서 Microsoft는 탐색기를 중단하지 않고는 실제로 해결할 수 없습니다.
regedit를 열고
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers
과
HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers
아이템 수를 세어보세요. 당신은 15의 한계에 도달하고 있습니까?
그렇다면 여기에 표시된 응용 프로그램을 제거하거나 다시 구성하거나 레지스트리 항목을 수동으로 제거하십시오 (물론 백업).