Kirk Evans Blog

.NET From a Markup Perspective

Creating SharePoint Workflows for WSS with Visual Studio 2008

I just ran across one of those nuisance things with Visual Studio 2008 that I haven’t seen before.  Create a SharePoint workflow (Sequential or State, doesn’t matter) for a WSS site (not MOSS).  Build the project, you’ll get an error similar to the following: 

Error    3    Feature ‘739f61bf-5616-427a-80d6-ed30fdc04b1f’ could not be installed because the loading of event receiver assembly “Microsoft.Office.Workflow.Feature, Version=, Culture=neutral, PublicKeyToken=71e9bce111e9429c” failed: System.IO.FileNotFoundException: Could not load file or assembly ‘Microsoft.Office.Workflow.Feature, Version=, Culture=neutral, PublicKeyToken=71e9bce111e9429c’ or one of its dependencies. The system cannot find the file specified.

Turns out that VS2008 is only supported on MOSS.  Tucked away in the comments in Nikhil’s blog, he shows how to use Visual Studio 2008 to create workflows for Windows SharePoint Services 3.0.

To get it to work on WSS there is a workaround. Remove the reference to Microsoft.Office.Workflow.Tasks from project assembly references. This assembly is only available in the MOSS version of SharePoint and will not be resolved on a machine with WSS installed.

Also, open the feature.xml in the project and remove the ReceiverAssembly=”Microsoft.Office.Workflow.Feature, Version=, Culture=neutral, PublicKeyToken=71e9bce111e9429c” and ReceiverClass=”Microsoft.Office.Workflow.Feature.WorkflowFeatureReceiver”. This feature receiver is required for MOSS related functionality (InfoPath forms) and should not affect your WSS workflow development.

Worked like a champ.