VSeWSS vs WSPBuilder vs STSDEV for WSS 3.0 / SharePoint 2007 development

Alex Angas
  • VSeWSS vs WSPBuilder vs STSDEV for WSS 3.0 / SharePoint 2007 development Alex Angas

    What are your personal experiences with using these tools?

    I tried VSeWSS when it first came out and was frustrated by it. Each new version has been the same for me but for different reasons.

    WSPBuilder greatly appealed to me because I could clearly see where my files were being deployed on the server. Its use of reflection to create CAS files and packaging of WSPs has been great, as well as the starter templates it provides.

    Recently someone pointed me in the direction of STSDEV. I know this tool has been around for a long time but I know very little about it.

    From your own experience, which would you recommend and how did you come to this decision?

  • STSDEV is my option. I've build over 30 SharePoint custom solutions involving event handlers, wf, custom web parts, custom application pages and I'm very pleased with STSDEV. One reason is that everything is transparent, you can see the STSADM commands in output windiw and you can run them later on production server. And yes ..stay away from VSeWSS is the worst.

  • I have both VSeWSS and STSDEV installed. I had a hard time figuring out how to use VSeWSS properly, but STSDEV pointed me in the right direction immediately.

    As mentioned before, STSDEV is transparent, and a pro for me: the code is available on codeplex, so if something is missing you van add/extend it for your own personal needs. And just looking at the code helps you understand the build process for SharePoint.

  • WSPBuilder is my current tool of choice, I think VSeWSS is useful for people starting out to use in a SandPit setup, but once you get into real projects it has limitations and just hides too much away from you.

    I also still use good old fashioned post build events for speed.

  • WSPBuilder is the choice for me, gives you so much for free when developing and a great integration with Visual Studio. There are a lot of hidden gems in WSPBuilder, that you easily forget, such as great automatic CAS generation. Do read Tobias Zimmergrens post on how to get started with it: http://www.zimmergren.net/archive/2009/04/08/wspbuilder-walkthrough-of-the-visual-studio-add-in.aspx


  • I've built hundreds of solutions and web parts using every tool out there (including rolling my own from scratch). WSP is the best tool IMHO for what I do.

    It's low friction to get started (get the Visual Studio add-in!) and lets you quickly get a web part/feature up and running instantly. Then you can work your solution and do a one-click deploy in development then package it up easily (using the command line tool and something like NAnt/MSBuild) for delivery to a staging/production environment. Unlike STSDEV (which requires custom build targets) or VSeWSS (which requires you to structure your code a certain way) it let's me work the way I want to and is adaptable and flexible.

    VSeWSS is nice in the fact you can use it reverse engineer something like a .stp file created site into source files (for example the fab-40 application templates) which is useful but that's the only reason I would us it.

    STSDEV is nice but it feels awkward and tends to completely rebuild everything each compile (meaning the ddf generation). It also forces me into a certain structure and last time I checked it there were issues with multiple web parts in a single feature, etc. It could get better but WSPBuilder gives me what I need today.

  • I use WSPBuilder (with the VS 2008 add-in) in combination with a custom project template I can develop a working web part and deploy this into my dev environment in about 2 minutes!

    For single solution packages with one-one relationship to assemblies (which is most small scale projects) this is fine.

    Just recently had some issues with a larger project with mutliple assembly references, but I am sure it is me not setting it all up right rather than a problem with the tool per-se.

    VSeWSS was clunky and awkward last time I used it and its put me off trying again. SP 2010 looks like it could imporve on this so I will probably revisit this again.

    STSDev is something I have not tried much because WSPBuilder has fulfilled my needs thus far.

    'Copy to GAC' and 'Copy to 12 Hive' features are developer heaven!

  • I used WSPBuilder since the early releases where it was just a console app. For a period i used STSDEV, but after seeing what Keutmann has done with VS integration and all, im growing really fond of WSPBuilder again.

    Sure it has its quirks (like adding all worker processes when debugging, re-building up to date solutions before building WSP file, OOTB templates using old webpart namespace, inability to add assemblies to wsp packages if file is in GAC etc) but for a guy like me that works with SharePoint in Visual Studio every day, its a great tool that makes me blissfully ignorant of DDF files and pesky manifest files (and yes i do advocate that you first build your first 100 WSP files manually so that you know what goes on behind the hood, but after that its just a nuisance).

    On the downside WSPBuilder documentation is non existing and you have to rely on Codeplex forum or blog posts like the recent one by Zimmergren that Wictor mentions. Hence im sure lots of the above quirks can be configured away, but it takes alot of digging to find out how (like you have to know that if you want to deploy assemblies in same project to both GAC and BIN you need to have folders called GAC and 80/bin in root of project, and not configure anything in wspbuilder.config.exe)

    I do use VSeWSS 1.3 but only for extracting site or list manifests (i do this less and less btw since theres lots of nice STSADM extensions out there that does a better job than VSeWSS).

    What im extremely curious about, is how the OOTB VS tools for Rosario and 2010 will be. Nightmare scenario would be a VSeWSS 1.something...

    STSDEV is good, but limits my freedom of doing "business as usual" in VS. Also i cant remember when it was updated last time...

    [edit: im not an expert in these things, but isnt questions like this normally marked as community wiki?]

  • One thing I would add is that if you a beginning, try not to jump straight in using these tools. Try to learn how to create a WSP by hand first. That will give you a far better grasp on how these tools are meant to work and how they help. It will also give you an understanding of what to look for if there is an issue with a WSP created by one of the tools.

  • I've used vsewss, wspbuilder and stsdev to build many web part, site defintion and event handler solutions. I've also done it by hand. The only method with no limitations is to do it by hand. On the other hand, VSeWSS is the basis for SharePoint 2010 support in Visual Studio 2010. If you want to go the most supported route and you are just starting to use one of these tools today, I would recommend you look at VSeWSS first. Have you seen the posts from current 2010 developers who say they haven't touched a manifest or ddf file in months? That is the future. It doesn't hurt to build a solution by hand or with one of the open source tools once for the pratical hands on experience, but after that, why go through the pain?

  • We use VSeWSS, in the begining when the versions were changing and not all the developers on the team upgraded at the same time. We had a lot of trouble with the stability. This was partly due to the way the solution file is merged by Visual Studio.

    At one point we lost most of the functionality from the context menu.

    To fix this we ended up creating a new solution file from scratch and adding all the existing projects to it. After that it has been relativily stable.

  • WSPBuilder all the way, for the same reasons as people posted above! It is an amazingly easy tool to use. I started using VSeWSS and kept pulling out my hair, then I found WSPBuilder and it was love at first site (:-p)!

Related questions and answers
  • We are trying to automate the solution deployment to a test environment. We are using vsewss 1.3. To do this we are trying to run the following command from the visual studio command prompt: devenv xxx.sln /deploy Release /package When we do this we get the following error: specified method is not supported And a message that the deployment has been skipped. Anyone have an idea what the problem could be, or how to fix it. EDIT I have tried a few things: Gave "Everyone" group modify access to the area where the solution files are Checked out solution and projects files so

  • with site definition schemas (and list definition schemas). I understand that you can only add to a definition once a site has been created from it or the sites will break, but I saw the note on this page...There have been several questions asked on this site regarding the best way to provision sites and lists (definition schemas vs. templates vs. the object model vs. the web interface vs. provisioning... Definitions... and not There are a few rules of thumb to go by (resources, permissions, ease of deployment, granularity of control). One thing that has to be considered, though, is how do you propogate

  • The same goes for the workflow source files -- every time I open the project or go to the source file, it's indicating (by the asterisk) that the file has been modified. Which means two things: when closing VS, I always get the "Project has been changed, do you want to save changes?" prompt. It's annoying but I can live with that. More importantly though, I cannot debug the workflow because when the debugger is attached, I get the "Cannot modify the file while debugger's running" error prompt.

  • in this Farm" and it shows me two warnings. I am wandering if the second warning has anything to do with these intermittent database errors. And, I want to know how can I solve these warnings. Warning 1...: Thanks for your reply. I understand about the first warning and I just left it as it is. However, same set of services are running on each WFE not sure what is different let me show you what... Windows SharePoint Services Database Update 2 Now I've again configured the SharePoint Farm as per your instructions but still getting the same warning. Please let me know if I am running any

  • All the SharePoint applications I work on use resource files to allow localisation and sitemap files to integrate with breadcrumbs. It has always been a problem to deploy and process these files... know there are a number of ways around this in SharePoint 2007, which involve basically writing your own implementation of ApplyApplicationContentToLocalServer, but I had hoped that in SharePoint 2010 this obvious flaw would have been fixed. Unfortunately the code still checks if the current user is local administrator (I used reflector on the SP2010 Microsoft.SharePoint.dll file

  • I've followed the following steps to build a WebService in SharePoint: Created a new project using WSPBuilder. Added a 'WebService' (Add a new web service to the layouts folder) Do a WSBBuilder "Deploy" The WebService is accessible via http://server/_layouts/MyWebService.asmx Is this correct ? Or should I follow the steps described at MSDN to create my own .wsdl / .disco files and deploy them...://jamestsai.net/Blog/post/Where-do-you-deploy-custom-SharePoint-web-service-files-to-%28asmx-discoaspx-and-wsdlaspx%29.aspx which describes the difference between _layouts and _vti_bin. Question What's

  • then navigate to any other page, and then click BACK or FORWARD I get an error message that says "Webpage has expired". Note that my web.config entry is: <httpRuntime executionTimeout="43200" maxRequestLength="104856" /> After searching I found https://stackoverflow.com/questions/1580085/show-webpage-has-expired-on-back-button. Well, obviously I can’t use GET because I am developing a web part NOT a page. Also, it is not possible to oblige the clients to change their forms from POST to GET just to use my little web part (I think you understand me). I put a breakpoint inside the web

  • Problem: Multiple solutions using shared dll's can cause havoc when individual solutions are retracted. Example: You have a web part helper dll used by all your web part code. If you retract a solution containing a reference to this dll then the SafeControl entry is removed from the appropriate web application and all your web parts start to fail. Or even better, the dll is removed from the GAC altogether. Solution: I don't know? You tell me.

  • I have a document library which contains some Word documents that I'm trying to copy down to my local disk. I've opened the document library using Windows Explorer, and am dragging the individual files from that window to a folder on my local PC. Some files work, but others are giving me this error (on Windows 7 x64): The file name you specified is not valid or too long. Specify a different...? I can't for the life of me determine why some files are throwing this error while others are copying just fine. UPDATE The files copy without any problem if we go into the doc lib's settings