Your SlideShare is downloading. ×
  • Like
Deploying Code In SharePoint
Upcoming SlideShare
Loading in...5

Thanks for flagging this SlideShare!

Oops! An error has occurred.


Now you can save presentations on your phone or tablet

Available for both IPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Deploying Code In SharePoint


How to deploy code in SharePoint. Given at SharePoint Saturday Kansas City - February 2009

How to deploy code in SharePoint. Given at SharePoint Saturday Kansas City - February 2009

Published in Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads


Total Views
On SlideShare
From Embeds
Number of Embeds



Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

    No notes for slide
  • Demo manual deployment. Copy a binary out with a web part and manually copy DLL to the GAC.Demo how to export an existing .webpart definition to build from.
  • Explain the manifest.xml and cab.ddf
  • VSeWSS
  • Demo the use of BDC Tools, the MetaData Model and the Import Process


  • 1. Deploying Code in SharePoint
    Presenter: Corey Roth
    Senior Consultant
  • 2. Corey Roth
    Consultant for Stonebridge
    Worked in Consumer Electronics, Travel, Advertising, and Energy industries
    Currently doing MOSS development specializing in Enterprise Search, Workflow, and ECM
    Microsoft Award for Customer Excellence (ACE) Winner
    Blog: (mirrored on
  • 3. Challenges for New Developers
    Learning the API
    Setting up the development environment
  • 4. Deployment
  • 5. 12 Hive
    Location of most key SharePoint files: C:Program FilesCommon Filesmicrosoft sharedWeb Server Extensions12
  • 6. 12 Hive (Continued)
  • 7. Deploying Binaries – Two Options
    GAC Deployment – Not recommended unless absolutely necessary (i.e.: Event Recivers, Timer jobs, Workflows, etc).
    Requires application pool to be reset after every deployment.
    Allows code to execute with full trust
    Acceptable for new developers starting out because it is easier
  • 8. Deploying Binaries – Two Options
    Bin Folder Deployment – Recommended but more complex
    Requires a developer to specify code access security settings or running SharePoint with full trust
    Does not require application pool to be reset
    Recommended approach but more complicated to implement
  • 9. SafeControls
    SharePoint won’t execute a web part or user control unless it knows it is safe
    Declare an assembly and namespace safe in web.config
    SafeControls element
    Can be automated using a solution package (.wsp)
  • 10. Deployment Options
    Manually copy binaries, feature files, pages, and controls to appropriate folders on SharePoint server
    Create a Feature – Would still have to manually copy files
    Create a Solution Package (.wsp) – A cab file that contains a manifest telling SharePoint how to deploy files and what features to install
  • 11. Ghetto Deployment (Manual)
    Manually copy binaries to GAC or bin folder
    Manually upload .webpart files to web part gallery
    Manually copy user controls to CONTROLTEMPLATES folder
    Manually copy features files into FEATURES folder
    Manually copy anything else that you might need to deploy
  • 12. Building and Deploying a Web Part
    Deploys similarly to a user control
    .webpart (or .dwp) file tells SharePoint where to find the web part’s code
    Use a feature to add the web part to the gallery
    Complete instructions at my blog
  • 13. Demo
  • 14. Features
    A series of XML files that allow you to make changes to SharePoint
    Located in the TEMPLATEFEATURES folder in the 12 hive
    Changes can include creating lists, pages, content types, site columns, and web parts.
    Can copy files into SharePoint’s virtual file repository but the template files still have to be deployed to the 12 hive first
  • 15. Solution Packages (.wsp files)
    A cab file that can copy binaries, features, pages, and other files to SharePoint.
    Defined by manifest.xml and cab.ddf files
    Created with makecab.exe
    Can copy binaries to bin folder or GAC
    Can apply safe control and code access security settings
    Automatically installs features
    Can also be upgraded and retracted / deleted.
    Can be automated with VSeWSS, WSPBuilder, stsdev, etc.
  • 16. cab.ddf
    Specifies which files to copy into the wsp file.
    You must specify each binary, page, XML or .webpart file you want to be copied in this file
    Syntax for each file is source <space> destination
    The destination specified is the location in the file not the location on the SharePoint server.
  • 17. Manfiest.xml
    Specifies which features to activate and which files to copy into the 12 hive.
    Can deploy SiteTemplates
    Specifies SafeControl settings in web.config
    Configures Code Access Security (CAS) settings
    Paths are relative to the TEMPLATES folder in the 12 hive
  • 18. Manfiest.xml Elements
    FeatureManifests – Specifies feautres to activate
    TemplateFiles – Required for any file that you want copied that is not a binary or feature file
    Assemblies – Required for each binary to be deployed
    DeploymentTarget – WebAppplication or GlobalAssemblyCache
    SafeControls – Adds SafeControl entry to web.config
    CodeAccessSecurity – Applies CAS policies to assembly
  • 19. Deploying your solution (.wsp) file
    Add the solution with stsadm
    stsadm –o addsolution –filename mysolution.wsp
    Deploy the solution with stsadm or Central Admin -> Solution Management
    stsadm –o deplysolution –name mysolution.wsp –immediate –allowGacDeployment –allowCasPolicies
    stsadm –o execadmsvcjobs
    -o upgradesolution – Upgrades an existing solution’s files
    -o retractsolution – Remove the solution from a given site(s)
    -o deletesolution – Removes the solution from the solution store
  • 20. Building a User Control with Visual Studio
    Web Application Project
    Reference Microsoft.SharePoint.dll
    Must be registered as safe for SharePoint to execute
    Typically deployed to bin folder using Code Access Security
    Controls are typically deployed to the CONTROLTEMPLATES folder in the 12 hive.
    _ControlTemplates Virtual Directory
    Complete instructions are on my blog
  • 21. Demo
  • 22. Demo
  • 23. References
    Dot Net Mafia Blog
    Visual Studio Extensions for SharePoint (VSeWSS 1.3) CTP
    SharePoint Blogs
  • 24. Questions?
  • 25. Thanks
    Corey Roth