While doing some testing after upgrading my dev machine to SP1, I ran into two
separate issues when trying to delete a web through the UI by using the “Sites
and Workspaces” link in Site Settings. Deleting through powershell worked fine.
Because it’s easier to copy+paste this later… This will disable a feature on all web applications in a farm. Very convenient for when you’re removing a feature from a solution.
Get-SPWebApplication | ForEach-Object {Disable-SPFeature "Solution.Name.FeatureName" -url $_.Url;}
This same PowerShell could be used for any other list to remove all of the items. I just needed it to remove the OOB reusable content.
$siteColTemp = Get-SPSite "http://yourSiteCollectionUrl"; $reusableContentList = $siteColTemp.RootWeb.Lists["Reusable Content"]; $reusableContentItems = $reusableContentList.Items; $reusableContentItemsCount = $reusableContentItems.Count; for($x=$reusableContentItemsCount-1;$x -ge 0; $x--){ $reusableContentItems[$x].Delete(); }
Full error: “Unable to create a Service Connection Point in the current Active Directory domain. Verify that the SharePoint container exists in the current domain and that you have rights to write to it.”
After installing SP2010 SP1, PSConfig failed and the log had the above error. I found that the timer service was stopped and restarted it. Retried install - no error.
|- And that’s a good thing! This morning while working to improve my extension for Google Calendar, I noticed that Google had added the ability to print multiple weeks or months straight from the Google Calendar. So where does that leave my extension? Well… unpublished and deleted at this point. I don’t see any reason to still make the extension available, maintain it, etc. if you can get the same or better experience straight from Google Calendar.
This idea comes from Kirk Hofer’s blog, but modfied to use the SharePoint 2010 powershell commandlets and not care about specifying credentials in the script. I figured most people would just keep using the credentials specified in their scheduled task. The script loads the SharePoint plugin, enumerates the zones, and sends a request to each one.
Add-PSSnapin Microsoft.SharePoint.PowerShell; function Get-WebPage([string]$url) { $wc = new-object net.webclient; $wc.credentials = [System.Net.CredentialCache]::DefaultCredentials; $pageContents = $wc.
Since the MSDN documentation for Default Custom Action Loacations and IDs is unreliable (they look to have copy+pasted the information from the SharePoint 2007 documentation), our only sure bet is to browse the file system and find the custom action IDs and groups ourselves.
I had need of this information today, and found the items from the site settings page located at:
C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\TEMPLATE\FEATURES\SiteSettings\SiteSettings.xml
For those looking specifically for it, here is the custom action for “Delete this site”:
This is pretty easy using powerhell with SharePoint 2010:
Get-SPWebApplication "http://WebApplicationUrl:PortIfNeeded" | Get-SPSite | ForEach-Object{Enable-SPFeature "Solution.Name.FeatureName" -url $_.Url}
If you try to access the SharePoint URL \_Layouts/ChangeSiteMasterPage.aspx and receive the following error:
One or more field types are not installed properly. Go to the list settings page to delete these fields.
The SharePoint Server Publishing Infrastructure feature needs to be turned on.