PDA

View Full Version : Installer icon



timbojones
11-16-2006, 04:02 PM
When I build a monolithic or web installer, the .exe has a nice looking icon with a disc in front of a monitor with an open box off to the side.

When I build the same project as distributed across CD-ROMs, the .exe has the default blank white window icon.

Ideally, I would like to specify which icon the generated installer .exe uses. But at least the CD-ROM installer should get the same pretty icon as a monolithic installer.

linder
11-16-2006, 11:48 PM
Tim,

This is not a SetupBuilder problem ;-)

It's caused by Windows Explorer. The Explorer does not display the icon in large .exe files and displays the white one instead. This is a "problem" with ALL Win32 and Win64 executables.

Does this help?

timbojones
11-17-2006, 11:52 AM
Does this help?

Nope, but it explains. ;)

Do you happen to know the cutoff value where this becomes an issue? I can easily span across images just under that size, as I'm actually distributing all these files on a single DVD.

The CD-spanning is a workaround for some version of Windows Defender, which continually crashes when we run the monolithic installer (I'm guessing a signed int issue since our compressed image is just over 2GB).

linder
11-21-2006, 07:10 AM
Tim,

If the Win32 or Win64 executable is more than several hundred megabytes in size, Windows Explorer shows the generic "Application" icon for the file in place of the default executable icon. In addition, when you view the Properties for the executable, the Version tab may be missing.

This is true for all native Win32 and Win64 executables and not a bug in the development environment. The problem is caused by the Windows APIs used by Explorer to extract icons and version info. Explorer tries to map the entire file into memory and this fails if there is not a large enough contiguous block of address space available.

timbojones
11-21-2006, 12:53 PM
Fascinating. So as I understand it, there's no set limit: it's based on available memory, past usage and memory fragmentation.

Given that, is there any way to tell SetupBuilder "Make the .exe as small as possible; split the compressed data into files of size X", or something similar to work around this? I bet that most people rarely have 650 MB of contiguous memory available, and as such this will consistently be a problem.

On another note, any thoughts on allowing the installer icon to be changed?

linder
11-22-2006, 12:11 AM
Tim,

Yes, it's based on the available memory.

To split your setup into multiple images:

General Information -> Generator Settings -> Set "Media Type" to "Custom" and set "Media Size" to, say, 100 (means 100 MB).

BTW, as recommended by Microsoft, we are using the standard installer icon. There are no plans to allow the installer icon to be changed.

Doug I
03-12-2007, 10:42 AM
I hope you reconsider the ability to change the icon installer or at least improve the icon itself.

Under Higher Resolution pc's, when one looks at the icon of the installer, it is jagged and fuzzy. This is probably because the ico file SetupBuilder is using does not have a 48x48 icon to show when looking at the file in Explorer with thumbnail view.
The OS is blowing up the 32x32 image instead.

I know this is trivial, but Windows Vista is a lot more graphically visual and every little bit of professionalism helps.

Later,
Doug

linder
03-13-2007, 02:21 AM
Tim,

SetupBuilder 6 makes use of the "standard" Windows installer icon. The problem is that this standard icon itself is only provided as 32x32 (256 colors).

Friedrich

Doug I
03-13-2007, 11:13 AM
Hi Friedrich,

Again, let me emphasize that I am not making a big deal over this. It's hard to find anything to complain about with SB6 actually. :)

But since we are on the subject...
The problem with Microsoft "Standards" is that they really don't exist. Following their standards, is as good as worthless. Their standards change as the wind blows. Just look at Vista and see how standards from just a few years back have been eliminated or changed dramatically.

Obviously, allowing us devs to make a decision on our own belief of standards is the best approach. Don't let MS standards dictate the flexibility of your product. Let SB become a product that is thinking ahead of MS standards.

Just my .02 cents,
Doug