SCSF vs. VS.NET - IsEnabledFor error

Topics: CAB & Smart Client Software Factory
Apr 28, 2007 at 3:29 PM
Edited Apr 28, 2007 at 4:10 PM
Hi,

I've read the similar post (http://www.codeplex.com/smartclient/Thread/View.aspx?ThreadId=6052) in the discussion board, but this is not works for me.

- If I create an SCSF project, all Smart Client recipe works fine.
- But after I closed/reopened it, throws exceptions for CreateView and Event publications.

(Vista Eng + VS.NET 2005 + CAB + SCSF 2006 June + EntLib 2006 Jan)

The full exception is:
"Microsoft.Practices.RecipeFramework.RecipeExecutionException: An exception occurred during the binding of reference or execution of recipe CreateView. Error was: Function IsEnabledFor is not correctly implemented because it threw an exception.
You can remove the reference to this recipe through the Guidance Package Manager. ---> System.IO.FileNotFoundException: Could not load file or assembly 'GATLibrary, Version=1.0.2371.37794, Culture=neutral, PublicKeyToken=null' or one of its dependencies. The system cannot find the file specified.
File name: 'GATLibrary, Version=1.0.2371.37794, Culture=neutral, PublicKeyToken=null'
at Microsoft.Practices.GuidanceAutomation.SmartClient.Utility.GetProjectFromGuid(DTE dte, IServiceProvider provider, Guid guid)
at Microsoft.Practices.GuidanceAutomation.SmartClient.References.ViewTemplateReference.ContainsRequiredReferences(Project project)
at Microsoft.Practices.GuidanceAutomation.SmartClient.References.ViewTemplateReference.IsEnabledFor(Object target)
at Microsoft.Practices.RecipeFramework.Services.AssetReferenceService.IsAssetEnabledFor(String asset, Object target)

WRN: Assembly binding logging is turned OFF.
To enable assembly bind failure logging, set the registry value HKLM\Software\Microsoft\Fusion!EnableLog (DWORD) to 1.
Note: There is some performance penalty associated with assembly bind failure logging.
To turn this feature off, remove the registry value HKLM\Software\Microsoft\Fusion!EnableLog.

--- End of inner exception stack trace ---
at Microsoft.Practices.RecipeFramework.Services.AssetReferenceService.IsAssetEnabledFor(String asset, Object target)
at Microsoft.Practices.RecipeFramework.VisualStudio.RecipeMenuCommand.OnQueryStatus()
at Microsoft.Practices.RecipeFramework.VisualStudio.AssetMenuCommand.OnBeforeQueryStatus(Object sender, EventArgs eventArgs)"

I've removed/reinstalled CAB and SCSF twice. Solution files (GUID, paths) are okay.

Any help welcome,

boj
Apr 28, 2007 at 9:08 PM
Hm, if I create a new Smart Client project and close it, I can run without errors the guidance packages in the same VS.NET.

Without this the Smart Client popup throws this exception below...
Apr 28, 2007 at 9:25 PM
Closer, closer...

After disabling/enabling SCSF in Guidance Package Manager is VS.NET, it works fine. (After restaring it won't work ever again, must disable-enable again.)
Feb 14, 2008 at 5:53 PM
I recently got the same problem with SCSF May 2007 until I realized that Infrastructure.Interface has been unloaded for editing. After reloading this project into the solution, it works.