Visual Studio 2012

Topics: CAB & Smart Client Software Factory
Sep 3, 2012 at 10:26 AM


when VS 2012 will be supported to use SCSF?



Sep 3, 2012 at 8:08 PM
Edited Sep 3, 2012 at 8:08 PM


So far I am not aware of any future plans regarding this topic; however, based on the following thread, it seems that currently there are no plans for future releases of Smart Client Software Factory project:


Damian Cherubini

Sep 27, 2012 at 8:32 PM
Edited Sep 28, 2012 at 8:00 AM

What do you think about SCSF2010 project recompilation with Visual Studio 2012 Environment?



Sep 28, 2012 at 7:56 AM


I had no problems with VS2012 (still working on both systems). only the integration of SCSF is not supported (context menu, etc.)



Sep 28, 2012 at 8:02 AM
Edited Oct 2, 2012 at 8:43 PM

This means that you could not use SCSF add new module new view etc. into VS2012, is this right?


Sep 28, 2012 at 8:20 AM

unfortunately, yes!

but you can add new modules without using scsf!


Oct 2, 2012 at 9:16 PM
Edited Oct 3, 2012 at 10:14 PM

My target is to deploy SCSF 2010 ( into VS2012.

Before doing that i've installed GAT and GAX for VS2012, downloaded and fully recompile into VS2012 GEL2010 project (see and use Microsoft.Practices.RecipeFramework.Extensions.dll into SCSF2010 project. 

I've also downloaded from this site; after loading and adjusting some missing references on source files into VS2012, i've tried to recompile it.

First recompilation of SCSF2010 give me 398 errors, than i've change target framework on .net Framework 4.5 and adjusted a couple of reference into source.extension.vsixmanifest files; project compilation was done correctly but i've some dubt on this old VS references:

- c:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PublicAssemblies\VSLangProj.dll

- c:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PublicAssemblies\EnvDTE.dll

- c:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PublicAssemblies\EnvDTE80.dll

Finally i've deployed Microsoft.Practices.SmartClientFactory.GuidancePackage.vsix into VS2012.

Deploy was done correctly but unfortunately i did not see "Smart Client Software Factory 2010" on new project list and furthermore when i try to enable "SCSF 2010" into "Guidance Package Manager" option, an error message were raised.

I'm strictly closed to the final solution but i need some help in order di solve this small issue; is someone able to give me help to solve this issue?

Here is error message:

Microsoft.Practices.RecipeFramework.ActionExecutionException: An exception occurred during the binding of reference or execution of recipe BindingRecipe. Error was: Action FoundationalModuleRefCS failed to execute:
Cannot find registration information for template "C:\USERS\FABIOBO\APPDATA\LOCAL\MICROSOFT\VISUALSTUDIO\11.0\EXTENSIONS\SFU3JO3G.MXF\Templates\Projects\Module.CS\ModuleHandle.vstemplate". Package templates may not be properly registered. Run package installation again and verify template name and location..
You can remove the reference to this recipe through the Guidance Package Manager. ---> System.InvalidOperationException: Cannot find registration information for template "C:\USERS\FABIOBO\APPDATA\LOCAL\MICROSOFT\VISUALSTUDIO\11.0\EXTENSIONS\SFU3JO3G.MXF\Templates\Projects\Module.CS\ModuleHandle.vstemplate". Package templates may not be properly registered. Run package installation again and verify template name and location.
   at Microsoft.Practices.RecipeFramework.VisualStudio.Templates.VSTemplatesService.GetTemplateRegistryData(String templateFileName)
   at Microsoft.Practices.RecipeFramework.VisualStudio.Templates.VSTemplatesService.Microsoft.Practices.RecipeFramework.VisualStudio.Common.IVsTemplatesService.GetTemplate(String templateFileName)
   at Microsoft.Practices.RecipeFramework.VisualStudio.Templates.TemplateReference.OnSited()
   at Microsoft.Practices.RecipeFramework.AssetReference.set_Site(ISite value)
   at System.ComponentModel.Container.Add(IComponent component, String name)
   at Microsoft.Practices.RecipeFramework.Services.AssetReferenceService.Add(IComponent component, String name)
   at System.ComponentModel.Container.Add(IComponent component)
   at Microsoft.Practices.RecipeFramework.Services.AssetReferenceService.Add(IAssetReference reference, IDictionary initialState, Boolean throwIfDuplicate)
   at Microsoft.Practices.RecipeFramework.Services.AssetReferenceService.Add(IAssetReference reference, IDictionary initialState)
   at Microsoft.Practices.RecipeFramework.Services.AssetReferenceService.Add(IAssetReference reference)
   at Microsoft.Practices.RecipeFramework.Library.Actions.CreateUnboundReferenceAction.Execute()
   at Microsoft.Practices.RecipeFramework.Recipe.Microsoft.Practices.RecipeFramework.Services.IActionExecutionService.Execute(String actionName, Dictionary`2 inputValues)
   at Microsoft.Practices.RecipeFramework.Recipe.Microsoft.Practices.RecipeFramework.Services.IActionExecutionService.Execute(String actionName)
   at Microsoft.Practices.RecipeFramework.Extensions.Coordinators.ConditionalCoordinator.Run(Dictionary`2 declaredActions, XmlElement coordinationData)
   at Microsoft.Practices.RecipeFramework.Recipe.ExecuteActions(IDictionaryService readOnlyArguments, IDictionaryService arguments, ITypeResolutionService resolution)
   --- End of inner exception stack trace ---
   at Microsoft.Practices.RecipeFramework.Recipe.UndoExecutedActionsAndRethrow(Exception ex)
   at Microsoft.Practices.RecipeFramework.Recipe.ExecuteActions(IDictionaryService readOnlyArguments, IDictionaryService arguments, ITypeResolutionService resolution)
   at Microsoft.Practices.RecipeFramework.Recipe.Execute(Boolean allowSuspend)
   at Microsoft.Practices.RecipeFramework.GuidancePackage.Execute(String recipe, IAssetReference reference, IDictionary arguments)
   at Microsoft.Practices.RecipeFramework.GuidancePackage.Execute(String recipe)
   at Microsoft.Practices.RecipeFramework.RecipeManager.Add(IComponent component, String name)
   at System.ComponentModel.Container.Add(IComponent component)
   at Microsoft.Practices.RecipeFramework.RecipeManager.EnablePackage(XmlReader configuration)
   at Microsoft.Practices.RecipeFramework.RecipeManager.EnablePackage(String packageName)
   at Microsoft.Practices.RecipeFramework.PackageManagement.EnableDisablePackages.OnOkClick(Object sender, EventArgs e)

Tank you


Oct 3, 2012 at 3:57 PM


I believe you could check the open-source version of the GAX/GAT which is available at It might be useful if you plan to migrate your VS210 extensions to VS2012.

Also, for those interested in this subject, take into account that a mentioned in the the Visual Studio Extension gallery, Microsoft no longer maintains the GAX / GAT projects and no future releases are planned for them. Future developments of these assets are now undertaken by the community.

I hope you find this handy,

Agustin Adami

Feb 25, 2013 at 11:17 PM

managed to port it to VS2012 using OpenGAX