I've been embarking on a new adventure of staging Microsoft Dynamics CRM 4.0 for my company to replace a home-grown, ad-hoc CRM system. As part of this, I have needed to customize some of its menus and toolbars.
The basic mechanism for doing this is to:
1. Enable ISV Config. You do this by navigating to Settings | Administration | System Settings | Customization tab, then choosing one of the client options under "Custom menus and toolbars:"Settings | Customization | Export Customizations, select the ISV Config item, and click the Export Selected Customizations button.
You should either keep a copy of this file for reference before changing it, as it contains many sample objects, or at least refer to this MSDN article which references possibly the same sample.
You may wonder how to get rid of all the default customizations present in the initial sample--it's chock full of menus, toolbars, etc. Here is the minimal ISV Config XML structure without any of the sample objects. Add your own objects to this minimal file, and then...
3. Re-import your modified ISV.config.xml file (Settings | Customization | Import Customizations). MS CRM validates the XML upon upload, not upon import, so you will receive a notice of any validation errors immediately upon clicking the Upload button. Don't forget to click the Import Selected Customizations button after you have a successful upload. :)