I've complained that some program icons don't read properly under Vista (I think it's a vista problem, because I never had had the problem under XP) and asked for an explaination, fix, or work-around to no avail and no sympathy. They expect us to find a 3rd party fancy icon instead or draw something from scratch. However, the application files contain very good XP or Vista icons already, and the customize web site don't give simple icons for those apps.
So I finally got around to putting together a work-around that uses free tools, that I will post here to share. I still hope that someone will explain why the icons have problems in Vista, so I might learn from that for my own work. I saw another program have trouble loading icons in Vista (Process Explorer from Sysinternals) but it was quickly fixed. So maybe there is some "gotcha" or compatibility issue with the resource file API?
Anyway, here is my procedure:
Step 1 - use Batch Icon Extractorhttp://www.rw-designer.com/batch-icon-extractor[C:\Program Files\@AV]BatchIconExtractor.exe "C:\Program Files\@Office\The Journal 4\Journal4.exe"Extracting ...icon\Journal4.exe_SMAINICON_0409.icoExtracting ...icon\Journal4.exe_SQUESTION_0000.icoStep 2 - determine which ICO file to useThe names from the resource file are used to compose the file name, and that might tell you, such as MAIN ICON here. Or, look at the ICO files using Explorer or your image browsing tool.
Step 3 - Bust up the ICO file into individual icons of different sizesIf you point OD at this ICO file, it will behave exactly the same as it did with the original EXE file. That is, it shows a spec. It's choosing a very small (16×16) icon from the collection rather than the largest one, and not scaling it.
Use ImageMagick <
http://www.imagemagick.com/www/binary-releases.html#windows> tools for the rest of this, including
Identify.exe and
Convert.exeRun Identify on the chosen ICO file:
[C:\Program Files\@AV\icons]identify Journal4.exe_SMAINICON_0409.icoJournal4.exe_SMAINICON_0409.ico[0] ICO 16x16 16x16+0+0 8-bit DirectClass 28.3809kbJournal4.exe_SMAINICON_0409.ico[1] ICO 16x16 16x16+0+0 8-bit DirectClass 28.3809kbJournal4.exe_SMAINICON_0409.ico[2] ICO 16x16 16x16+0+0 8-bit DirectClass 28.3809kbJournal4.exe_SMAINICON_0409.ico[3] ICO 32x32 32x32+0+0 8-bit DirectClass 28.3809kbJournal4.exe_SMAINICON_0409.ico[4] ICO 32x32 32x32+0+0 8-bit DirectClass 28.3809kbJournal4.exe_SMAINICON_0409.ico[5] ICO 32x32 32x32+0+0 8-bit DirectClass 28.3809kbJournal4.exe_SMAINICON_0409.ico[6] ICO 48x48 48x48+0+0 8-bit DirectClass 28.3809kbJournal4.exe_SMAINICON_0409.ico[7] ICO 64x64 64x64+0+0 8-bit DirectClass 28.3809kbThe number in bracket indicates the multidude of images within one file.
Step 4 - Convert the desired icon to a PNG fileUse the Convert tool, and use the subscript as part of the file name as shown in the previous step. In this case, the last one is larger than the rest, 64 pixels square. So that is the one I want. If you can't tell from that, then convert all the ones you might be interested in and then see what you've got.
[C:\Program Files\@AV\icons]convert Journal4.exe_SMAINICON_0409.ico[7] Journal.pngStep 5 - Move the PNG file to its perminant home.Move the chosen PNG file somewhere where it can stay. OD will point to it here. One idea is to put it in the same directory with the original EXE; and another is to put all the ones you do into your icon collection under the OD directory. I made a "Chosen Icons" directory and put them all there.
Step 6 - Choose the new icon in ODFrom Dock Entry Properties, Change Images.
The large PNG file should work just file, even though the ICO file didn't.