Sign up ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I'm having trouble changing the icon for specific file types in Windows 8. I have read countless how tos including this question and this one, tried FileTypesMan and several other programs and edited the registry but none work exactly. After each method I have purged the icon cache and restarted just to be sure. I want to change the icons for .css and .js files (and others down the line) to separate icons, but both types open in Notepad++ by default.

Changing the DefaultIcon key in the registry for HKEY_CLASSES_ROOT\Applications\notepad++.exe (the ProgId associated with .js and .css in HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.css\UserChoice) changes the icon for all files that open in Notepad++.

Changing the DefaultIcon for .css or .js files in HKEY_CLASSES_ROOT\CSSfile and HKEY_CLASSES_ROOT\JSFile has no effect.

Adding a DefaultIcon key to HKEY_CLASSES_ROOT\CSSfile did nothing either, and I was reluctant about experimenting by adding it elsewhere in case I broke something.

One thing I have noticed is, if I change the icon of an extension without a default program associated with it (.php in this case) then changing DefaultIcon in HKEY_CLASSES_ROOT\php_auto_file did work, but I stupidly chose to always open PHP files in Notepad++ after that and then it changed to the Notepad++ icon.

So is there a way of changing the icon for a file type that has a default program associated with it without changing all icons for files that open in the same program? Or is there a way of disassociating a file type with a program so that I can change the icon but always have to use "Open With..."? Preferably the former option.

share|improve this question
I am looking fot this too.. – tumchaaditya Aug 29 '13 at 23:58
I guess a workaround would be to copy an application that can edit the file (I'm looking at you, notepad!) and change the default icon for the files edited with that program and do the same for each file extenstion. But this is REALLY time consuming as well space-consuming (though I can't figure out how to do this for notepad. – RookieTEC9 Oct 31 at 1:11

4 Answers 4

There is really simple program called Default Programs Editor available to download from here. It works good also for Windows 8.1 (not sure for Win 8).

Default Programs Editor

share|improve this answer
This app is a bit clunky but it works. You need to create a new file type for each extension that you want to change the icon for, and then assign an icon to that new file type. – Alan Apr 9 '14 at 15:45
This seems to do the trick! It would be nice to have some info on exactly how it does its thing on the back-end for those who wish to accomplish this manually. The info provided by Microsoft appears to be inaccurate, and doesn't work for many. – JimNim Jun 9 '14 at 15:06
seems to also work well on Windows 10... – Tim Oct 11 at 11:58

Changing the DefaultIcon for .css or .js files in HKEY_CLASSES_ROOT\CSSfile and HKEY_CLASSES_ROOT\JSFile has no effect.

Adding a DefaultIcon key to HKEY_CLASSES_ROOT\CSSfile did nothing either, and I was reluctant about experimenting by adding it elsewhere in case I broke something.

what you did here is changing the icon based on application icon assignment

So from my understanding, you are looking for a file-type icon assignment. You want the file name extension to dictate the icon assignment not the application itself even thought the name extension is associated with the same application

For your case (.js and .css extension)

  1. Navigate to HKEY_CLASSES_ROOT \ .js
  2. Create a new key (folder) under .js and name it as DefaultIcon
  3. In the newly created key, there is a default string value with value not set in its data. Double click this string value and add the icon path as its value (i.e X:\myiconfolder\customicon.ico)
  4. close registry and go into task manager. Under the process tab restart windows explorer process by right clicking on the process and choosing restart
  5. Do the same thing for .css file extension

Tell me whether this is working

share|improve this answer
I suggest trying it out before giving an answer to make sure it is correct. – RookieTEC9 Nov 1 at 13:08
This does not work. – RookieTEC9 Nov 1 at 22:06

If what you really want is to edit the registry, you first need to make sure what Prog ID your file type is using. You can do so by navigating to:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.[ext]\UserChoice (where [ext] is the file extension you are looking for)

Then copy the value for Progid. If said value is not set there, then navigate to HKEY_CLASSES_ROOT\.[ext] and copy the value set for (default).

Next thing is to navigate to HKEY_CLASSES_ROOT\[progid]\DefaultIcon (where [progid] is the value you obtained earlier). If the DefaultIcon key is missing, you need to create it.

Finally, set the (default) value to whatever you want and restart explorer.exe with task manager. You can also log off and back in or restart, but this is the most efficient way.

Hope that helps.

share|improve this answer
Congratulations! This works! Check out my edit. – RookieTEC9 Nov 6 at 0:36
Thanks! And smart suggestion. I've been away from Windows for a while and completely forgot about the effects of killing explorer.exe. A lot better than restarting. :D – JP de la Torre Nov 6 at 0:49

Check out this explanation, straight from the horse's mouth.

share|improve this answer
Can you please summarize or include a quote of what's in your link? That way your answer is still useful if it changes or becomes unavailable. Please read the help article on answering for more information, specifically the section titled "Provide context for links". – Moses Oct 11 '13 at 4:02
These steps are essentially the same as those which ch1902 said were already attempted - this process doesn't work. – JimNim Jun 9 '14 at 15:01
Proper BS from Microsoft! :( They removed the option to change an icon's look based on it's extension well... I installed MSVS in hope to compile an app, removed it cuz it sucks and in the meanwhile it associated with all the .h and .cpp files. Now it's removed I re-associated with Code::Blocks so my .h and .cpp files took the ugly C::B icon for them. My pretty red .h and blue .cpp icons are forever gone ;( I hope reinstalling C::B does the trick. Screw you MS >:( – PinkTurtle Mar 10 at 19:45

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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