patterns & practices Guidance Automation released for Whidbey RTM!

 Note: this entry has moved.

The Guidance Automation Extensions (GAX) and Toolkit (GAT) have been updated for Visual Studio 2005 RTM. As Tom describes it:

At long last, the Guidance Automation Toolkit (GAT) and Guidance Automation Extensions (GAX) have been updated for the final version of Visual Studio 2005. For those that came in late, GAT allows developers and architects to integrate guidance deliverables such as blocks, frameworks and patterns into the Visual Studio environment, using mechanisms such as templates, wizards and code generation. GAT is targeted at people authoring these "guidance packages", while GAX is the runtime component required by anyone consuming guidance packages. You'll be seeing quite a few p&p deliverables built using GAT (and hence requiring GAX) over the next year, so this would be a great time to get up to speed on this exciting technology.

Just as a quick list of things that GAX/GAT enables you to do, *very* easily:

  1. Create reusable actions that automate VS using either the DTE or the VSIP interfaces.
  2. Create rich argument collection strategies for use in wizards using .NET standard TypeConverter and UITypeEditor base classes. This also means that you get the built-in ones supported in your wizards for free!!
  3. Create automatic argument calculation strategies, that can determine (default) argument values from the environment (such as the opened solution, currently selected project properties, VS state, etc.)
  4. Declaratively design wizards using XML, by specifying the arguments that need to be collected, their .NET type and converters/editors to use to assist the user and validate the input, and even custom pages (a special kind of user control) for advanced input scenarios!
  5. Group the arguments used by the actions, the automatic argument collection strategies, the wizard to manually them from the user, and the set of actions to perform on the environment in so-called recipes.
  6. Easily associate recipes to item, project or solution templates, so that additional arguments can be collected for the VS template expansion and parameter replacement, as well as to execute actions after the unfold operation finishes.
  7. Easily expose those recipes as commands in main or context menus. Assign icons to them simply by pointing to an image file! (no more unmanaged VC++ resources for icons or those ugly .CTC files defining commands in VSIP!!!)
  8. Create code generation templates using a text templating language code-named T4 that is shared with the DSL Tools (similar in spirit to classic ASP, CodeSmith, NVelocity, etc.)
  9. Easily contextualize the recipes and templates so that they appear only for:
    • A particular element in the solution (i.e. a specific project, item, solution folder, etc.)
    • Elements that satisfy a given condition, coded easily in any .NET language (i.e. all XML files, XML files whose root element belongs to a given namespace, all C# projects that are class libraries and have a reference to Indigo, etc.) 
  10. Easily create and package code snippets with your guidance
  11. Automatically create an MSI setup file to include all the above!

If the above list grabbed your interest, go and download GAX and GAT and start playing with it! Don't forget to ask your questions either on the MSDN forum or the GuidanceAutomation.net community site.

Read the following entry on how to upgrade from Beta2-based GAT packages and the new version.

4 Comments

  • Dear Daniel,



    I have VS 2005 Team Suite (ENU) RTM installed on my machine. When I try to install GAT, I get two identical error messages:



    "Unable to get installer types in the D:\Program Files\Microsoft Visual Studio 8\Common7\IDE\PublicAssemblies\MetaGuidancePackageInstaller.dll assembly. --> Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information". I did checked the folder and could not find that dll.



    I am logged in as the administrator. The installation of the Guidance Automation Extensions package was successful. While installing the Guidance Automation Toolkit, I have changed the default drive letter from C to D.



    How do I retrieve the LoaderExceptions property and what might cause the problem? Is that dll supposed to be installed during VS installation, or is it installed as a part of the GAT package?



    Thank you and have a great day.



    Alex

  • The DLL is installed to VS directory at GAT installation time.

    Turn on Fusion by running from a VS command prompt: fuslogvw, and turning on the logging of bind failures (to text or disk, as you prefer).

    Then, retry the installation. The viewer should tell you which assemblies failed to load and from where.



    Is VS installed into the D disk too? Did you have a previous version of GAT installed?

  • That was not the link :S.

    Well, in summary, MSDN had some issues and people was getting the old version of GAT sometimes. They say it's fixed now so you should download the MSI again.



    When you install, make sure it says "December 2005 CTP" in the first page.

  • Daniel,



    You are great. That was exactly the cause of the problem. I had the right MSI package version of GAX and a wrong one of GAT. I've downloaded the GAT's MSI again just like you've told me, and it worked. Thank you so much!



    Alex Fedyukov, RJN GROUP, INC.

Comments have been disabled for this content.