How to programmatically arrange AddIn toolbars

Discussion created by AlainBlaster on Oct 28, 2013
Latest reply on Oct 28, 2013 by Hornbydd
I have a growing set of AddIns deployed using a path to a shared folder.
It all works well but there is something annoying and time consuming for the staff who installs ArcMap on user machines and configures the AddIns:

The installer has to manually go Customize in ArcMap and turn on the toolbars which then appear floating in ArcMap.
They then have to manually drag the toolbars and make them dock on the ArcMap command bar.
This is inefficient and does not enforce the toolbar addins to be arranged in a specific order which is the same for every user.

I know that the design philosophy for AddIns encourages sharing of addins and lets end users add/remove/move addins around at will. Fair enough. But from a support piont of view it is best that every deployment looks the same/familiar.

This is the scenario that I would like to support...

  Installs ArcMap
  Enables licensing
  Goes to AddIn Manager and sets path to shared folder on public file server for custom company addins
  Installer selects company custom addins in Customize and let them all float over map
    (That???s also inefficient and time consuming)
Installer picks one known addin/menu (open to suggestions) and
  This automatically docks and arranges all custom addins on the ArcMap main toolbar.
Installer is done and sends machine/laptop back to user.


If at any point a user loses/changes/messes up the order of addins, they can use the "magic" arranger to "restore defaults" and it all goes back to the standard/approved deployment order.

Whatever command/menu/button implements this should be able to fish out all addins made by company X and may have a configuration file to tell in what order to dock them. This part is no big deal.

The part I am uncertain about is how do I...

Dock them in the ArcMap toolbars area in a controlled order?
How do I do this all programmatically?

I am hoping some "enterprise addin suite" deployer might have solved this.