Pablo Galiano :

Subscriptions

<March 2010>
SuMoTuWeThFrSa
28123456
78910111213
14151617181920
21222324252627
28293031123
45678910

News

Subscribe to Pablo Galiano by Email

Post Categories

Software Factories (RSS)

GAXP1409 released

A new patch for GAX targeting Visual Studio 2008 SP1 was released last week.

I will update the VSSDK Assist installer to target this release soon!

Pablo

posted Monday, October 06, 2008 7:50 AM by pga with 0 Comments

T4 Editor RTM is OUT!!!

As Victor announced it, after great efforts the T4 Editor v1.0 was finally out.

I don't need to tell you how much the user experience can drastically change when you use it, having syntax coloring, intellisense, code generation preview, support for multiple T4 hosts, etc etc.

Check it out here

Pablo

posted Monday, September 15, 2008 11:39 AM by pga with 1 Comments

VSShell Assist is Out!!!

VSShell Assist is a visual toolset of utilities to create VS Shell applications. It seamlessly integrates with his big brother VSSDK Assist

The current features are:

  • Create:
    • VS Shell Setup project (wix based)
  • Test:
    • Test SLK/PLK
    • Test VS Splash Screen
  • Utility:
    • Create VS Package pkgdef file

The pre-requisites are:

 

You can download it from here

Pablo

posted Monday, March 17, 2008 6:08 PM by pga with 1 Comments

VSSDK Assist March 2008 CTP is OUT!!!

This new version includes several bug fixes and it is compatible with GAX February 2008 RTM.

You can download it from here.

 

Pablo

posted Thursday, March 13, 2008 11:49 AM by pga with 1 Comments

TTxGen on MSDN Code Gallery

TTxGen is a generic single file generator based on the text templating engine.

What is that???, Some background:

Single file generators or custom tools are COM components registered with Visual Studio that generate code.

To implement a custom tool you basically need to implement the IVsSingleFileGenerator interface. For more detail you can read kzu's post 

A custom tool also needs to be registered and associated to file a extension.

The IVsSingleFileGenerator interface declares two methods:

int DefaultExtension (
	out string pbstrDefaultExtension
)

This method is used to specify the extension of the generated file.

int Generate (
	[InAttribute] string wszInputFilePath,
	[InAttribute] string bstrInputFileContents,
	[InAttribute] string wszDefaultNamespace,
	[OutAttribute] IntPtr[] rgbOutputFileContents,
	out uint pcbOutput,
	[InAttribute] IVsGeneratorProgress pGenerateProgress
)

This method is used to generate the code that we want. It receives the name of the file associated with custom tool, the content of the file and it returns a Byte[] with the generated code.

One serious drawback is that we need to implement, register and deploy one custom tool for each representation of custom code that we want to generate.

Ok that's all for custom tools, now the funny part...

As you may know the text templating (t4) engine is now part of Visual Studio 2008. Based on this I created an implementation of a generic single file generator using t4.

The idea here is to have the same context as in custom tools. For that I have created a custom directive processor that injects the context needed on the tt:

<#@ output extension=".xml" #>
<#@ ParentFileInjector processor="TTxGenDirectiveProcessor" requires="fileName='Sample.xml'" #>
<#= this.ParentFileName #>
<#= this.ParentFileContent #>

If we want to access the parent file name we can use the ParentFileName variable, and for the content we can use the ParentFileContent.

TTxGen comes with some tooling to create a xGen template with the proper directives and context to start generating code:

scn1

scn2

The Create xGen Template command unfold a tt template, default the extension to the extension of the parent file and it automatically replace the requires argument.

 

You can download TTxGen from codegallery.

 

Pablo

posted Monday, February 04, 2008 6:10 PM by pga with 15 Comments

T4 Editor is OUT!!!

As Victor announced it, the T4 Editor was released to the community. Of course you know that this is a *must have* tool if you work with GAX / DSL or Software Factories.

It currently supports VS 2005 and VS 2008 beta 2 with IntelliSense, syntax coloring and most of the fancy stuff that the editors in VS have.

Go and donwload it. :)

 

Pablo

posted Thursday, October 18, 2007 5:39 AM by pga with 0 Comments

VS 2008 and GAX

GAX July 2007 CTP is out. It includes the following improvements:

  • Support for Visual Studio 2008 Beta 2
  • Wix based setup project template
  • Support for registration on VS experimental hive
  • You can read Tom's post to find out the details. :)

    Dowload it from here.

    Pablo

    posted Saturday, August 04, 2007 9:48 AM by pga with 2 Comments

    VSIPFactory May 07 CTP is out!!!

    The May 07 CTP version of VSIPFactory is out and it has a lot of new cool features:

     

             Create:

    *    VS Package solution (VS solution template)

    *      VS Package project (VS project template)

    *      VS Services

    *      VS Tool Windows

    *      VS Commands

    *      VS Tool Options Pages

    *      Subscribe to VS Events

    *   VS Solution Events

    *   VS Build Events

    *   VS RDT Events

    *   VS Project Item Events

    *   VS File Change Events

     

    Configure:

    *     VS Package

    *     VS about/splash screens

     

    Deploy:

    *     Configure VS Package Load Key

    *     Create VS Package Deployment Information

     

    Test:

    *     Create VS Package Load Key Report

    *     Test VS Package Load Key

    *     Test VS Splash Screen

     

           Utility:

    *     Register VS Package

    *     Unregister VS Package

    *     Refresh VS Package Registration Information

    *     Launch VS on Experimental Hive

     

    DSL authoring:

    *     Templates transformation per project / folder

     

    You can download it from:

    http://www.codeplex.com/vsipfactory/Release/ProjectReleases.aspx?ReleaseId=4070

     

    Screenshots:

    http://www.codeplex.com/vsipfactory/Wiki/View.aspx?title=Screenshots&referringTitle=Home

     

    Documentation links:

    http://www.codeplex.com/vsipfactory/Wiki/View.aspx?title=Pre-requisites&referringTitle=Home

    http://www.codeplex.com/vsipfactory/Wiki/View.aspx?title=Install&referringTitle=Home

    http://www.codeplex.com/vsipfactory/Wiki/View.aspx?title=Usage&referringTitle=Home

     

    PS: If you want to see the plan for the next release please visit the roadmap section

     

    Pablo

    posted Wednesday, May 16, 2007 10:56 PM by pga with 1 Comments

    VSIPFactory released!!!

    The M0 version of VSIPFactory was just released!

    VSIPFactory - A Software Factory for Visual Studio Extensibility

    M0 Features:

    ·         Recipe for creating a VS service

    ·         Recipe for creating a VS tool window

    ·         Recipe for creating a VS command

    ·         Recipe for configuring VSIP package

    ·         Recipe for configuring VSIP package PLK

    ·         Recipe for configuring VS splash/about screens

    ·         Recipe for registering/unregistering a VSIP package

     

    You can download it from:

    http://www.codeplex.com/vsipfactory/Release/ProjectReleases.aspx?ReleaseId=2829

    Pablo

    posted Tuesday, April 03, 2007 4:33 PM by pga with 14 Comments

    SFT Feb CTP is out!!!

    We are very happy to announce that the February CTP of SFT is OUT and I can assure you that it Rocks!!!.

    These are some features included on this release:

    Recipe Binder: bind recipes to any designer with a few mouse clicks.
    Recipe Designer: graphically edit your recipes. (YES you read it correctly :))
    MetaFactory: creates customized and usable SF solution.
    Manifest Validation: catch manifest errors early on and save time.
    Enhanced runtime: more integration assets added.

    Download it from here.

    Enjoy SFT!!!

    Pablo

    posted Wednesday, March 21, 2007 12:56 PM by pga with 1 Comments

    GAX Feb CTP is out!!!

    The February CTP of GAX (or GAX 1.2 internally) was released yesterday.

    Fixes:

    • Support for Windows Vista
    • Guidance Navigator performance and display improvements
    • Handling of read-only .gpstate files
    • Use of standard system colors in wizards and dialogs
    • Fixes to registration recipes

    Tom has a detailed list of fixes here

    You can download it from here

    Pablo

    posted Thursday, March 15, 2007 6:52 AM by pga with 1 Comments

    Factories 201

    Edward and Jezz started a series of articles called Factories 201.

    These articles are great and a must read to start understanding the wave of Software Factories.

     

    Pablo

    posted Wednesday, February 07, 2007 8:16 AM by pga with 0 Comments