DLL의 두 번째 아이콘을 가리키는 Desktop.ini의 IconIndex 값 -101이 맞나요?

DLL의 두 번째 아이콘을 가리키는 Desktop.ini의 IconIndex 값 -101이 맞나요?

Windows 탐색기에 다음과 같이 표시되는 폴더가 있습니다.
여기에 이미지 설명을 입력하세요

이 폴더 안에 숨겨진 Desktop.ini에는 다음 내용이 있습니다.

[.ShellClassInfo]
[email protected],-12688
IconFile=%SystemRoot%\system32\mydocs.dll
IconIndex=-101

이것은 mydocs.dll실제로 정확하게 포함되어 있습니다아이콘, 여기서두번째하나는 Windows 탐색기에서 위 폴더를 표시하는 데 사용되는 아이콘입니다.

그렇다면 Desktop.ini 콘텐츠의 마지막 줄이 IconIndex=1가 아닌 (Windows가 0에서 계산을 시작한다고 가정)이어야 하지 않습니까 IconIndex=-101?

값을 2진수, 16진수, 8진수로 해석하려고 했지만 -101두 번째 아이콘을 나타내는 숫자로 변환된 값이 없습니다.

그렇다면 -101의 SECOND 아이콘을 가리키는 값은 어떻게 되나요 mydocs.dll?

답변1

음수 IconIndex는리소스 ID. 보다이 Microsoft 개발자 블로그:

Windows 95에서는 음수를 아이콘 인덱스로 전달하여 리소스 ID로 아이콘을 지정할 수도 있도록 ExtractIcon 함수가 향상되었습니다.

또한 참조하십시오마이크로소프트 문서.

귀하의 경우 사용된 아이콘에는 리소스 ID가 있습니다.101따라서 다음과 같이 표시됩니다.-101. 내 mydocs.dll을 확인한 후 표시한 아이콘의 리소스 ID는 101이고 첫 번째 아이콘(문서가 있는 폴더)의 리소스 ID는 100으로 표시됩니다.

관련 정보