|
Gary Lapointe Profile |
|
|
I’m speaking at TEC 2010 - See you there!
Gary Lapointe I'm happy to announce that I will be speaking at the SharePoint Conference at The Experts Conference TEC 2010.
Dates: April 25-28
Location: JW Marriott Hotel Los Angeles at L.A. Live
Details: SharePoint The Experts Conference
Keynotes: Bill Baer SharePoint Team amp; MCM Instructor, Joel Oleson MCTS, Michael Noel MVP, Ben Curry MVP, Mike Watson former MCM Instructor
Featured Speakers: Gary Lapointe MVP, Dan Lewis, Zlatan Dzinic MVP, Rick Taylor MCT, Ram Gopinathan Microsoft MCM
Top...br/
br [read]. Posted: Thu, Feb 25th '10 |
4th Grade Math and PowerShell
Gary Lapointe My 10 year old daughter came home from school today with a simple math problem that she had to solve and she asked if there was an easier way to solve the problem. Basically the teacher explained that the number six was a perfect number because the sum of it's factors (excluding itself) is equal to the number and she wanted to know what the next perfect number was. The kids basically had to go through the numbers and manually add up the factors until they found a match. So naturally, the...br/
b [read]. Posted: Tue, Feb 23rd '10 |
Help Save "Reading is Fundamental"
Gary Lapointe I normally never post non-SharePoint or editorial type stuff on my blog but this really pissed me off and I felt I needed to do something. President Obama, in all his wisdom, has decided to cut funding for RIF (Reading is Fundamental), the nations largest children's literacy organization. It really irritates me that we're able to find money to buy old cars or provide free materials and labor to insulate homes but there's not enough money to help our kids learn to read? What kind of message is... [read]. Posted: Mon, Feb 8th '10 |
Growing the ShareSquared Team
Gary Lapointe It's great working for a small company but it's even greater seeing that company grow by hiring incredible talent - starting this Monday Paul Stork, MVP and general SharePoint extraordinaire, joins the ShareSquared team.
You can read Paul's announcement at http://sharepoint.mindsharpblogs.com/PaulS/default.aspx.
Welcome aboard Paul!
br/
br/
[[ This is a content summary only. Visit my website for full links, other content, and more! ]] [read]. Posted: Sun, Jan 24th '10 |
Creating a SharePoint 2010 Enterprise Search Service Application using PowerShell
Gary Lapointe The information in this post is specific to SharePoint 2010 Beta 2 and may need adjusting for the RTM version.
In an effort to continue with my previous posts where I demonstrated how to build a basic farm and it's site structure using XML configuration files and PowerShell for SharePoint 2010 I would like to now share how to create a search service application. An automated install of the service applications is, without a doubt, the most difficult PowerShell task you'll undertake when...br/
b [read]. Posted: Sun, Dec 20th '09 |
SharePoint 2010: STSADM and PowerShell
Gary Lapointe The information in this article is based on BETA 1 of SharePoint 2010 - there will likely be differences with the RTM release.
Finally, the NDA is lifted and we can openly talk about SharePoint 2010! There's so many cool things to talk about it's hard to decide where to begin, but as the focus of my blog has generally been on STSADM then I suppose that's a good place to start. The first thing we should do is load the new SharePoint 4.0 Management Console which can be found under the...
[[ This [read]. Posted: Mon, Oct 19th '09 |
Creating Custom SharePoint 2010 Cmdlets using Visual Studio 2010
Gary Lapointe With SharePoint 2010 we now have the ability to create custom PowerShell cmdlets that can be deployed just like any other SharePoint artifact using SharePoint Solution Packages (WSP) created with Visual Studio 2010. With SharePoint 2007 it was necessary to build a custom setup (MSI) package which had to be run on every server in the farm. This setup package would register a custom snap-in that you'd have to create which would be responsible for registering all of your custom cmdlets with the...
[read]. Posted: Mon, Oct 19th '09 |
SharePoint 2010: PSConfig and PowerShell
Gary Lapointe The information in this article is based on BETA 1 of SharePoint 2010 - there will likely be differences with the RTM release.
If you've ever done a scripted install of SharePoint 2007 then you are familiar with how to script the initial farm creation using psconfig.exe. Unfortunately psconfig is still with us in SharePoint 2010 but we do have some PowerShell cmdlets which replace certain psconfig commands. At present, Beta 1 that is, there are several cmdlets that are not fully functional...
[read]. Posted: Mon, Oct 19th '09 |
Setting Back Connection Host Names for SharePoint 2007 Using STSADM
Gary Lapointe Not too long ago Microsoft introduced a security fix which addresses a possible attack vector in which malicious software tries to impersonate a local request, thereby bypassing certain constraints. The problem with this fix is that it introduces some issues for SharePoint servers, effectively resulting in 401.1 Access Denied errors. Spence Harbar does a great write-up of the fix and the options available to get your SharePoint environment working again so I won't re-hash all that... [read]. Posted: Sun, Sep 20th '09 |
Attend the SharePoint Conference 2009 for Free!
Gary Lapointe ShareSquared, Inc. and Kodak just announced a contest where you can win a free pass to the 2009 SharePoint Conference and four nights stay at Mandalay Bay in Vegas! You can also win some free consulting or a Kodak scanner! Visit http://www.sharepointgiveaway.com/ for more information and to enter to win - good luck!
BTW, I'll be at the conference as well so look me up if you're there!
[[ This is a content summary only. Visit my website for full links, other content, and more! ]] [read]. Posted: Thu, Aug 20th '09 |
Setting PowerShell Switch Parameters Dynamically
Gary Lapointe I've been doing a lot of configuration driven PowerShell scripts lately and I had a bit of trouble figuring this bit out so I thought I'd write up a short post about it. A lot of the cmdlets that I've been working with take in switch parameters and I needed a way to set those parameters dynamically based on settings in a configuration file. For those new or unfamiliar with PowerShell, switch parameters are just parameters that don't have any corresponding value. Here's an...
[ [read]. Posted: Sat, Aug 1st '09 |
Custom SharePoint 2007 Site Collection Creation Page
Gary Lapointe A lot of people that are using SharePoint 2007 (WSS or MOSS) for collaboration have either enabled self service site creation in which they allow their end-users to create a page using the scsignup.aspx page or they have some process in place in which an IT administrator creates site collections for their users. Usually companies go the later route due to limitations with the self service site creation process; specifically, you cannot have the site created in a specific database, there's. [read]. Posted: Thu, Jul 9th '09 |
Download My Custom Extensions Source From CodePlex
Gary Lapointe I've been putting this off for a long time but I decided that it was time to push my source code for my custom STSADM commands and PowerShell CmdLets to CodePlex. You can find the project here: http://stsadm.codeplex.com/.
Note that if you want to download the latest tested release you should still do so from my downloads page on this blog but if you want to see the version history or get some checked in changes that are not yet released (think beta) then feel free to download from the... [read]. Posted: Wed, Jul 8th '09 |
Colorado Springs SharePoint User Group Meeting July 8th, 2009
Gary Lapointe If you're in the Colorado Springs area please join us for our next SharePoint User Group meeting tomorrow, July 8th, 2009. Shannon Bray will be presenting on the different caching techniques available within SharePoint - here's a synopsis from Shannon:
The topic for the evening will be caching in SharePoint 2007. Properly caching in SharePoint can significantly improve the performance of your farm. Some of the bullet points we will be hitting on will include: The Out of the...
[[ This is [read]. Posted: Tue, Jul 7th '09 |
Deploying SharePoint Files Not Handled by the WSP Solution Schema
Gary Lapointe I was working on a project recently where I had to deploy a settings file to the root of my web applications folder (where the web.config file resides). If you've ever had to do something like this before then you know that you cannot do this declaratively using the WSP's Solution schema. The Solution schema is really quite limiting as to where you can actually deploy files - as a result your only option is to create a custom Feature that runs some code when executed (because we...
[read]. Posted: Mon, Jul 6th '09 |
Setting List Properties using STSADM
Gary Lapointe Recently I had a reader of my blog send me a modified version of my gl-addlist command in which he added some additional properties to set a couple of the SPList properties (specifically the versioning settings). In thinking about this I decided that it might be helpful to have a command specifically for setting most of the SPList properties rather than try to incorporate them into a more general command like the gl-addlist command so I decided to create a new command that I called...
[[ [read]. Posted: Mon, Jul 6th '09 |
Recent Custom STSADM Extensions Bug Fixes
Gary Lapointe For those that follow me on twitter (http://twitter.com/glapointe) you probably already know about these fixes but I’ll try to provide more details here. While I was waiting to start my new job (see my previous post) I decided to take a look at a few of the STSADM commands that I built and fix some things that’s been nagging me for a while. The one I spent the most time on was the gl-convertsubsitetositecollection command and more specifically its partner the...
[[ This is a con [read]. Posted: Mon, Jul 6th '09 |
New Beginnings
Gary Lapointe The last three months have been rather crazy for me: my car got totaled when some idiot ran a red light and I smashed into her; I took some well needed vacation; wrapped up several client projects; and spent considerable time interviewing. Yup, interviewing. I had my last day with Statera on June 19th and I start my new job with ShareSquared today! That’s right, I’ll be working with fellow SharePoint MVP Maurice Prather and Keith “That SharePoint Guy” Richie! I’ [read]. Posted: Mon, Jul 6th '09 |
New STSADM Commands and Parameters with SharePoint 2007 SP2
Gary Lapointe I was working on getting SP2 installed so that I could write this post and then I saw that my buddy Todd Klindt beat me to the punch: http://www.toddklindt.com/blog/Lists/Posts/Post.aspx?List=56f96349%2D3bb6%2D4087%2D94f4%2D7f95ff4ca81f&ID=127. But, as Todd only listed the new commands I figured I’d continue with what I was planning which was to show the commands and the new parameters added to existing commands.
To do this I threw together a quick PowerShell script which parses the [read]. Posted: Fri, May 1st '09 |
Backup/Restore Now Supported Between Farms (via April CU)
Gary Lapointe I just saw a very exciting blog post from Stefan Goßner regarding the April 2009 Cumulative Update (CU) - with this update you can now use backup and restore to move site collections between farms: http://blogs.technet.com/stefan_gossner/archive/2009/05/01/red-is-green-up-is-down-and-the-unsupported-suddenly-becomes-supported.aspx.
So first off, yes there is an April CU even though SP2 just came out a couple of days ago (think about it - SP2 has been cooked for a while but they’ve been [read]. Posted: Fri, May 1st '09 |
Creating Default Site Groups After Creating Site Collections Using STSADM
Gary Lapointe I got an email from Jennifer Davis today asking why, when she ran my gl-createsiteindb command, did the default site groups not show up in the site collection, specifically the “ Members”, “ Owners”, and “ Visitors” groups. Upon digging further she realized that this behavior was not limited to my command as the out-of-the-box createsite and createsiteinnewdb commands exhibited the same behavior.
Basically what’s happening is that if...
[[ This is a content summary only. Vi [read]. Posted: Thu, Apr 30th '09 |
Getting an SPWebApplication object using PowerShell
Gary Lapointe A SharePoint deployment isn’t much of a deployment if there are no web applications. A web application in SharePoint contains one or more content databases, each of which can contain one or more site collections, etc., etc. The SPWebApplication class has tons of methods and properties for directly or indirectly manipulating all things related to web applications - you can do backups, add content databases and site collections, set alert settings, manipulate the web.config file, etc [read]. Posted: Mon, Apr 27th '09 |
Importing Audiences using STSADM
Gary Lapointe I recently posted about exporting audiences using my gl-exportaudiences STSADM command. Of course an export wouldn’t be of much use if you didn’t also have an import so I give you gl-importaudiences.
Developing this was really easy as I already had code that created an audience and its associated rules. All I had to do was read in the source XML file, do a little refactoring of the audience creation code and then call the rules creation code. One cool thing I added was the [read]. Posted: Sat, Apr 25th '09 |
Getting an SPFarm object using PowerShell
Gary Lapointe There are several core SharePoint objects that PowerShell programmers may need to work with in order to manipulate SharePoint via PowerShell scripts. Getting these objects is pretty simple but not all that intuitive to users who are still trying to learn PowerShell and the SharePoint API.
The SPFarm object is the top level object for working with SharePoint and it provides access to all the global settings for all servers, services, and solutions that are installed in the farm. To.. [read]. Posted: Sat, Apr 25th '09 |
PowerShell CmdLet Name Changes
Gary Lapointe Ever since I released my PowerShell CmdLets I’ve been unhappy about my choice to use the -gl in the name of the cmdlet. I felt it would be useful for numerous reasons but I didn’t like that it “broke the rules” of cmdlet naming conventions. And then Microsoft announced, via the PowerShell team blog, that some code will be added to V2 to enforce the prescribed naming conventions. You can find the post here:...
[[ This is a content summary only. Visit my website for full [read]. Posted: Sat, Apr 25th '09 |
Exporting Audiences using STSADM
Gary Lapointe I’d been wanting to build an export and import command for Audiences for quite some time but just haven’t gotten around to it. I’m currently looking for a good sample command to build during a possible talk at the next Best Practices conference so I decided to give this one a whack considering that I already had a good chunk of the code written and just needed to repurpose it. I don’t know if I’ll use this command for the presentation so if anyone has any good ideas of thin [read]. Posted: Mon, Apr 20th '09 |
Configuring SSO via STSADM
Gary Lapointe I can’t actually take credit for this particular command – in fact I’ve never configured SSO so I personally don’t know much about it. I got the code from Stef van Hooijdonk who graciously provided the code he produced.
I made a few minor changes to Stef’s code just to bring it in line with the rest of my code but otherwise it’s as was provided to me – as such I’m not really prepared to support this command as I didn’t personally create it but it’s really straightforwa [read]. Posted: Mon, Apr 20th '09 |
Working with SPWeb(Info) Objects Using PowerShell
Gary Lapointe I know, I know, I’m way behind on documenting my PowerShell cmdlets – I will be striving to get them done as soon as possible. I’ve already documented one of them, the Get-SPSite-gl cmdlet, and I will now continue with the Get-SPWeb-gl cmdlet. Hopefully I’ll be able to wrap up the others much quicker as they are a lot simpler – then I can finally start building new ones :)
Like the Get-SPSite-gl cmdlet the Get-SPWeb-gl cmdlet addresses some common issues found with working [read]. Posted: Wed, Apr 8th '09 |
New Issue with STSADM MergeContentDB
Gary Lapointe I just saw this post on the SharePoint forums: http://social.msdn.microsoft.com/Forums/en-US/sharepointgeneral/thread/e9cd9836-5a50-42b3-bf2f-02338a3168f3 – it appears that there’s a possibility for data corruption when using the STSADM mergecontentdb command. The post details a few things you can do to reduce the possibility of corruption when using the command but it would appear that the hidden message is to use Backup/Restore until a fix is released.
[[ This is a content summary [read]. Posted: Sun, Mar 22nd '09 |
Why I don’t use OpenWeb()
Gary Lapointe This has come up in various conversations recently so I figured I’d write up a short post about it. When trying to obtain an SPWeb object there are a couple of different options available using members of an SPSite instance. The first, and more common, is the OpenWeb() method and the second is using the AllWebs[] property collection. Here’s the problem I have with OpenWeb() (specifically the overload that takes no arguments) – consider the following code: string url =...
[read]. Posted: Sun, Mar 22nd '09 |
Follow Me On Twitter
Gary Lapointe I was having dinner the other night with lots of super star SharePoint MVPs where I ended up sitting next to Joel Oleson, Todd Baginski and Jason Medero – it wasn’t long and the subject of Twitter came up. Todd had just signed up the night before so I was able to get some insight from those who have been using it for quite some time as well as someone like Todd who just made the plunge. I’d been considering doing the twitter thing but just hadn’t made the commitment to do it [read]. Posted: Thu, Mar 5th '09 |
Deleting Orphaned Event Receivers using PowerShell
Gary Lapointe While looking through the event logs at a client of mine the other day I came across an odd error that was occurring regularly. Apparently they had developed a Feature which contained an Event Receiver which was programmatically bound to a series of lists. As time went on their requirements changed so they deleted the event receiver class. Problem was that the binding to the lists still exists so every time an item was updated an error would be dumped to the event log about a.. [read]. Posted: Thu, Mar 5th '09 |
Synchronizing Quota Settings via STSADM
Gary Lapointe When working with clients on their SharePoint deployment I often get questions about the quota templates and how they work. Quotas are kind of odd because of the disconnected nature of the quota template and the quota that is assigned to a site collection. Often people assume that changing the template settings affects all site collections using that template. Unfortunately that is not the case. The issue is made worse by the fact that the “Site Collection Quotas and... [read]. Posted: Thu, Feb 12th '09 |
Setting the Master Page Using STSADM
Gary Lapointe I’d thought about building an STSADM command to enable setting the master page of a site for quite a while but had opted not to do it simply out of principle – it’s generally a better idea to do this via a Feature and I didn’t really want to promote a bad practice. Ultimately though I had to concede that there are administrators who will not have the luxury of having developers who can create Feature that can be deployed to enable consistent application of their master page across [read]. Posted: Sun, Feb 8th '09 |
Downloads
Gary Lapointe I’ve decided to rework a few things and consolidate some of my downloads into a single posting which I’ll keep updating as I offer up new products. The first notable change is that there is now only one download for the STSADM and PowerShell source code. Also, the previous files (stsadm.zip and spposh.zip) have been deleted so if you were linking directly to these files (something I’d prefer people not do) please adjust your links to point to this download page...
[[ This is a [read]. Posted: Fri, Feb 6th '09 |
SharePoint Best Practices Conference Wrap Up
Gary Lapointe The SharePoint Best Practices Conference has come to a close and I had a great time. I presented two topics, one on using Content Types to improve discoverability and the other on sub-sites versus site collections and I helped out on a couple of experts panels. For the site collection talk I had the honor of being able to co-present with Jason Medero and we got to do the talk twice – I was pleasantly surprised when the second session was almost as full as the first. All-in-al [read]. Posted: Thu, Feb 5th '09 |
Don’t Use the PrepareToMove STSADM Command
Gary Lapointe Todd Carter just published an interesting post about when to use, and more appropriately, not use the preparetomove command: http://blogs.msdn.com/toddca/archive/2009/01/30/preparetomove-away-from-running-this-command.aspx. Essentially if you have at least the Infrastructure Update (IU) installed then using this command will cause you issues. See Todd’s post for more details.
[[ This is a content summary only. Visit my website for full links, other content, and more! ]] [read]. Posted: Sat, Jan 31st '09 |
SPDisposeCheck Released
Gary Lapointe This is a must have! If you do any kind of SharePoint development then you should strongly consider downloading the recently released SPDisposeCheck tool: http://blogs.msdn.com/pandrew/archive/2009/01/29/spdisposecheck-v1-3-1-is-released.aspx. This tool analyzes your assemblies and helps to identify potential memory leaks. I should note that you need to truly evaluate each result because not every item should be considered a show stopper – you need to understand the various.. [read]. Posted: Fri, Jan 30th '09 |
Working with SPSite(Info) Objects Using PowerShell
Gary Lapointe One of the first PowerShell cmdlets I built, Get-SPSite-gl, addresses some common issues found with working with SPSite objects. I struggled with how I could provide a means to quickly and easily get SPSite objects while at the same time helping administrators so they don’t have to worry (as much) about object disposal. For those that aren’t familiar with the SPSite object (Microsoft.SharePoint.SPSite), it’s the equivalent programmatic element for working with site collections. [read]. Posted: Wed, Jan 21st '09 |
Replacing Navigation URLs Using STSADM
Gary Lapointe I was working on a project last Fall where a client of mine had a single site collection for their entire document library which was expected to be over 1TB. As a result of the large size of the site collection we decided to break it up into multiple site collections each contained within their own content database (we ended up with 12 in the end). The problem was that when we migrated all the libraries to the new site collections we ended up with hundreds of broken links due to...
[read]. Posted: Sun, Jan 18th '09 |
Recalculating Usage Statistics via STSADM or PowerShell
Gary Lapointe I was perusing through the SharePoint forums the other day and I came across an issue that someone was having with the usage statistics information for their My Sites site collections. When they viewed the usage data (~site/_layouts/usage.aspx) they were seeing incorrect information. I’m not really sure why the numbers were wrong but fixing them turned out to be pretty easy. There’s a public method called “RecalculateStorageUsed” that, when called, will recalculate the [read]. Posted: Fri, Jan 16th '09 |
MVP for Another Year!
Gary Lapointe I just found out that I’ve been renewed as an MVP for another year! It’s been a crazy year – I started a new job allowing me to focus on SharePoint, I released somewhere around one hundred new STSADM commands, new PowerShell Cmdlets, lots of sample scripts, and two CodePlex projects (and that’s just the stuff I did on the side during my “free” time). I’m looking forward to this new year and hopefully, as I start doing more speaking at conferences, I’ll have a chance t [read]. Posted: Thu, Jan 1st '09 |
Initial Release of My SharePoint PowerShell Cmdlets
Gary Lapointe If you’ve been following my blog you’ll remember that I recently pushed out a “beta” build of some SharePoint PowerShell Cmdlets for some initial feedback and reviews. We’ll I’ve gone ahead and incorporated the feedback that I received and I am now officially releasing the first version of my cmdlets. The number of cmdlets has not changed from the beta build – they’ve just been cleaned up and enhanced. I will slowly start documenting each of the existing cmdlets [read]. Posted: Mon, Dec 22nd '08 |
Custom Field Types and WSS 4.0’s XSLT-based Field Type
Gary Lapointe I just posted an article related to the List View Web Part and WSS 4.0’s XSLT-based List View Web Part – I had known about this change for quite some time but this other change was new to me. It appears that there will now be a new XSLT-based field type. The following article discusses the upgrade issues for custom field types: The CustomFieldType rule in Pre-Upgrade Checker in Windows SharePoint Services 3.0 Service Pack 2 can warn that customized field types will not be...
[[ [read]. Posted: Sat, Dec 20th '08 |
Custom List Views and WSS 4.0’s XSLT-based List View
Gary Lapointe Some of us have known about this for a while but we’ve been unable to talk about it until now – Microsoft released the following article two days ago: The CustomListView rule in Pre-Upgrade Checker can warn that customized list views that will not be upgraded. Read this article closely because for those of you that hate the List View Web Part as much as I do you’ll be extremely pleased to hear about the future direction of it. Here’s a snippet from that article:
The followin [read]. Posted: Sat, Dec 20th '08 |
Ensuring a Valid SPContext via Feature Activation
Gary Lapointe I’ve been meaning to blog about this for a while but just haven’t gotten around to it. Have you ever needed to add a web part to a page during Feature activation? Of course you can do this declaratively using CAML but I usually prefer to do this stuff via code. The challenge is that occasionally you will need to activate the Feature outside the context of a web request – such as via STSADM – this becomes critical for certain web parts, such as earlier versions of the KP [read]. Posted: Sat, Dec 20th '08 |
gl-fixpagecontact Deprecated!!!
Gary Lapointe Woohoo! – I finally get to deprecate one of my commands – after creating and publishing 135 commands I discovered today that the August Cumulative Update fixes the issue that my gl-fixpagecontact command sought to address. If you look back at the post for that command you can see that there was a bug with the product which resulted in a user not found exception being thrown when looking at the settings of a publishing page. This happened in couple of different situations but the. [read]. Posted: Sat, Dec 20th '08 |
I'll be Speaking at the SharePoint Best Practices Conference
Gary Lapointe Catch me at the SharePoint Best Practices Conference in San Diego, California. The conference will be held February 2-4, 2009. I'll be presenting two topics, both currently scheduled for the last day, Wednesday:
IA260, Using Content Types to Improve Discoverability
Content Types are one of the great new features included with SharePoint 2007 and they can be used to serve many different needs. In this session we will discuss some best practices and lessons learned when...
[[ [read]. Posted: Mon, Dec 8th '08 |
My New PowerShell Cmdlets for SharePoint 2007: Feedback Requested!
Gary Lapointe Okay all you PowerShell superstars out there that have been using my STSADM commands - I need your help! I've decided to teach myself PowerShell and see if I can't leverage some of my STSADM experiences/code to expose some SharePoint functionality and I need some people who really know this PowerShell stuff to please take a look at what I've got so far and let me know if I'm way off base or not.
My initial stab includes 11 new cmdlets (10 Get and 1 Add): Get-SPContentType-gl ...
[[ This [read]. Posted: Thu, Nov 27th '08 |
Deactivating Features at Different Scopes Using STSADM
Gary Lapointe I just posted about one of my new commands, gl-activatefeature, which covers activating features at different scopes using STSADM. That article covers all the code necessary to not only implement the activation, but also the deactivation. So creating the next command, gl-deactivatefeature, was as simple as copying the container code for the activation command and changing a few simple lines of code. This command works exactly like the other except that it deactivates the...
[[ [read]. Posted: Sun, Nov 16th '08 |
Activating Features at Different Scopes Using STSADM
Gary Lapointe How many times have you had a Feature, either out-of-the-box or custom, that you have needed to activate at lots of different scopes or re-activate at lots of different scopes? To do this you may have found a way to get the list of site collections or webs and then somehow used that list in conjunction with the STSADM activatefeature command or worse you manually went to every site or web and manually activated or re-activated the Feature - this is extremely tedious and error prone as you. [read]. Posted: Sun, Nov 16th '08 |
A Better execadmsvcjobs STSADM Command
Gary Lapointe This is something that's been bugging me for a long time - when you run the out of the box execadmsvcjobs command on a server it only ensures that pending jobs on that one server are executed - when it completes it doesn't mean that jobs on other servers in the farm have completed. This gets real annoying when you are using a script to deploy solution because end up getting errors about pending timer jobs needing to complete.
I tried a couple of different approaches to address this...
[[ [read]. Posted: Sun, Oct 26th '08 |
Colorado Springs SharePoint User Group Meeting Slides
Gary Lapointe I'm a bit late in posting this but it's been a crazy couple of weeks. I promised my slide deck and scripts so here they are: STSADM.pptx Change Password Script Sample Install Script
And here's the "quick and dirty" batch file that I showed which demonstrates an easy way to store the last 10 backups of all your site collections within a web application: SET...
[[ This is a content summary only. Visit my website for full links, other content, and more! ]] [read]. Posted: Thu, Oct 23rd '08 |
Change Password Script
Gary Lapointe I'd been meaning to post this for quite some time but just haven't gotten around to it - as paranoid administrators we often find the need to change our service account passwords and doing so with a product like SharePoint can be a rather significant effort if you consider all the various accounts that may be used in a least privileges model. If you're just about to make hit this situation you're likely to do a quick search and find the following support article:...
[[ This is a content s [read]. Posted: Thu, Oct 23rd '08 |
Statera is Hiring in Dallas
Gary Lapointe Statera is in need of SharePoint talent in the Dallas, TX area. If you're interested here's the job description and contact info:
We are looking for a Senior MOSS 2007 (Microsoft Office SharePoint Server) Architect/Developer with 3-5+ years of SharePoint Portal and Office development experience in the Dallas Office of Statêra. Must have a solid understanding of the disciplines as they apply to the MOSS 2007 platform; users and permissions, layout and master pages, site...
[[ T [read]. Posted: Sat, Oct 18th '08 |
Changing the Application Pool Identity via STSADM
Gary Lapointe This past week I presented at the local Colorado Springs SharePoint User Group meeting on using and customizing STSADM. The talk was really less about STSADM and more about SharePoint administration tips, tricks, and best practices - but we did create a new STSADM command from scratch during the meeting. I've taken what we did during the meeting and reworked it to add proper validation and help documentation and have included it in my download as gl-updateapppoolaccount.
The...
[[ [read]. Posted: Mon, Oct 13th '08 |
Set User Profile Picture URL Property using STSADM (revisited)
Gary Lapointe A little over a year ago I created one of my first STSADM commands, gl-setpictureurlnewpath, which I developed in order to enable me to set the picture URL property for user profile objects to a new path as the result of the upgrade which resulted in the images going to a new library. This time I needed to do set the property but there was no existing data so the existing command I had wouldn't work as is. I considered reworking the command to accommodate both scenarios but in the... [read]. Posted: Fri, Sep 19th '08 |
Deleting an Event Receiver using STSADM
Gary Lapointe I had some time so I decided to add the counterparts to the gl-addeventreceiver command that I just published. I created two new commands, gl-deleteeventreceiver and gl-enumeventreceivers. This post will cover the delete command and I'll go over the enum command in my next post.
From a code perspective the delete command is very similar to the add command. The main difference (aside from the obvious call to Delete instead of Add) is that I've made the assembly, class, and...
[read]. Posted: Sun, Sep 14th '08 |
Adding Event Receivers using STSADM
Gary Lapointe A few months ago I created a CodePlex project that allows you to configure a library to allow the storing of web part page history. The project at its core used three item event receivers to listen to certain key events and either backup the page or restore the page based on the event. Recently I was thinking about what might be the best way to allow people to script the settings that enable the storing of page history. I decided that I would start off by providing a simple...
[read]. Posted: Sun, Sep 14th '08 |
Listing Event Receivers using STSADM
Gary Lapointe This post wraps up my event receiver posts. I just finished documenting the gl-addeventreceiver and gl-deleteeventreceiver commands and this final command would be gl-enumeventreceivers.
This command is the simplest of the three as it's just looping through all the event receivers belonging to the specified target and dumping the results out as XML. I've tried to structure the XML so that it conforms to the CAML schema therefore allowing the results to be put into a Feature if...
[ [read]. Posted: Sun, Sep 14th '08 |
Windows Server 2008 Default Impersonation Level Must Be Identify
Gary Lapointe If you're configuring a Windows Server 2008 environment with SharePoint 2007 and are planning on using Kerberos make sure that you do NOT set the default impersonation level for the server to delegate as recommended in this support article: http://support.microsoft.com/kb/953130 (note that Microsoft is working on updating this support article to reflect the differences with Windows Server 2008). If you do make this change then you will run into all kinds of issues with timer job related... [read]. Posted: Thu, Sep 11th '08 |
Colorado Springs SharePoint User Group Meeting
Gary Lapointe If you're in or near the Colorado Springs area please come and join us for the next Colorado Springs SharePoint User Group meeting to be held on October 8th. I'll be presenting on using STSADM and some common commands as well as demonstrating how to build new commands along with some best practices to consider. I'll be covering lots of different stuff which should be of interest to both administrators and developers including building install and password change scripts and...
[[ Th [read]. Posted: Sun, Sep 7th '08 |
Create a Publishing Page via STSADM
Gary Lapointe I'm working on a project which is going to require the creation of about a hundred publishing pages which were going to have to be created by hand. I really didn't want to have to sit there going through the UI to create all those pages so I threw together a new STSADM command that I could use via a script to create the pages: gl-createpublishingpage.
Creating publishing pages via code is pretty simple - you just use the PublishingWeb object's GetPublishingPages() method to return back... [read]. Posted: Fri, Sep 5th '08 |
Enumerating Email Enabled Lists via STSADM
Gary Lapointe I can't really take much credit for this command - fellow MVP Todd Klindt had a custom console application that he'd created to do the same thing but it was lacking some functionality and was not created as an stsadm extension. He asked if I'd mind reworking it to allow different scopes and to make it an extension. Fortunately I had some time so I took a look at his code to get this one started. In the end I only ended up using one line of code from Todd's version - the code... [read]. Posted: Thu, Aug 28th '08 |
New CRM Blog
Gary Lapointe A good friend and former employee of mine has finally started blogging about what he's doing/done with CRM. Mark Kovalcson is an extremely bright guy who has done some extraordinary things with Microsoft Dynamics CRM. He's only just started his blog so there's not much there yet but if you're into CRM or plan to be then keep an eye on Mark's blog - expect to see great things from him. You can find his blog here: http://crmscape.blogspot.com/
[[ This is a content summary only. [read]. Posted: Wed, Aug 27th '08 |
Updating the Default Content Access Account via STSADM
Gary Lapointe This is one that I've been wanting to address for a while and I finally decided to sit down and just do it. If you've had your environment in place long enough to have to change the passwords you know that you can change most of the passwords using the out of the box STSADM commands - many refer to this support article from Microsoft on how to do this: http://support.microsoft.com/kb/934838.
Because there's so many accounts to change and so many places to visit this is definitely one of.. [read]. Posted: Sun, Aug 17th '08 |
Enabling Audience Targeting on a List
Gary Lapointe I thought I was done documenting my audience related STSADM commands and then I realized that I had completely forgotten one. The first audience related command I had created was to enable audience targeting on a list - I called it gl-listaudiencetargeting. I needed this because my current project had tons of lists that that needed audience targeting turned on. Eventually these lists were added via a Feature but initially I did it via the command line with STSADM so that we...
[read]. Posted: Sat, Aug 16th '08 |
Setting the Audience Compilation Schedule via STSADM
Gary Lapointe In an effort to wrap up my audience related STSADM commands I created a command that allows me to set the audience compilation schedule via STSADM. I had to do some disassembling to figure out how to do this and it turned out that the code was virtually identical to what I had done for the gl-setuserprofileimportschedule command. So it turned out that I was able to create this command by simply coping the code from my other command and then just tweaking a couple lines to load up...
[read]. Posted: Thu, Aug 14th '08 |
Deleting an Audience via STSADM
Gary Lapointe Using the commands I've created so far you can now create audiences, add rules, and display those rules all via STSADM. If you're like me and you do a lot of testing of this stuff before you push out the final version then you'll want a way to also easily delete audiences that you've created. Of course you could easily do this via the browser but what if you've added complex rules to your audience using my gl-addaudiencerule command? You'll find that you can't delete it from... [read]. Posted: Thu, Aug 14th '08 |
Displaying Audience Rules via STSADM
Gary Lapointe Okay, so you've created your audience and used my gl-addaudiencerule command to add some complex rules to the audience. Three months later you've forgotten what those rules are and need to see them again - unfortunately you can't do that via the browser, so what do you do? Simple, you run gl-enumaudiencerules, another command I've created to help manage audiences via STSADM.
This command is really simple so I'll be brief - I simply loop through all the rules associated with an...
[ [read]. Posted: Sun, Aug 10th '08 |
Assigning Rules to Audiences via STSADM
Gary Lapointe If you read my last post, Creating Audiences via STSADM, then you know that I've been working on a project which requires me to be able to script out the creation of audiences via STSADM. My last post covered the creation of the audience itself, but an audience with no rules isn't all that useful, so for this post I'll be covering my next custom command, gl-addaudiencerule, which enables you to add complex rules to an audience.
I'll reiterate a couple of things regarding creating rules... [read]. Posted: Fri, Aug 8th '08 |
Creating Audiences via STSADM
Gary Lapointe The project that I'm currently working has a need to create a ton of audiences representing divisions, departments, locations, etc. We wanted to be able to include the creation of these audiences in our install script so that we easily recreate the audiences in various environments.
To accomplish this task there were two core things I had to figure out - the first was how to create the actual audience, this was the easy part. The second was how to assign rules to that audience -...
[read]. Posted: Fri, Aug 8th '08 |
Adding a List View Web Part to a Page
Gary Lapointe I had a requirement recently to show a view of a list from a child site on the page of a parent site. You can of course do this easily with a content query web part and then just manipulate the XSL to get the output to look the way you want but what if you want to be able to use the out of the box List View Web Part so that you get the toolbar and all the other stuff that the web part provides? Many people aren't even aware that this is possible but it is - unfortunately it's kind... [read]. Posted: Fri, Aug 8th '08 |
Setting List Content Types using STSADM
Gary Lapointe Sometimes when I'm working on a new Feature I find it easier to take certain snippets that I need to test and pull them out into custom STSADM commands. This enables me to quickly and easily test the core code and without having to go through all the deployment steps. It was for this purpose that I originally created this new command, gl-setlistcontenttypes. I did find later that the command ended up being real useful in a scripted deployment that I'm working on so I managed... [read]. Posted: Thu, Aug 7th '08 |
Delete All Users from a Site Collection
Gary Lapointe I was chatting with my buddy and fellow MVP, Todd Klindt, the other day and he was asking if I had a custom command that would allow him to quickly delete all the users added to a site collection. For his purposes he needed this to troubleshoot an issue he was having with a site collection that contained many thousands of users.
I figured this would be pretty easy to do - a simple while loop with a conditional check for site administrators to prevent them from being deleted so I quickly.. [read]. Posted: Thu, Aug 7th '08 |
Creating List/Library Folders Programmatically
Gary Lapointe I've got this method that I keep copying and pasting into different solutions so I figured I'd post it here in case someone else could benefit from it. You would think that it would be really easy to create folders in a list or library but oddly enough (or, if you've done SharePoint development long enough you would say typically enough), it's not. So, here's a simple little method to help you get a folder and have it created if it doesn't already exist: internal static...
[[ This i [read]. Posted: Fri, Jul 11th '08 |
Add List
Gary Lapointe I was working today on a scripted install of MOSS and one of my goals with the install is to mock up some sites with various configurations. These configurations will eventually be worked into Features that will be activated via a minimal publishing site definition but for the purposes of a quick demo I wanted to be able to quickly and easily create a bunch of out-of-the-box lists throughout various sites. To do this I threw together a new command: gl-addlist.
There's not much to... [read]. Posted: Wed, Jul 9th '08 |
Web Part Page History CodePlex Project
Gary Lapointe Have you ever been working with a web part page (either a standard web part page or a publishing page) and made a bunch of changes to your web part configurations and content over a period of time only to realize sometime down the road that you need to revert to a previous version? You then go to the version history for the page and find the one you want, do the revert and then return to the page only to find that none of your web parts were affected by the revert? If you haven't...
[read]. Posted: Thu, Jul 3rd '08 |
Trace Log Settings
Gary Lapointe It's been a little while since I've released any new commands so I decided to throw one together real quick. Fellow MVP, Matthew McDermott, was working on a scripted install and had asked if I had anything to set the path for the ULS logs. Unfortunately I didn't but a quick disassemble of the central admin page showed that the code to do this was really simple so I decided to throw a command together: gl-tracelog.
The code necessary to set the trace log properties is real simple -.. [read]. Posted: Thu, Jun 26th '08 |
WSS Build of My STSADM Extensions
Gary Lapointe If you're a WSS v3 user this will hopefully make you happy - I've reworked my custom extensions so that there is now a WSS specific build. This means that you can download the source and debug in a pure WSS environment and you will also no longer be plagued by commands being available but not working either at all (because they're just for MOSS) or only partially because I had one small MOSS specific feature that's not necessary for WSS.
If you look at the top of my blog (or in the...
[[ [read]. Posted: Fri, Jun 20th '08 |
Moving Databases, the Easy Way!
Gary Lapointe I've seen this come up a lot so I figured I'd write a short post about it. A lot of people have been asking how to move their databases to a new server and to do this the way most people are prescribing you've got a lot of reading and a lot of steps to perform. The following two post provide just a couple of examples of the numerous steps and issues to consider: http://techacid.spaces.live.com/blog/cns!6D62FC28E76BE4B!230.entry and...
[[ This is a content summary only. Visit my webs [read]. Posted: Thu, Jun 19th '08 |
Presetting Lookup Field Values via a Link
Gary Lapointe On a recent project I had a need to relate one list to another. The first list was a document library which stored project specs and the second was a list that contained user provided scores that were used to rank the projects. One simple requirement I had was to be able to provide a link to enter a score for a given project and have the lookup field corresponding to the project preset with the value of the field passed in. I also had to hide certain fields from from the input. [read]. Posted: Tue, Jun 17th '08 |
Solution Upgraded to VS2008
Gary Lapointe If you've downloaded the latest version of my code that I uploaded last night you may have noticed that I've finally upgraded the solution to use Visual Studio 2008. If you're wondering why it took me so long it's because I've been waiting for the 4.0 release of Resharper (my favorite VS add-in).
I also just got my license to VMWare Workstation and finally finished building my new development environment - so I'm now running Windows Server 2008 as my virtual machine for...
[[ This [read]. Posted: Fri, Jun 6th '08 |
Content Deployment QFE Pack Now Available
Gary Lapointe I just saw a couple of posts from AC and Spence regarding the release of the Content Deployment QFE Pack:
http://andrewconnell.com/blog/archive/2008/05/20/MOSS-2007-Content-Deployment-QFE-Pack-Now-Available-via-MSFT.aspx
http://harbar.net/archive/2008/05/21/MOSS-2007-Content-Deployment-QFE-Pack-Now-Available-via-MSFT.aspx
I won't reiterate what they've already done a good job stating. My point of this post is to ask those who have previously commented on my blog about issues with...
[[ [read]. Posted: Wed, May 21st '08 |
Profile Import Timer Job
Gary Lapointe I was recently trying to debug some issues that I was having with the people picker that is shown when creating audiences and I found that I needed a way to manually trigger the distribution list import quickly but I didn't always want to have to wait for the user profile import to finish. If you run an import using the SSP admin site you might notice that it imports all the user profile information and then it imports the distribution list information but there's no way (at least that I.. [read]. Posted: Sun, May 18th '08 |
Setting Metadata
Gary Lapointe In my last post I mentioned a project which required me to move documents from one list to another list in a different farm one folder at a time. Along with that was a requirement to set various field values (metadata) based on patterns in the folder name and/or filename. I needed a reasonably flexible way to accomplish this considering that the client didn't actually have a clue as to what they really wanted the rules to be. I already had a command (gl-replacefieldvalues)...
[read]. Posted: Sun, May 18th '08 |
Exporting and Importing List Folders
Gary Lapointe Those familiar with my commands know that I've got a few commands that I created to handle the exporting and importing of list items and lists using the content deployment API. If you're familiar with the API then you know that there's also an option to export and import list folders. Until a few weeks ago I didn't have a need for this so I hadn't bothered leveraging it but then I got a project which required migrating content from one farm to another, one folder at a time. ...
[read]. Posted: Sun, May 18th '08 |
Minor Update
Gary Lapointe I've pushed out a minor update to my code which affects several commands. Any command that took in an URL to a list view will now work with an URL to the list folder or the list view. For example, the gl-publishitems command will work using either of the two syntaxes:
stsadm -o gl-publishitems -url http://demo/pages/forms/allitems.aspx -scope list
stsadm -o gl-publishitems -url http://demo/pages -scope list
This is the case for all of my commands that took in a list view...
[[ Th [read]. Posted: Fri, May 2nd '08 |