The software you run on a PC may be packaged in several different formats: EXE, DLL, CPL and so on.
These file types aren't just for executable code, though. They can also contain resources for the program can call on, as required: icons, bitmaps, cursors, videos and more.
The traditional way of viewing these is to load files one by one in a resources editor, saving any that you need. But if that sounds too slow, you might prefer ResourcesExtract, which automatically processes an entire folder tree and saves its resources wherever you like.
The program is a tiny download even by NirSoft standards (29.4KB). It's portable, and using it can be as easy as specifying a root folder and destination folder, choosing the resource types to extract, and clicking "Start".
We tested the program by asking it to work through our C:\Program Files folders. This took almost ten minutes, which seemed a little slow, until we realized ResourcesExtract had detected and saved almost 15,000 individual resources.
This isn’t quite as impressive as it sounds. A quick browse found that around 95-percent of our resources were entirely useless: tiny bitmaps, lo-res icons, AVIs of progress indicators, and so on.
Despite that, around five percent of our resources turned out to be useful, or at least interesting. There were plenty of gorgeous high resolution icons, several attractive bitmaps which we didn't recognize, quite a few cursors, and assorted other extras.
There are no guarantees with ResourcesExtract, of course -- exactly what you'll see depends on your installed applications.
'We noticed one or two minor oddities, too. Although the program appeared to allow wildcards when you’re choosing source files ("*.*" is displayed by default), the Browse dialog didn't accept this, at least on our test PC. This isn't fatal -- you can just enter the path manually, or select a file and change its name to "*." -- but it was a little annoying.
Still, for the most part ResourcesExtract is an appealing and easy-to-use program, and if you'd like to explore your executable's innards then we'd give it a try.