When removing shortcut arrows using the regedit value


in Shell Icons 29, black boxes cover up my desktop icons where the shortcut arrows used to be.

How do I fix it?

  • Which OS is this happening to?
    – Moab
    Aug 28 '16 at 14:21

The following value in regedit


is a transparent icon in shell32.dll (in this case value -50). Using any of these values to remove shortcut arrows in shell32.dll will corrupt the IconCache.db file located in C:\Users\UserName\AppData\Local. This can temporarily be fixed by deleting IconCache.db and restarting or logging off and on your computer. However, the black boxes will come back because Windows continues to corrupt IconCache.db each time it tries to overwrite it with value -50 in shell32.dll.

To permanently fix the problem without using 3rd party software, do this...

Download this blank.ico and save it somewhere on your C: drive.

For example,

C:\Users\UserName\Pictures\Desktop Icons.

Then use this value instead of %windir%\System32\shell32.dll,-50 in Shell Icons value 29 in regedit (HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer) like this:

C:\Users\UserName\Pictures\Desktop Icons\blank.ico

This will use the blank.ico file on your C: drive instead of accessing the transparent icon files on shell32.dll and your IconCache.db will no longer be corrupted, removing the black boxes and the shortcut arrows forever.

For those who want steps on how to do this in regedit, reading material can be found here on How-To Geek.


Create key "Shell Icons", Add String Value and name it "29", add this text to the string value: %windir%\System32\shell32.dll,-50 and reboot.

If the shortcut arrow box is black then delete the text in the string value named 29 and then reboot. The arrow and the black box will be gone.



Not the answer you're looking for? Browse other questions tagged or ask your own question.