Alternate Icon

Updated November 2015; see History

The –g switch is used to force A-Shell/Windows and ATE to use an alternate icon. This icon appears in the About box, on the title bar, and on the task bar. Syntax may be any of the following.

-g ####

 

Allows you to specify the internal numeric ID of an icon already embedded within the A-Shell executable. These are in the range of 1001-1050, but this typically isn’t very useful without some insider knowledge.

-g resname

 

Similar to the first, except it allows you to specify the icon by its resource name. Again, you would need to have special knowledge about which icons are available.

-g resname::dllname

 

This third option allows you to specify an icon by its resource name and the name of the DLL within which it resides. In this case, the DLL should be in the same directory as ashw32.exe was loaded from, or at least in the PATH.

-g filename.ico

 

This fourth option is the easiest for most people to use, as it only requires that you supply an ico file. The file should be placed in the %MIAME%\icons subdirectory. The %MIAME% directory is set automatically to the directory where miame.ini was loaded from, unless manually set in your Windows configuration.

NOTE: This capability/feature was added in A-Shell build 1176 of March 2010. Prior to that version, the –g switch specified an icon such as "ashell25" that was embedded in the A-Shell executable. Below are notes describing the impact the new method may have on your programs, followed by the old documentation on this topic.

History

2015 November, A-Shell 6.2.1421:  Revise search for icon specified in -g command line switch to look specifically in the %MIAME%\icons directory before doing a more general search, so as to reduce the chance of finding an unexpected match.

2010 March, A-Shell 5.1.1176:  Add filename.ico option.

Prior to this version, the –g switch specified an icon such as "ashell25" that was embedded in the A-Shell executable.

The new method eliminates nearly all of the need to embed application icons into ashw32.exe, so we have removed them. Temporarily, we will include in the standard release copies of all of the icons previous embedded, so no particular action is required. However, at some point in the near future, we will probably drop them as well, and leave it to individual developers to add their own custom icon(s) to the package.

The one problem which can be foreseen is that desktop shortcuts which now use an icon embedded within ashw32.exe will be subject to having their icon reset if Windows (or the user) decides to update the shortcut. In that case, you'll need to just use the "Browse" button in the shortcut properties to browse the %MIAME%\icons directory to locate the standalone copy of the desired icon.

To prevent that from happening, you can reset the application icon using MX_SHORTCUT so that it points to the new discrete copy of the icon file.

Hopefully, all will agree that this is a relatively minor inconvenience compared to the benefits of decoupling custom icons from the executable.

Note: because of the need for the standalone icon file to exist in order for a custom icon to work within A-Shell, this update is best done by running the full install package (rather than just updating ashw32.exe).