<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-4720673639166721776</id><updated>2011-12-31T07:14:50.524+11:00</updated><title type='text'>SharePoint Spot</title><subtitle type='html'>Blogging from the SharePoint field by a SharePoint Solution Consultant.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default?start-index=101&amp;max-results=100'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>102</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-1804288760528880402</id><published>2011-02-20T00:32:00.001+11:00</published><updated>2011-02-20T00:32:14.066+11:00</updated><title type='text'>RSS Reader, Claims Authentication and Kerberos</title><content type='html'>&lt;p&gt;In a demo I was helping to set up last week, I had to configure an RSS Reader web part to read an RSS Feed from MySite (The Activity Feed, to be precise). Back in SharePoint 2007, you could not use the OTB RSS Feed Reader web part without running Kerberos, and the same goes for 2010.&lt;/p&gt;  &lt;p&gt;However, as it was demo time I also wanted to give us the flexibility of switching to another authentication provider if we got the chance to demo it (eg Live ID) – to do so once it's initially provisioned requires 4-5 lines of PowerShell script:&lt;/p&gt;  &lt;pre&gt;&lt;font face="Verdana"&gt;If you have not loaded the &amp;quot;SharePoint Powershell Window&amp;quot;, you'll need to run &lt;/font&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;font face="Courier New"&gt;Add-PSSnapin Microsoft.SharePoint.PowerShell &lt;/font&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Then to switch to Claims Auth:&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;$webApp = Get-SPWebApplication &lt;a href="http://mywebapp"&gt;http://mywebapp&lt;/a&gt;&lt;br /&gt;$webApp.UseClaimsAuthentication = 1;&lt;br /&gt;$webApp.Update()&lt;br /&gt;$webApp.ProvisionGlobally() &lt;br /&gt;$webApp.MigrateUsers($True)&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;And to revert back to Classic mode authentication just change the 1 to a 0 :&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;$webApp = Get-SPWebApplication &lt;a href="http://mywebapp"&gt;http://mywebapp&lt;/a&gt;&lt;br /&gt;$webApp.UseClaimsAuthentication = 0;&lt;br /&gt;$webApp.Update()&lt;br /&gt;$webApp.ProvisionGlobally() &lt;br /&gt;$webApp.MigrateUsers($True)&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;font face="Verdana"&gt;Too easy!&lt;/font&gt;&lt;/pre&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-1804288760528880402?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/1804288760528880402/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=1804288760528880402' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/1804288760528880402'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/1804288760528880402'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2011/02/rss-reader-claims-authentication-and.html' title='RSS Reader, Claims Authentication and Kerberos'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-4891860860965024819</id><published>2011-02-07T10:24:00.001+11:00</published><updated>2011-02-07T10:24:17.619+11:00</updated><title type='text'>This item and all items under it will not be crawled because the owner has set the NoCrawl flag to prevent it from being searchable</title><content type='html'>&lt;p&gt;Happy days, there's a new setting in SharePoint 2010. This one caught me by surprise though, because it stops the entire site collection being indexed.&lt;/p&gt;  &lt;p&gt;In the site collection settings under the &amp;quot;Site Administration&amp;quot; setting, there's an option called &amp;quot;Search and offline availability&amp;quot; which contains a switch that seems to be disabled by default for certain templates (eg for the &amp;quot;Blank&amp;quot; site template, &amp;quot;Search Centre&amp;quot; or &amp;quot;My Sites&amp;quot;). If you are getting messages in the Unified Logging Service on the SharePoint Servers that looks like &amp;quot;This item and all items under it will not be crawled because the owner has set the NoCrawl flag to prevent it from being searchable&amp;quot;, then go into Site Settings –&amp;gt; Site Administration –&amp;gt; Search and Offline Availability for the site in question and set the &amp;quot;Indexing Site Content&amp;quot; switch to &amp;quot;Yes&amp;quot;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_jqzNMr6xgzY/TU8tnJD6IOI/AAAAAAAAAII/550bMfELw5g/s1600-h/NoCrawl%5B3%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="NoCrawl" border="0" alt="NoCrawl" src="http://lh4.ggpht.com/_jqzNMr6xgzY/TU8tn_tZ3lI/AAAAAAAAAIM/jXu7WPpEZws/NoCrawl_thumb%5B1%5D.png?imgmax=800" width="644" height="396" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Easy to fix, hard to find – all of the other search controls for a site collection are located under the &amp;quot;Site Collection Administration&amp;quot; setting, but this one – and ONLY this one – is tucked away under &amp;quot;Site Administration&amp;quot;… &lt;/p&gt;  &lt;p&gt;Ah well. At least the problem's resolved and I don't have to investigate what might have been a configuration problem with FAST :)&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-4891860860965024819?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/4891860860965024819/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=4891860860965024819' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/4891860860965024819'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/4891860860965024819'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2011/02/this-item-and-all-items-under-it-will.html' title='This item and all items under it will not be crawled because the owner has set the NoCrawl flag to prevent it from being searchable'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_jqzNMr6xgzY/TU8tn_tZ3lI/AAAAAAAAAIM/jXu7WPpEZws/s72-c/NoCrawl_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-5863307106793757225</id><published>2010-12-09T06:22:00.001+11:00</published><updated>2010-12-09T06:22:58.566+11:00</updated><title type='text'>Hot – Map SkyDrive folders as Drive letters on your PC using WebDav!</title><content type='html'>&lt;p&gt;Well… this is the coolest thing I've seen in a while – So I have always thought that the Office Web Apps were using WebDav to pass the files back and forward, but I've just been too lazy to investigate it.&lt;/p&gt;  &lt;p&gt;While suffering from a bout of insomnia (I've been up since 1:30am this morning), I noticed (while converting my Kids DVD Collection to DivX) that there were some new network places in my &amp;quot;Network Places&amp;quot; folder in the format &lt;a href="mailto:xxxxxx.docs.live.net@SSL"&gt;xxxxxx.docs.live.net@SSL&lt;/a&gt; (where the xxxxxx were 6 random alphanumeric characters). &amp;quot;Blast!&amp;quot; I thought, &amp;quot;Bloody Spyware on my PC!&amp;quot;&lt;/p&gt;  &lt;p&gt;Happily, &lt;a href="http://www.google.com.au/search?q=docs.live.net@SSL&amp;amp;rls=com.microsoft:en-au:IE-SearchBox&amp;amp;ie=UTF-8&amp;amp;oe=UTF-8&amp;amp;sourceid=ie7&amp;amp;rlz=1I7GGLJ_en" target="_blank"&gt;not the case&lt;/a&gt; – Using Office 2010 with Web Apps is what seems to create them. As I was looking through the search results, I saw &lt;a href="http://www.mikeplate.com/how-to-connect-to-skydrive-with-webdav/" target="_blank"&gt;an article&lt;/a&gt; from a guy called &lt;a href="http://www.mikeplate.com/" target="_blank"&gt;Mike Plate&lt;/a&gt; who's created &lt;a href="http://skydrivesimpleviewer.codeplex.com/" target="_blank"&gt;a little tool that allows you to explore the WebDav URL's of your own SkyDrive&lt;/a&gt;… and all of a sudden my eyes started to sparkle…&lt;/p&gt;  &lt;p&gt;As the connection protocol is WebDav, there's nothing stopping you from connecting your SkyDrive folders up as drive letters on your local machine – and leveraging the 25GB free storage space to store… well whatever the hell you want! &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Automated Remote backup location &lt;/li&gt;    &lt;li&gt;Shipping large files between PC's &lt;/li&gt;    &lt;li&gt;Shipping large files or collections of files between friends (because remember, you can secure these SkyDrive folders to whomever you want) &lt;/li&gt;    &lt;li&gt;Any data that could benefit from cloud storage &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Now, here's the nice bit – Live Mesh does not run on Windows XP, 2003 or earlier (Microsoft's way of giving private enterprise the bird for hanging onto XP for so long). However, Office 2010 and Web Connectivity still works with SkyDrive… and it runs on XP… so if you are leveraging the SkyDrive as one of your synched storage locations, there's nothing stopping you from hooking up that same SkyDrive folder as a drive letter on your XP computer and using &lt;a href="http://technet.microsoft.com/en-us/magazine/ee851678.aspx" target="_blank"&gt;RoboCopy&lt;/a&gt; (&lt;a href="http://technet.microsoft.com/en-us/magazine/2006.11.utilityspotlight.aspx" target="_blank"&gt;With or Without the GUI&lt;/a&gt;), &lt;a href="http://technet.microsoft.com/en-us/magazine/2009.04.utilityspotlight.aspx" target="_blank"&gt;RichCopy&lt;/a&gt; (better than RoboCopy - here's a &lt;a href="http://download.microsoft.com/download/f/d/0/fd05def7-68a1-4f71-8546-25c359cc0842/HoffmanUtilitySpotlight2009_04.exe" target="_blank"&gt;link directly to the tool&lt;/a&gt; - both are free from the &lt;a title="Microsoft" href="http://www.microsoft.com" target="_blank"&gt;boys in blue&lt;/a&gt;) or some other such tool to keep things in perfect harmony (like the &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=E0FC1154-C975-4814-9649-CCE41AF06EB7" target="_blank"&gt;SyncToy&lt;/a&gt; for XP users).&lt;/p&gt;  &lt;p&gt;It really &lt;a href="http://www.imdb.com/title/tt0108186/quotes?qt1183122" target="_blank"&gt;tweaks my melon&lt;/a&gt; that MS want to try and encourage people to upgrade by simply preventing the use of these value-added tools on older systems. &lt;a href="http://kb4sp.wordpress.com/2008/04/21/live-messenger-and-live-writer-on-2008-server-or-2003-for-that-matter/" target="_blank"&gt;I've heard the &amp;quot;Untested, unsupported Operating System&amp;quot; story before&lt;/a&gt; (a good example of more late night drivel from me) – but if the only reason to do it &lt;a href="http://en.wikipedia.org/wiki/Planned_obsolescence" target="_blank"&gt;is forced obsolescence&lt;/a&gt;, that can &lt;a href="http://www.theinquirer.net/inquirer/news/1031804/creative-driver-debacle-rumbles" target="_blank"&gt;make companies look really bad&lt;/a&gt;. So… has anyone tried installing IE9 on XP yet? I did yesterday - tried hard, got barred. Another example of forced obsolescence…&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-5863307106793757225?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/5863307106793757225/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=5863307106793757225' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/5863307106793757225'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/5863307106793757225'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2010/12/hot-map-skydrive-folders-as-drive.html' title='Hot – Map SkyDrive folders as Drive letters on your PC using WebDav!'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-7948143338848498208</id><published>2010-09-09T00:00:00.001+10:00</published><updated>2010-09-09T00:00:54.509+10:00</updated><title type='text'>Setting up SharePoint to work with an SMS Provider</title><content type='html'>&lt;p&gt;One cool thing to demo with SharePoint 2010 is the new SMS Alerting feature. For instance, this sort of thing is good at the exec level if they need to be alerted when a new ASX Bulletin is released… or when the sales figures for last month are published. The service works the same way as a normal email alert does, but if SMS Services are enabled at the web app level or the Farm level, you can elect to be notified by SMS instead.&lt;/p&gt;  &lt;p&gt;Pop someone’s SMS in, change a document, continue your sales patter and 30 seconds or so later they hear the all-too-familiar “beep-beep… beep-beep” on their phone. Then, if you are demoing a publically accessible site they can even click on the link provided and open up the relevant document. Ever so sweet!&lt;/p&gt;  &lt;p&gt;Problems…    &lt;br /&gt;Sometimes, new functionality comes with new issues.&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;If you set up the SMS Service properties in Central Admin at the Farm level, then decide they’d be better at the Web App level, then remove them from the web app and try to configure them at the farm level again it does not work. For some reason there’s a piece of UI logic in the Subscription alert page that baulks at this scenario. The workaround is to configure it at the Web app level again. &lt;/li&gt;    &lt;li&gt;Setting it up requires the use of Powershell – it’s far from a “switch it on and go” type of feature… but it doesn’t tell you what’s missing, it just says that it “had a problem Connecting”.      &lt;p&gt;       &lt;br /&gt;&lt;a href="http://lh5.ggpht.com/_jqzNMr6xgzY/TIeW7nbTWgI/AAAAAAAAAHc/_P34jZR-xN0/s1600-h/image0043.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image004" border="0" alt="image004" src="http://lh4.ggpht.com/_jqzNMr6xgzY/TIeW8999mtI/AAAAAAAAAHg/7aUB1HVy5yE/image004_thumb1.jpg?imgmax=800" width="644" height="411" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;You are subject to the same constraints as normal email alerting, so make sure you set the timer job to run every minute (you can do this thru the Central Admin UI now) otherwise in demoland it will take an eternity. &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;The Powershell steps required are:&lt;/p&gt;  &lt;p&gt;Save the ROOT certificate from your service provider’s website (in my provider’s case &lt;a href="https://www.redoxygen.net/"&gt;https://www.redoxygen.net/&lt;/a&gt;, that's the one called &amp;quot;Go Daddy Class 2 Certification Authority&amp;quot;).&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_jqzNMr6xgzY/TIeW95kXkUI/AAAAAAAAAHk/HuTr4AKA-jA/s1600-h/Untitled33.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Untitled3" border="0" alt="Untitled3" src="http://lh4.ggpht.com/_jqzNMr6xgzY/TIeW_mfKpjI/AAAAAAAAAHo/IIl2DgVEiVc/Untitled3_thumb1.jpg?imgmax=800" width="644" height="348" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Open the SharePoint PowerShell Console &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_jqzNMr6xgzY/TIeXA0wR3HI/AAAAAAAAAHs/XcWcZ66pYAM/s1600-h/untitled53.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="untitled5" border="0" alt="untitled5" src="http://lh3.ggpht.com/_jqzNMr6xgzY/TIeXCTSWAcI/AAAAAAAAAHw/_jN6GQ-6t84/untitled5_thumb1.jpg?imgmax=800" width="393" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;and run the following Powershell script:    &lt;br /&gt;$cert = Get-PfxCertificate &amp;lt;PathToYourSavedCertificateFile&amp;gt;     &lt;br /&gt;New-SPTrustedRootAuthority -Name &amp;lt;AnyNameYouWant&amp;gt; -Certificate $cert&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_jqzNMr6xgzY/TIeXD4_dhvI/AAAAAAAAAH0/bFs-mkAkzF0/s1600-h/untitled43.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="untitled4" border="0" alt="untitled4" src="http://lh4.ggpht.com/_jqzNMr6xgzY/TIeXFP5c9OI/AAAAAAAAAH4/sbFjLpm0B7c/untitled4_thumb1.jpg?imgmax=800" width="610" height="484" /&gt;&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Then it works. The guidelines I followed are on this Technet Article: &lt;a href="http://technet.microsoft.com/en-us/library/ee428323.aspx"&gt;http://technet.microsoft.com/en-us/library/ee428323.aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Of course, if the provider is not handling the web service call correctly you will be able to configure the SMS alerting but will prevent you from successfully send an SMS. The best way to fix this is to have a look at the actual messages the Timer Service is generating – check &lt;a href="http://sharepointspot.blogspot.com/2010/09/work-out-what-heck-timer-service-is.html"&gt;this article out&lt;/a&gt; to find out how to do it.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-7948143338848498208?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/7948143338848498208/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=7948143338848498208' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/7948143338848498208'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/7948143338848498208'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2010/09/setting-up-sharepoint-to-work-with-sms.html' title='Setting up SharePoint to work with an SMS Provider'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_jqzNMr6xgzY/TIeW8999mtI/AAAAAAAAAHg/7aUB1HVy5yE/s72-c/image004_thumb1.jpg?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-2954813143152907707</id><published>2010-09-08T23:56:00.001+10:00</published><updated>2010-09-08T23:56:40.337+10:00</updated><title type='text'>Work out what the heck the Timer service is doing…</title><content type='html'>&lt;p&gt;Ahh the SharePoint timer service. Where would we be without it? It’s been there since the beginning, making sure things just tick along in the background. But what happens when it goes rogue? How do you look at the actual tasks that the timer service is performing or the messages it is sending via HTTPS?&lt;/p&gt;  &lt;p&gt;As part of troubleshooting a problem with the SMS Alerting service we could see that the service was sending a set of web service messages to the service provider, then bombing out with a 500 error. We could see the exception being thrown in the ULS (SharePoint) logs but we could not determine what message / parameters were being sent because the comms were over HTTPS and the tools that you normally use to decrypt the messages (Fiddler) will only hook into the iexplore.exe threads.&lt;/p&gt;  &lt;p&gt;The way to get the raw unencrypted data spat out is to enable logging on the timer service and then restart it. To do so:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Find the file owstimer.exe.config in the “%CommonProgramFiles%\Microsoft Shared\web server extensions\14\BIN” folder (If it does not exist, you may need to create it). &lt;/li&gt;    &lt;li&gt;Add lines 5 to 41 inclusive of the following text into the config file… &lt;/li&gt; &lt;/ul&gt;  &lt;div class="csharpcode"&gt;   &lt;pre&gt;&lt;span class="lnum"&gt;   1:  &lt;/span&gt;&lt;span class="kwrd"&gt;&amp;lt;?&lt;/span&gt;&lt;span class="html"&gt;xml&lt;/span&gt; &lt;span class="attr"&gt;version&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;1.0&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;encoding&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;utf-8&amp;quot;&lt;/span&gt; ?&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;   2:  &lt;/span&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;configuration&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;   3:  &lt;/span&gt;  &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;runtime&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;   4:  &lt;/span&gt;  &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;runtime&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;   5:  &lt;/span&gt;  &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;system.diagnostics&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;   6:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;trace&lt;/span&gt; &lt;span class="attr"&gt;autoflush&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;true&amp;quot;&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;   7:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;sources&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;   8:  &lt;/span&gt;      &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;source&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;System.Net&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;   9:  &lt;/span&gt;        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;listeners&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;  10:  &lt;/span&gt;          &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;add&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;System.Net&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;  11:  &lt;/span&gt;        &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;listeners&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;  12:  &lt;/span&gt;      &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;source&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;  13:  &lt;/span&gt;      &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;source&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;System.Net.HttpListener&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt; &lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;  14:  &lt;/span&gt;        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;listeners&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;  15:  &lt;/span&gt;          &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;add&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;System.Net&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;  16:  &lt;/span&gt;        &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;listeners&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;  17:  &lt;/span&gt;      &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;source&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;  18:  &lt;/span&gt;      &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;source&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;System.Net.Sockets&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;  19:  &lt;/span&gt;        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;listeners&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;  20:  &lt;/span&gt;          &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;add&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;System.Net&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;  21:  &lt;/span&gt;        &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;listeners&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;  22:  &lt;/span&gt;      &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;source&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;  23:  &lt;/span&gt;      &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;source&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;System.Net.Cache&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;  24:  &lt;/span&gt;        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;listeners&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;  25:  &lt;/span&gt;          &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;add&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;System.Net&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;  26:  &lt;/span&gt;        &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;listeners&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;  27:  &lt;/span&gt;      &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;source&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;  28:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;sources&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt; &lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;  29:  &lt;/span&gt;  &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;sharedListeners&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;  30:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;add&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;  31:  &lt;/span&gt;    &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;System.Net&amp;quot;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;  32:  &lt;/span&gt;    &lt;span class="attr"&gt;type&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;System.Diagnostics.TextWriterTraceListener&amp;quot;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;  33:  &lt;/span&gt;    &lt;span class="attr"&gt;initializeData&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;C:\\Tracing\\OWSTimer_SNtrace.log&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;traceOutputOptions&lt;/span&gt; = &lt;span class="kwrd"&gt;&amp;quot;DateTime&amp;quot;&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;  34:  &lt;/span&gt;  &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;sharedListeners&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;  35:  &lt;/span&gt;  &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;switches&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;  36:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;add&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;System.Net&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;value&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;Verbose&amp;quot;&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;  37:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;add&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;System.Net.Sockets&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;value&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;Verbose&amp;quot;&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;  38:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;add&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;System.Net.Cache&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;value&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;Verbose&amp;quot;&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;  39:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;add&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;System.Net.HttpListener&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;value&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;Verbose&amp;quot;&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;  40:  &lt;/span&gt;  &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;switches&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;  41:  &lt;/span&gt;  &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;system.diagnostics&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;pre&gt;&lt;span class="lnum"&gt;  42:  &lt;/span&gt;&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;configuration&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;style type="text/css"&gt;&lt;br /&gt;&lt;br /&gt;.csharpcode, .csharpcode pre&lt;br /&gt;{&lt;br /&gt;	font-size: small;&lt;br /&gt;	color: black;&lt;br /&gt;	font-family: consolas, "Courier New", courier, monospace;&lt;br /&gt;	background-color: #ffffff;&lt;br /&gt;	/*white-space: pre;*/&lt;br /&gt;}&lt;br /&gt;.csharpcode pre { margin: 0em; }&lt;br /&gt;.csharpcode .rem { color: #008000; }&lt;br /&gt;.csharpcode .kwrd { color: #0000ff; }&lt;br /&gt;.csharpcode .str { color: #006080; }&lt;br /&gt;.csharpcode .op { color: #0000c0; }&lt;br /&gt;.csharpcode .preproc { color: #cc6633; }&lt;br /&gt;.csharpcode .asp { background-color: #ffff00; }&lt;br /&gt;.csharpcode .html { color: #800000; }&lt;br /&gt;.csharpcode .attr { color: #ff0000; }&lt;br /&gt;.csharpcode .alt &lt;br /&gt;{&lt;br /&gt;	background-color: #f4f4f4;&lt;br /&gt;	width: 100%;&lt;br /&gt;	margin: 0em;&lt;br /&gt;}&lt;br /&gt;.csharpcode .lnum { color: #606060; }&lt;/style&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&amp;#160;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;  &lt;li&gt;Save and restart the timer service &lt;/li&gt;&lt;br /&gt;&lt;br /&gt;  &lt;li&gt;A file will be created in the following location - C:\Tracing\OWSTimer_SNtrace.log (if not, try adding in the folder). &lt;/li&gt;&lt;br /&gt;&lt;br /&gt;  &lt;li&gt;Execute the bug you want to look at and roll back the owstimer.exe.config changes so the logging stops. &lt;/li&gt;&lt;br /&gt;&lt;br /&gt;  &lt;li&gt;Open the relevant log file and look at the contents – you can see the hex representation of the Web Service calls, as well as the english translation &lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Now you can compare the web service comms or operations the timer service is undertaking and work out where it is not set up correctly. In our case, there was a value we were expecting back from the service provider which SharePoint was not receiving and as such, the call was failing. Once the service was fixed, it worked.&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Cheers!&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Brad&lt;/p&gt;&lt;br /&gt;&lt;style type="text/css"&gt;&lt;br /&gt;&lt;br /&gt;.csharpcode, .csharpcode pre&lt;br /&gt;{&lt;br /&gt;	font-size: small;&lt;br /&gt;	color: black;&lt;br /&gt;	font-family: consolas, "Courier New", courier, monospace;&lt;br /&gt;	background-color: #ffffff;&lt;br /&gt;	/*white-space: pre;*/&lt;br /&gt;}&lt;br /&gt;.csharpcode pre { margin: 0em; }&lt;br /&gt;.csharpcode .rem { color: #008000; }&lt;br /&gt;.csharpcode .kwrd { color: #0000ff; }&lt;br /&gt;.csharpcode .str { color: #006080; }&lt;br /&gt;.csharpcode .op { color: #0000c0; }&lt;br /&gt;.csharpcode .preproc { color: #cc6633; }&lt;br /&gt;.csharpcode .asp { background-color: #ffff00; }&lt;br /&gt;.csharpcode .html { color: #800000; }&lt;br /&gt;.csharpcode .attr { color: #ff0000; }&lt;br /&gt;.csharpcode .alt &lt;br /&gt;{&lt;br /&gt;	background-color: #f4f4f4;&lt;br /&gt;	width: 100%;&lt;br /&gt;	margin: 0em;&lt;br /&gt;}&lt;br /&gt;.csharpcode .lnum { color: #606060; }&lt;/style&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-2954813143152907707?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/2954813143152907707/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=2954813143152907707' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/2954813143152907707'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/2954813143152907707'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2010/09/work-out-what-heck-timer-service-is.html' title='Work out what the heck the Timer service is doing…'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-5964838377740465612</id><published>2010-08-26T17:29:00.001+10:00</published><updated>2010-08-26T17:29:22.684+10:00</updated><title type='text'>Open in Explorer View fails on Windows 2008 R2 and SharePoint 2007</title><content type='html'>&lt;p&gt;When I was building up a MOSS 2007 Environment recently (actually at the start of May), I had a lot of trouble opening document libraries in Explorer view. Like all good developers I have the latest and greatest software stack on my trusty workstation (Apparently this company does have a standard operating environment, but whatever).&lt;/p&gt;  &lt;p&gt;Anyway,as I was ahead of the curve in terms of OS (2008 R2) and App (Office 2007), I was having difficulty opening a doc Library in explorer view. It was just me, so I was on my own to fix it (I can still hear the Service desk team snickering as they hung up the phone after offering to rebuild my laptop with the latest SOE – Still XP and Office 2003 at that stage…).&lt;/p&gt;  &lt;p&gt;After hunting for ages on the web, this guy nailed it. &lt;a title="http://netindonesia.net/blogs/andriyadi/archive/2010/01/04/wss-3-0-sp2-on-windows-server-2008-r2-open-with-windows-explorer-failed.aspx" href="http://netindonesia.net/blogs/andriyadi/archive/2010/01/04/wss-3-0-sp2-on-windows-server-2008-r2-open-with-windows-explorer-failed.aspx"&gt;http://netindonesia.net/blogs/andriyadi/archive/2010/01/04/wss-3-0-sp2-on-windows-server-2008-r2-open-with-windows-explorer-failed.aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;The issue was a mix of Client side and Server side problems – WebDAV!&lt;/p&gt;  &lt;p&gt;For the Client – you need to have the Desktop Experience feature activated if you are running a server OS,and the WebClient service running and starting automatically.&lt;/p&gt;  &lt;p&gt;For the server – Because it’s IIS7,you also need to DISABLE (remove) the IIS WebDAV module from the site causing you trouble. This will not only let you “Open in Explorer view”, but it will also let you map the document library as a network folder in Windows Explorer!&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_jqzNMr6xgzY/TGPumyJr49I/AAAAAAAAAGA/_w01TJdM1II/s1600-h/WebDav_Step1%5B1%5D%5B3%5D.jpg"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" class="wlDisabledImage" title="WebDav_Step1[1]" border="0" alt="WebDav_Step1[1]" src="http://lh5.ggpht.com/_jqzNMr6xgzY/TGPuoLoRaoI/AAAAAAAAAGE/4wD_ocecrLg/WebDav_Step1%5B1%5D_thumb%5B1%5D.jpg?imgmax=800" width="644" height="393" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;!--&lt;br /&gt;You also need to enable WebDAV Authoring service and turn it on using the menus on the far right:&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;a href="$WebDav_Step2115.jpg" rel="WLPP"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" class="wlDisabledImage" title="WebDav_Step2[1]" border="0" alt="WebDav_Step2[1]" src="$WebDav_Step21_thumb13.jpg" width="644" height="393"&gt;&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;The WebDAV authoring service is enabled as a feature of the IIS Application in Server Admin screen. Open IIS,look for the WebDAV authoring feature, then tick the box and go through to the end of the wizard.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Restart IIS admin panel and open the “WebDAV Authoring” icon, then enable WebDAV on the right. &lt;br /&gt;&lt;br /&gt;--&gt;Sorted!&lt;/p&gt;  &lt;p&gt;Thanks go to &lt;a href="http://netindonesia.net/blogs/andriyadi/archive/2010/01/04/wss-3-0-sp2-on-windows-server-2008-r2-open-with-windows-explorer-failed.aspx" target="_blank"&gt;Andri Yadi&lt;/a&gt; for outlining most of the indicated steps above. At least 2010 “just works”… well, not really… but you don’t have to spend much time configuring the OS as you do configuring the app.&lt;/p&gt;  &lt;p&gt;Cheers!    &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-5964838377740465612?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/5964838377740465612/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=5964838377740465612' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/5964838377740465612'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/5964838377740465612'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2010/08/open-in-explorer-view-fails-on-windows_26.html' title='Open in Explorer View fails on Windows 2008 R2 and SharePoint 2007'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_jqzNMr6xgzY/TGPuoLoRaoI/AAAAAAAAAGE/4wD_ocecrLg/s72-c/WebDav_Step1%5B1%5D_thumb%5B1%5D.jpg?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-7735057410788965282</id><published>2010-08-26T16:26:00.001+10:00</published><updated>2010-08-26T16:26:15.776+10:00</updated><title type='text'>This web site has been configured to disallow editing with SharePoint Designer</title><content type='html'>&lt;p&gt;With SharePoint 2010, it comes with a button that allows you to open up SharePoint designer and edit the page that you are seeing in front of you. It’s great – particularly for demos.&lt;/p&gt;  &lt;p&gt;What’s not so great is when you click the button… and you get the familiar SharePoint interface… and it says “This web site has been configured to disallow editing with SharePoint Designer”. &lt;/p&gt;  &lt;p&gt;Then you check the SharePoint Settings in Central Admin for the web App…&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_jqzNMr6xgzY/THYI7pBVDrI/AAAAAAAAAGw/6sr2_ALN0i4/s1600-h/image%5B2%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_jqzNMr6xgzY/THYI8RHNYlI/AAAAAAAAAG0/iZAUTce3qws/image_thumb.png?imgmax=800" width="628" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;and in the Site Collection…&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_jqzNMr6xgzY/THYI9Dvle0I/AAAAAAAAAG4/S-MtF9vwXXA/s1600-h/image%5B5%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_jqzNMr6xgzY/THYI-B3Fn2I/AAAAAAAAAG8/1miqSY0_0bs/image_thumb%5B1%5D.png?imgmax=800" width="628" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Make Sure WebDav is enabled and Client Integration…&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_jqzNMr6xgzY/THYI-obOY0I/AAAAAAAAAHA/mINblG6WXQk/s1600-h/image%5B8%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_jqzNMr6xgzY/THYI_R4JGgI/AAAAAAAAAHE/0tpIzsNs1-c/image_thumb%5B2%5D.png?imgmax=800" width="628" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_jqzNMr6xgzY/THYJASF9XDI/AAAAAAAAAHI/aOz3o8H83xM/s1600-h/image%5B11%5D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_jqzNMr6xgzY/THYJBNyQyHI/AAAAAAAAAHM/xkKyat7Xuy0/image_thumb%5B3%5D.png?imgmax=800" width="610" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;etc etc… then you realise that the button is triggering SPD 2007 to open instead of 2010. Nice idea Microsoft, making sure people couldn’t break the site by trying to edit it with the wrong editor (no sarcasm – I really like the idea)… but something like “You must use SharePoint Designer 2010 to edit this site” would have been more intuitive. &lt;/p&gt;  &lt;p&gt;Ah well… &lt;img style="border-bottom-style: none; border-right-style: none; border-top-style: none; border-left-style: none" class="wlEmoticon wlEmoticon-smile" alt="Smile" src="http://lh5.ggpht.com/_jqzNMr6xgzY/THYJBhUsCPI/AAAAAAAAAHQ/8uUlM7tdX6I/wlEmoticon-smile%5B2%5D.png?imgmax=800" /&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-7735057410788965282?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/7735057410788965282/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=7735057410788965282' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/7735057410788965282'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/7735057410788965282'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2010/08/this-web-site-has-been-configured-to.html' title='This web site has been configured to disallow editing with SharePoint Designer'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_jqzNMr6xgzY/THYI8RHNYlI/AAAAAAAAAG0/iZAUTce3qws/s72-c/image_thumb.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-3818843430089516878</id><published>2010-08-26T15:52:00.001+10:00</published><updated>2010-08-26T15:52:29.574+10:00</updated><title type='text'>Booth Babes / Gold Coast Meter Maids at Tech-Ed</title><content type='html'>&lt;p&gt;For those of you that are not technology-based, there was a very very very small group of people at Tech-Ed that objected to the use of Gold Coast Meter Maids for a promotional activity at the opening night.&lt;/p&gt;  &lt;p&gt;When I think of Marketing, I think:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Who is my target audience? &lt;/li&gt;    &lt;li&gt;What are my key messages? &lt;/li&gt;    &lt;li&gt;How can I get my message received by my target audience? &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;When you look at Tech-Ed, you have the majority of the attendees (including me, when I used to go) that are:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Male &lt;/li&gt;    &lt;li&gt;Technology-aware &lt;/li&gt;    &lt;li&gt;Key Influencers in the buying cycle (a few are even decision-makers and have budgets) &lt;/li&gt;    &lt;li&gt;Are about as likely to meet one of these type of ladies in a social situation as they are to get Lara Croft to come to life and leap out of the poster that’s blu-tacked on their bedroom wall &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;The opportunity for the “Target Audience” to take something that has been touched by a “Booth Babe” and keep it might just be the missing link the vendor needs to close the next deal or open the next opportunity.&lt;/p&gt;  &lt;p&gt;Now for all of the PC people out there…&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;If there was no demand for this type of marketing strategy, it would stop &lt;/li&gt;    &lt;li&gt;If these ladies did not want to be objectified, they could &amp;lt;gasp&amp;gt; not apply for the job!!! &lt;/li&gt;    &lt;li&gt;If someone found the presence of women in uniform distasteful they could      &lt;ul&gt;       &lt;li&gt;choose to look away, &lt;/li&gt;        &lt;li&gt;attend another exhibit, or &lt;/li&gt;        &lt;li&gt;boycott the vendor’s product altogether. &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Nobody is forcing the attendees of Tech-Ed to go to a strip club (where – I agree – Women are objectified). Nobody is forcing attendees to talk to these booth attendants. And it’s much nicer to talk to someone who is nice to look at than be worried the boil on their neck is going to explode all over you. &lt;/p&gt;  &lt;p&gt;What’s funny is that nobody complained about the exceptionally attractive ladies wearing a small amount of purple spandex advertising RSVP in the City2Surf this year. Now, reality will tell you that they are PAID TO BE THERE because the are GOOD LOOKING and represent the kind of person whom singles HOPE TO MEET ON RSVP (Booth Babes, but without the “booth”). I can’t see how any of them would actually use the service – they’d have no problems getting a date – and it was a pleasant distraction (for the runners) to an otherwise boring warm-up and run.&lt;/p&gt;  &lt;p&gt;Same thing goes for &lt;a href="http://www.hootersaustralia.com/" target="_blank"&gt;Hooters&lt;/a&gt; – if you don’t want to go there, don’t! Their ribs are awesome though and their chicken wings... really, if you have not been you are missing out.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://twitter.com/anthonybaxter/status/22041515435" target="_blank"&gt;This guy has taken his objections too far&lt;/a&gt;, as has &lt;a href="http://twitter.com/kcarruthers/status/21997119087" target="_blank"&gt;this person&lt;/a&gt; and &lt;a href="http://twitter.com/ceibner/status/22007025670" target="_blank"&gt;this person&lt;/a&gt;. It’s like Lolly-free checkout aisles for parents who cannot control their kids (and so they force Woolworths &amp;amp; Coles to do their parenting for them).&lt;/p&gt;  &lt;p&gt;These people had the right idea – all in good humour&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://twitter.com/GoldenTao/status/22003510503"&gt;http://twitter.com/GoldenTao/status/22003510503&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://twitter.com/trixtah/status/21987004485"&gt;http://twitter.com/trixtah/status/21987004485&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://twitter.com/themolk/status/21986582748"&gt;http://twitter.com/themolk/status/21986582748&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://twitter.com/OldSpiceTechEd/status/21988951934"&gt;http://twitter.com/OldSpiceTechEd/status/21988951934&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://twitter.com/techAU/status/21988346435"&gt;http://twitter.com/techAU/status/21988346435&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://hashalbum.com/auteched?page=2"&gt;http://hashalbum.com/auteched?page=2&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://twitter.com/themolk/status/21988086858"&gt;http://twitter.com/themolk/status/21988086858&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://twitter.com/M_is_for_mike/status/21989088864"&gt;http://twitter.com/M_is_for_mike/status/21989088864&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Tech-Ed Australia is at the Gold Coast. “Meter Maids” and the associated uniforms are also a staple part of the Gold Coast. Perhaps Microsoft could have looked at the reaction the NetRegistry Nurses (who were fully covered) got and thought “There might be PR problems with this” but was anyone hurt? Nope. Have the Politically Correct people ensured next year’s Tech-Ed will be boring as between sessions or at the opening party? Yep.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-3818843430089516878?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/3818843430089516878/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=3818843430089516878' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/3818843430089516878'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/3818843430089516878'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2010/08/booth-babes-gold-coast-meter-maids-at.html' title='Booth Babes / Gold Coast Meter Maids at Tech-Ed'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-2695246096992144057</id><published>2010-08-20T03:24:00.001+10:00</published><updated>2010-08-20T03:24:21.987+10:00</updated><title type='text'>Got 2 Active Directory servers on the same domain, each with SharePoint / WSS installed? Uninstalling SharePoint on one AD server will break the other Installation!</title><content type='html'>&lt;p&gt;Had a problem with my test system recently – I was doing some maintenance on one of my Active Directory servers and noticed that it had SharePoint installed on it. So in a bid to keep a test environment relatively clean, I uninstalled the SharePoint instance on that server.&lt;/p&gt;  &lt;p&gt;A few weeks later (tonight actually) I needed to do some tests around how SharePoint renders &amp;quot;Limited Access&amp;quot; groups… so I load the URL and get the following message:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;Please hit the &amp;quot;Refresh&amp;quot; button in your &lt;em&gt;web&lt;/em&gt; browser to retry your request. &lt;b&gt;...&lt;/b&gt; &lt;em&gt;Failed to initialize the AppDomain&lt;/em&gt;:/&lt;em&gt;LM&lt;/em&gt;/&lt;em&gt;W3SVC&lt;/em&gt;/1/&lt;em&gt;ROOT&lt;/em&gt;/&lt;/p&gt;    &lt;p&gt;&lt;em&gt;Exception&lt;/em&gt;: &lt;em&gt;System&lt;/em&gt;.&lt;em&gt;IO&lt;/em&gt;.&lt;em&gt;FileLoadException Message&lt;/em&gt;: &lt;em&gt;Could not load file or assembly&lt;/em&gt; '&lt;em&gt;System&lt;/em&gt;. &lt;b&gt;...&lt;/b&gt; &lt;em&gt;or one of its dependencies&lt;/em&gt;. &lt;em&gt;Access is denied.&lt;/em&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;That's funny – it was working last time I opened it! The web sites are still running, no service account lock-out, security seems to be a bit odd though… the sharepoint app folders on the hard dive all seem to have some broken accounts associated with them. That's when the penny began the long fall down… because I have 2 DC's for the same domain, when you install SharePoint on a DC it creates the WSS_WPG and WSS_ADMIN_WPG groups which have special permissions – service accounts belong to them, etc… but &lt;u&gt;installing it on a DC creates them as an Active Directory Group&lt;/u&gt; – so installing them is fine, but when you uninstall one of the instances on one of the servers, it removes the groups from the Domain, rendering the other instance useless.&lt;/p&gt;  &lt;p&gt;Not the end of the world though – uninstall and reinstall SharePoint and attach to the Admin database – bam, all the sites reappear (as do the AD Security groups).&lt;/p&gt;  &lt;p&gt;Sweet!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-2695246096992144057?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/2695246096992144057/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=2695246096992144057' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/2695246096992144057'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/2695246096992144057'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2010/08/got-2-active-directory-servers-on-same.html' title='Got 2 Active Directory servers on the same domain, each with SharePoint / WSS installed? Uninstalling SharePoint on one AD server will break the other Installation!'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-3883789604842816479</id><published>2010-08-16T18:30:00.001+10:00</published><updated>2010-08-16T18:30:24.898+10:00</updated><title type='text'>Document Libraries and Lists controls disappear when you add a webpart</title><content type='html'>&lt;p&gt;I just noticed an odd behaviour – it seems that when you add a web part to a page that is related to a Document Library it hides the normal ribbon web part controls. Well, that sucks! &lt;/p&gt;  &lt;p&gt;It did not affect the interface in 2007, but it appears as though they’ve built some logic in that says “If the page has a non-standard web part loaded, hide the ‘Library Tools’ controls”. It also puts the same web part on every other view page that is in the document library (which is kind of handy, but it does not leave you any way to get back to the Document Library settings pages).&lt;/p&gt;  &lt;p&gt;The problem here is that the only way to then edit the document library settings is through SharePoint Designer… Does anyone see the flawed logic here?&lt;/p&gt;  &lt;p&gt;Everyone loves pictures, so…&lt;/p&gt;  &lt;p&gt;OTB Doc Library view (the ubiquitous allitems.aspx page)…&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_jqzNMr6xgzY/TGj3EX6MQgI/AAAAAAAAAGY/Hfua8R_GPCw/s1600-h/image%5B3%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" class="wlDisabledImage" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_jqzNMr6xgzY/TGj3FEDSWoI/AAAAAAAAAGc/NP6AuNrLrJY/image_thumb%5B4%5D.png?imgmax=800" width="644" height="329" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Add a web part (Content Editor Web Part for example) – Empty&lt;/p&gt;  &lt;p&gt;Goooooooone!&lt;/p&gt;  &lt;p&gt;Where are you Library Tools Tab? VVV&lt;a href="http://lh5.ggpht.com/_jqzNMr6xgzY/TGj3FiCa97I/AAAAAAAAAGg/j3GOQIIE4ck/s1600-h/image%5B7%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" class="wlDisabledImage" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_jqzNMr6xgzY/TGj3GUJKqiI/AAAAAAAAAGk/tvIeOxIJsG8/image_thumb%5B9%5D.png?imgmax=800" width="644" height="331" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;And out of edit mode…&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_jqzNMr6xgzY/TGj3HDXCZSI/AAAAAAAAAGo/VxXfCmr50qc/s1600-h/image%5B11%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" class="wlDisabledImage" title="image" border="0" alt="image" src="http://lh6.ggpht.com/_jqzNMr6xgzY/TGj3H6lGvHI/AAAAAAAAAGs/ciMEFPRz3O4/image_thumb%5B14%5D.png?imgmax=800" width="644" height="331" /&gt;&lt;/a&gt;    &lt;br /&gt;&lt;/p&gt;    &lt;p&gt;Anyway, I suppose the only way to work around that issue is to create a page and insert the auto-generated library’s web part – at least the Document Library web pages then stay fully functional. Took me a while to realise what was going on – I thought some of the jQuery code I was putting in was hiding it by accident!&lt;/p&gt;  &lt;p&gt;Cheers!&lt;/p&gt;  &lt;p&gt;Brad&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-3883789604842816479?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/3883789604842816479/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=3883789604842816479' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/3883789604842816479'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/3883789604842816479'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2010/08/document-libraries-and-lists-controls.html' title='Document Libraries and Lists controls disappear when you add a webpart'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_jqzNMr6xgzY/TGj3FEDSWoI/AAAAAAAAAGc/NP6AuNrLrJY/s72-c/image_thumb%5B4%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-8418648955263295932</id><published>2010-08-13T09:09:00.001+10:00</published><updated>2010-08-13T09:09:59.506+10:00</updated><title type='text'>Content type '0x01010007FF3E057FA8AB4AA42FCB67B453FFC100E214EEE741181F4E9F7ACC43278EE811' not found in web 'http://SharePoint:5001'.</title><content type='html'>&lt;p&gt;I was working on a system yesterday which appeared to be working fine. However, I noticed that when I tried to create a new page, I got this error:&lt;/p&gt;  &lt;p&gt;Content type '0x01010007FF3E057FA8AB4AA42FCB67B453FFC100E214EEE741181F4E9F7ACC43278EE811' not found in web 'http://SharePoint:5001'. &lt;/p&gt;  &lt;p&gt;Obviously if you are here you may have different numbers where I have '0x01010007FF3E057FA8AB4AA42FCB67B453FFC100E214EEE741181F4E9F7ACC43278EE811' and a different server / farm name (although the &lt;a href="http://naspinski.net/post/Content-type-0x01010007FF3E057FA8AB4AA42FCB67B453FFC100E214EEE741181F4E9F7ACC43278EE811-not-found-in-web.aspx"&gt;other examples I have seen on the web had the same UID for the Content Type&lt;/a&gt;). &lt;/p&gt;  &lt;p&gt;Nevertheless, running the repair option on the SharePoint Settings and Configuration Wizard made the problem disappear like dew on a hot morning. I don't think this sort of error would be caused by a database corruption (The SaCW doesn't do much with the DB), so it was probably related to improper security applied on one of the folders or assets in the 12 hive. &lt;/p&gt;  &lt;p&gt;There were also some other indications out on the WWW that indicated a similar sort of problem might be experienced &lt;a href="https://msmvps.com/blogs/obts/archive/2007/03/28/721173.aspx"&gt;through an 03 to 07 SharePoint upgrade&lt;/a&gt;. &lt;/p&gt;  &lt;p&gt;Thanks to &lt;a href="http://naspinski.net/author/naspinski.aspx"&gt;Naspinski&lt;/a&gt; for highlighting the problem and the solution. This site may also have an answer that is more &amp;quot;Enterprise-Friendly&amp;quot; than re-running the setup, but I didn't spot it until this morning - &lt;a title="http://sharepointknowledgebase.blogspot.com/2009/03/content-type-0x01010007ff3e057fa8ab4aa4.html" href="http://sharepointknowledgebase.blogspot.com/2009/03/content-type-0x01010007ff3e057fa8ab4aa4.html"&gt;http://sharepointknowledgebase.blogspot.com/2009/03/content-type-0x01010007ff3e057fa8ab4aa4.html&lt;/a&gt;. &lt;/p&gt;  &lt;p&gt;Cheers!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-8418648955263295932?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/8418648955263295932/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=8418648955263295932' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/8418648955263295932'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/8418648955263295932'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2010/08/content-type-not-found-in-web.html' title='Content type &amp;#39;0x01010007FF3E057FA8AB4AA42FCB67B453FFC100E214EEE741181F4E9F7ACC43278EE811&amp;#39; not found in web &amp;#39;http://SharePoint:5001&amp;#39;.'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-4064364113811085020</id><published>2010-08-13T09:03:00.001+10:00</published><updated>2010-08-13T09:03:58.573+10:00</updated><title type='text'>Cannot start service SPAdmin on computer .</title><content type='html'>&lt;div&gt;Had this error crop up while trying to create a new farm last night:&lt;/div&gt;  &lt;div&gt;Cannot Start service SPAdmin on Computer .&lt;/div&gt;  &lt;div&gt;I was trying to add a new server to an existing farm, and what would happen is the SharePoint Config wizard would bomb out at step 2 (Connecting to the database). It would then log the indicated error. We were also getting some &amp;quot;Cannot connect to Database as user NT_AUTHORITY\ANONYMOUS&amp;quot; in the event log.&lt;/div&gt;  &lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;div&gt;When the &amp;quot;Connect to Database&amp;quot; message appears, the system is performing the following tasks:&lt;/div&gt;  &lt;ul&gt;   &lt;li&gt;Creating the security groups on the servers &lt;/li&gt;    &lt;li&gt;Creating / updating the services on the server (including security) &lt;/li&gt;    &lt;li&gt;Creating the web applications and web sites &lt;/li&gt;    &lt;li&gt;Copying across all of the custom Solutions &lt;/li&gt;    &lt;li&gt;And probably some other stuff I can't see &lt;/li&gt; &lt;/ul&gt;  &lt;div&gt;Doing this takes time (especially if the farm contains a lot of this additional content). As a result, the request to start the timer service is killed off before it gets a chance to properly start.&lt;/div&gt;  &lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;div&gt;The solution was to create the following 2 keys in the registry:&lt;/div&gt;  &lt;p&gt;HKLM\SYSTEM\CurrentControlSet\Control&lt;/p&gt;  &lt;blockquote style="margin-right: 0px" dir="ltr"&gt;   &lt;p&gt;add/modify DWORD value ServicesPipeTimeout to 60000 (60 seconds) &lt;/p&gt; &lt;/blockquote&gt;  &lt;p dir="ltr"&gt;HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control&lt;/p&gt;  &lt;blockquote style="margin-right: 0px" dir="ltr"&gt;   &lt;p&gt;add/modify STRING value WaitToKillServiceTimeout to 120000 (120 seconds) &lt;/p&gt; &lt;/blockquote&gt;  &lt;p dir="ltr"&gt;Bill Baer from Microsoft had the answer on his blog - Option 4 on this page - &lt;a href="http://blogs.technet.com/wbaer/archive/2007/10/15/kb934525-troubleshooting.aspx"&gt;http://blogs.technet.com/wbaer/archive/2007/10/15/kb934525-troubleshooting.aspx&lt;/a&gt;. Don't forget to reboot after applying the registry changes!&lt;/p&gt;  &lt;p dir="ltr"&gt;Brad&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-4064364113811085020?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/4064364113811085020/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=4064364113811085020' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/4064364113811085020'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/4064364113811085020'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2010/08/cannot-start-service-spadmin-on.html' title='Cannot start service SPAdmin on computer .'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-7635387536099835179</id><published>2010-08-13T09:02:00.001+10:00</published><updated>2010-08-13T09:03:00.012+10:00</updated><title type='text'>w00t! A supported way of adding and removing themes from a Web Application!</title><content type='html'>&lt;p&gt;One thing that's always bothered me about theming SharePoint is that essentially you are modifying system files. While this is unsupported, it's the accepted practice – Heck, the theming Queen herself, Heather Solomon takes you step by step through doing it this way… until now :)&lt;/p&gt;  &lt;p&gt;&lt;a href="The only thing you have to do is add the Theme to the THEMES folder and add your own custom SPThemes.XML somewhere in the 12 hive (a folder in the FEATURES folder could be a good example) and add this path to my solution and you&amp;rsquo;re done ;)"&gt;Robin Meure&lt;/a&gt; from &lt;a href="http://www.zevenseas.com/"&gt;Zevenseas&lt;/a&gt; has come up with a new Central Admin app page that allows you to select a Web Application and essentially &amp;quot;Nominate&amp;quot; the themes you want to be made available to the site collections within the Web Application. You can also add New Themes without modifying the spthemes.xml file (that we all know and love) – From robin's blog post:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;The only thing you have to do is add the Theme to the THEMES folder and add your own custom SPThemes.XML somewhere in the 12 hive (a folder in the FEATURES folder could be a good example) and add this path to my solution and you’re done!&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;You can download the compiled code from &lt;a href="http://zsthemes.codeplex.com/"&gt;here&lt;/a&gt;, and see the blog article with usage instructions &lt;a href="http://community.zevenseas.com/Blogs/Robin/archive/2009/08/03/adding-themes-the-supported-way.aspx"&gt;here&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Thanks Robin!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-7635387536099835179?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/7635387536099835179/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=7635387536099835179' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/7635387536099835179'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/7635387536099835179'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2010/08/w00t-supported-way-of-adding-and.html' title='w00t! A supported way of adding and removing themes from a Web Application!'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-8089260392348499062</id><published>2010-08-12T23:30:00.001+10:00</published><updated>2010-08-12T23:30:03.247+10:00</updated><title type='text'>I didn’t know you could do that!!! – Embedding the version number into a document footer (Office 2007 Only)</title><content type='html'>&lt;p&gt;I love SharePoint. The constant “Gee, I didn’t know you could do that” moments that only come at 2AM in the morning.&lt;/p&gt;  &lt;p&gt;This one is compliments of a Demo preparation, one question in the demo script in particular asks about document policies. So I open it up and make sure the Disposal Policy is set for the demo… then I have a look at the other ones, and the “Label” one catches my eye.&lt;/p&gt;  &lt;p&gt;I recently had a client come and ask me if they could embed the current version number of the document in the document footer so that when they printed it, everyone would know which version they were looking at. I said at the time that it would require a small amount of development (which was correct if you are stuck using Office 2003 like they are) – but if you have the unadulterated joy of ribbonly goodness that is in Office 2007, then Oh! Happy Days! - you can just add a label from the Information policy and make sure that it includes the variable placeholder {Version}.&lt;/p&gt;  &lt;p&gt;&lt;a href="https://rvczog.bay.livefilestore.com/y1mGxquDU0K53zpoJuh0IG8uPhSOCCWpf50I8Th7vDBtK4ndGBfXZ3i44VHZsnl2fXBBKWEZHD18aztuHib-1mMsVVlDUjJoYtZ_jYiw-mCzMhg1DXEI0mjk2EYQkr4ha3XfPyTkLCyHtdd28J1WBO0Yg/image[5].png" rel="WLPP"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="https://rvczog.bay.livefilestore.com/y1m-kuJw2ZGfCcf8uY4Z9h3-r9oBeAwdEbGSP2UZesEQQ0FOJl8MCvnV1lQ975GBUmcEUz-4Xh4qNlNwt55ziYvVCbRXSZ10u8o837iqP6U30PWzpgvZSSKO107O5cdWen8ZLzUVNxexB1k1TCZ36cvfw/image_thumb[6] 69011912.png" width="270" height="484" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Then you open the document, insert the Label QuickPart and save. &lt;/p&gt;  &lt;p&gt;&lt;a href="https://rvczog.bay.livefilestore.com/y1mTWZsNlsyz3uzBXQkC5rPf7ZPHa8mrWCsR0bcNSfNDqVM3DCfFCtoYegGT0YPiees4ESZzco737Wx-UuUZ1CVeVbaYP2Owbglu1KR9PfYKZP0mdPYZM2tVQeNXC2wSqp1Rt82dOvN0U-fUk5Db_SibA/image[20].png" rel="WLPP"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="https://rvczog.bay.livefilestore.com/y1moLQReLjtn2uCMQp8r0p-vloxCp7MMmR8CVuIHOAdFUKLzGPs63PJ2QKG7WAA8HEwSEweuGuZkfniFZo3i6_MqaXlskawbwdYZin7kAxXORTfwWe4VJ4V-kkUCJDUMU93fSJcVYcZuWmFrGE4JUP05Q/image_thumb[16].png" width="644" height="480" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;When you re-open the document, voila! The footer contains your version number! Thanks Brian for your detailed guide - &lt;a title="http://bryansgeekspeak.blogspot.com/2009/03/moss-2007-show-sharepoint-version.html" href="http://bryansgeekspeak.blogspot.com/2009/03/moss-2007-show-sharepoint-version.html"&gt;http://bryansgeekspeak.blogspot.com/2009/03/moss-2007-show-sharepoint-version.html&lt;/a&gt; – which my cloudy brain needed to make this work (I never closed and reopened the document – Just thought it would pick up the version number immediately).&lt;/p&gt;  &lt;p&gt;Naturally, this is more effective when you have versioning switched on – so remember to enable it on the document library. And if this is something you want to have in all documents, make a mandatory site policy that is applied across all Document Libraries.&lt;/p&gt;  &lt;p&gt;Bedtime…&lt;/p&gt;  &lt;p&gt;B&lt;/p&gt;  &lt;p&gt;[UPDATE 12-Mar-2010] - You may need to add the &amp;quot;Version&amp;quot; field to the Document Library or Content type you are trying to configure before you can successfully add it. Same goes for the &amp;quot;Last Modified&amp;quot; date, etc.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-8089260392348499062?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/8089260392348499062/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=8089260392348499062' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/8089260392348499062'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/8089260392348499062'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2010/08/i-didnt-know-you-could-do-that.html' title='I didn’t know you could do that!!! – Embedding the version number into a document footer (Office 2007 Only)'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-23512687975318243</id><published>2010-08-12T23:27:00.001+10:00</published><updated>2010-08-12T23:27:42.413+10:00</updated><title type='text'>Multiple choice fields get set to default value when saving a document to SharePoint 2007 using Office Word 2003</title><content type='html'>&lt;p&gt;Had this happen to me at a client's site. Would not have believed it if I had not seen it with my own eyes…&lt;/p&gt;  &lt;p&gt;When a user opened an office document (in our case, it was a word document) in Microsoft Office 2003 and then saved it, it reset all of the multi-choice fields to their default values. In fact, it was impossible to save anything but the default values from within Office 2003. The process worked fine in Office 2007… so what was happening?&lt;/p&gt;  &lt;p&gt;According to &lt;a href="http://dirkvandenberghe.com/archive/2009/11/03/saving-document-to-sharepoint-using-office-2003-resets-choice-metadata-fields-to-default-values.aspx"&gt;this article&lt;/a&gt;, it appears a bug was introduced in SP2 where if the default document Content type (Document) is removed from a document library and replaced with an alternative (eg a content type that inherits from Document), it cannot resolve the multi-choice fields properly and so it resets them to the default property.&lt;/p&gt;  &lt;p&gt;There's a fix for this issue - &lt;a href="http://support.microsoft.com/kb/971500/"&gt;http://support.microsoft.com/kb/971500/&lt;/a&gt; – but it looks like the issue is in a Javascript file called bform.js. The most reliable solution (and one that could be done more easily than installing software and running it through a change control process) is to pull this file from a pre-sp2 install, back up the current version of bform.js and replace it with the earlier version. The file lives in the ..\Template\layouts\1033 directory of the 12 hive (or whatever language ID you are running).&lt;/p&gt;  &lt;p&gt;If you want to have a crack at installing the latest cumulative updates, at this time they are &lt;a title="KBHotfix.aspx-kbnum=974989" href="http://support.microsoft.com/hotfix/KBHotfix.aspx?kbnum=974989"&gt;KB 974989&lt;/a&gt; and &lt;a title="KBHotfix.aspx-kbnum=974988" href="http://support.microsoft.com/hotfix/KBHotfix.aspx?kbnum=974988"&gt;KB 974988&lt;/a&gt;. &lt;/p&gt;  &lt;p&gt;Update 20091126 - I have just confirmed that dropping in the bform.js file from SP1 resolves this issue. However, I believe you lose some functionality relating to content types in Office 2003 (the reason the file was changed by MS in the first place). Not sure what it was that's gone, but we are not using it at my current client, so they're happy. I have dropped both files &lt;a href="http://uhs0oa.bay.livefilestore.com/y1pGs00edo3pPMXWX-v4YEvkqyzKiZxvhs-98GvbCN891qsVpFrdUWp5SrNS68LyT8spRhJbdgfjNWTKRobve-ktoelKvFv7_fB/bform backups.zip?download" rel="nofollow"&gt;here&lt;/a&gt; in case you are having trouble getting them. Use &lt;a href="http://www.grigsoft.com/wincmp3.htm"&gt;Compare It!&lt;/a&gt; on them to see the changes...&lt;/p&gt;  &lt;p&gt;Brad &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-23512687975318243?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/23512687975318243/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=23512687975318243' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/23512687975318243'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/23512687975318243'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2010/08/multiple-choice-fields-get-set-to.html' title='Multiple choice fields get set to default value when saving a document to SharePoint 2007 using Office Word 2003'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-5396633657276779287</id><published>2010-08-12T23:26:00.001+10:00</published><updated>2010-08-12T23:26:28.359+10:00</updated><title type='text'>White paper on setting up a "Stretch Farm" - SharePoint with &lt;10 second failover &amp; no data loss</title><content type='html'>&lt;div&gt;Microsoft have published a case study on creating a Highly Available Microsoft Office SharePoint Server Environment by Using Microsoft SQL Server 2005 Database Mirroring in a Windows Server 2008 Virtualized Environment - &lt;a href="http://download.microsoft.com/download/5/0/0/500ABD93-DF75-4B30-856E-63D39CB2A1C3/MOSS Stretch Farm Case Study_update.docx"&gt;http://download.microsoft.com/download/5/0/0/500ABD93-DF75-4B30-856E-63D39CB2A1C3/MOSS%20Stretch%20Farm%20Case%20Study_update.docx&lt;/a&gt;. It came out end July, so I'm a bit slow off the mark.&lt;/div&gt;  &lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;div&gt;This solution and the associated scripts deliver a load-balanced, highly available MOSS farm for a fictitious Financial brokerage firm with guaranteed no data loss. The results were outstanding - 2 second failover time and zero loss of data in a geographically distributed configuration - and SharePoint 2007 is not even Mirroring-aware like 2010 is - in 2010, you just point to the database and the mirror and it will automatically switch for you.&lt;/div&gt;  &lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;div&gt;Companies who tout themselves as heavy-iron solutions must be starting to plan their &amp;quot;Points of difference&amp;quot; arguments for the 2010 wave. Question is, how much shorter are those lists becoming? Even IBM must be starting to get nervous... I'm working with 2 different companies who both own Enterprise licences for Domino / Lotus Notes... and who have actively gone out and purchased SharePoint Enterprise CAL's for every staff member. Thousands of them.&lt;/div&gt;  &lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;div&gt;I'm starting to look forward to sales meetings :)&lt;/div&gt;  &lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;div&gt;B&lt;/div&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-5396633657276779287?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/5396633657276779287/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=5396633657276779287' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/5396633657276779287'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/5396633657276779287'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2010/08/white-paper-on-setting-up-farm.html' title='White paper on setting up a &amp;quot;Stretch Farm&amp;quot; - SharePoint with &amp;lt;10 second failover &amp;amp; no data loss'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-5162830417750025097</id><published>2010-08-12T23:25:00.001+10:00</published><updated>2010-08-12T23:25:43.772+10:00</updated><title type='text'>The best search tutorial ever</title><content type='html'>&lt;div&gt;I just stumbled across a massively funny search tutorial site - LMGTFY.com - standing for, &amp;quot;Let me Google that for you&amp;quot;. Try it!&lt;/div&gt;  &lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;div&gt;&lt;a href="http://lmgtfy.com/?q=sharepoint+2010"&gt;http://lmgtfy.com/?q=sharepoint+2010&lt;/a&gt; &lt;/div&gt;  &lt;div&gt;&lt;a href="http://lmgtfy.com/?q=oakton"&gt;http://lmgtfy.com/?q=oakton&lt;/a&gt; &lt;/div&gt;  &lt;div&gt;&lt;a href="http://lmgtfy.com/?q=the+muppet+show"&gt;http://lmgtfy.com/?q=the+muppet+show&lt;/a&gt;&amp;#160;&lt;/div&gt;  &lt;div&gt;&lt;a href="http://lmgtfy.com/?q=del+rio+resort"&gt;http://lmgtfy.com/?q=del+rio+resort&lt;/a&gt; - the place I'm camping this weekend!&lt;/div&gt;  &lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;div&gt;Sweet...&lt;/div&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-5162830417750025097?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/5162830417750025097/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=5162830417750025097' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/5162830417750025097'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/5162830417750025097'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2010/08/best-search-tutorial-ever.html' title='The best search tutorial ever'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-6477819109421091151</id><published>2010-08-12T23:24:00.003+10:00</published><updated>2010-08-12T23:24:56.564+10:00</updated><title type='text'>SharePoint 2010 features for IT Professionals</title><content type='html'>&lt;div&gt;This is an excellent paper describing the new features that appear in SharePoint 2010, and highlights enhancements and differentiations between Standard and Enterprise versions of SharePoint.&lt;/div&gt;  &lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;div&gt;&lt;a href="http://go.microsoft.com/fwlink/?LinkId=167123"&gt;http://go.microsoft.com/fwlink/?LinkId=167123&lt;/a&gt; - &lt;a href="http://go.microsoft.com/fwlink/?LinkId=167123"&gt;Microsoft SharePoint Server 2010 Evaluation Guide&lt;/a&gt;&lt;/div&gt;  &lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;div&gt;Brad &lt;/div&gt;  &lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-6477819109421091151?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/6477819109421091151/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=6477819109421091151' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/6477819109421091151'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/6477819109421091151'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2010/08/sharepoint-2010-features-for-it.html' title='SharePoint 2010 features for IT Professionals'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-5828814609729033391</id><published>2010-08-12T23:24:00.001+10:00</published><updated>2010-08-12T23:24:17.421+10:00</updated><title type='text'>And a web site that people publish and categorise tools on...</title><content type='html'>&lt;div&gt;Another treat for today - this site has a list of some great tools (including the SharePoint Skinner tool) grouped by category. I know a similar thing exists on WSSDemo, but it's tough to navigate. This one's clean and friendly - &lt;a href="http://www.sharepoint-tools.de/"&gt;http://www.sharepoint-tools.de/&lt;/a&gt; (luckily, not in dutch, but english).&lt;/div&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-5828814609729033391?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/5828814609729033391/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=5828814609729033391' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/5828814609729033391'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/5828814609729033391'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2010/08/and-web-site-that-people-publish-and.html' title='And a web site that people publish and categorise tools on...'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-1067076242870595130</id><published>2010-08-12T23:22:00.001+10:00</published><updated>2010-08-12T23:22:49.528+10:00</updated><title type='text'>Themeing for SharePoint - Using Deployment packages</title><content type='html'>&lt;div&gt;Came across a great tool today from the guys at Elumenotion called SharePoint skinner. Essentially it's an easy way of creating a new theme and packaging it up with the assets as a WSP to deploy to one or more farms. &lt;a href="http://www.elumenotion.com/Blog/Lists/Posts/Post.aspx?ID=94"&gt;http://www.elumenotion.com/Blog/Lists/Posts/Post.aspx?ID=94&lt;/a&gt; - Not bad guys, not bad at all!&lt;/div&gt;  &lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;div&gt;B&lt;/div&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-1067076242870595130?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/1067076242870595130/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=1067076242870595130' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/1067076242870595130'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/1067076242870595130'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2010/08/themeing-for-sharepoint-using.html' title='Themeing for SharePoint - Using Deployment packages'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-42043951571305587</id><published>2010-08-12T23:20:00.003+10:00</published><updated>2010-08-12T23:20:58.151+10:00</updated><title type='text'>When Security becomes annoying - Saving a .docx file from a web site automagically saves as a zip</title><content type='html'>&lt;div&gt;I hate it when things don't go right on my computer. One of the things I've been annoyed with lately is how on some sites, when I click on a .docx file to open it or save it, it always reads the file &amp;quot;header&amp;quot; (the first part of the file) and thinks that it's a ZIP file (which it kind of is - except I don't want it to open in WinZip, I want to open it in Word).&lt;/div&gt;  &lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;div&gt;I finally got jack of it tonight. Tools down, I was going to fix this problem come hell or high water. First thing I did was Google the problem - Heaps of hits on it. Great! this will be a cinch! The sites I opened though had other ideas on what they thought was a &amp;quot;helpful&amp;quot; solution.&lt;/div&gt;  &lt;ul&gt;   &lt;li&gt;Change the filename during the save dialog (Duh! Been there - I want a fix, not a workaround). &lt;/li&gt;    &lt;li&gt;Rename it once you save it (these mental giants were having a laugh at me) &lt;/li&gt;    &lt;li&gt;Use Firefox (I almost expected to find this on a Firefox site once I read it - I live in the Microsoft world) &lt;/li&gt;    &lt;li&gt;Add the site to your trusted sites (again, not a solution but a workaround every time I saw the problem) &lt;/li&gt;    &lt;li&gt;Change the MIME types on the web server... now this was interesting... okay, apparently a .NET framework update came out with a new set of MIME types that indicated what application should open up what file - this was controlled by the Web site administrator though, so out of my reach &lt;/li&gt;    &lt;li&gt;Disable IE's habit of &amp;quot;sniffing&amp;quot; the file header and working it out based on what it saw &amp;lt;-- BINGO! &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;What was happening - in web servers that had not been recently updated, the docx and pptx and xlsx file types were not registered properly on the web server. As a result, IE downloads the start of the file, looks at the first few bytes and assesses what it thinks is the correct application to open it with. This prevents someone from &amp;quot;disguising one file as another type, just by changing the extension (eg renaming .exe to .txt). It's a security feature - Firefox does not have it (which is why the Firefox solution works).    &lt;br /&gt;As some would know, the docx format is a renamed zip (cab?) file with lots of XML data in it. In fact, you can rename any docx file to .zip and have a look at its innards. This is why it picked .ZIP as the extension.&lt;/p&gt;  &lt;p&gt;The other solution is to disable this IE security feature in the Registry. Navigate to:    &lt;br /&gt;HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_MIME_HANDLING and     &lt;br /&gt;HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_MIME_SNIFFING&lt;/p&gt;  &lt;p&gt;Change iexplore.exe's DWORD value from 1 to 0 - this allows the OS to take over and use the native application. Security lowered, problem solved... Well, kind of.&lt;/p&gt;  &lt;p&gt;Brad&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-42043951571305587?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/42043951571305587/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=42043951571305587' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/42043951571305587'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/42043951571305587'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2010/08/when-security-becomes-annoying-saving.html' title='When Security becomes annoying - Saving a .docx file from a web site automagically saves as a zip'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-6610421592043469341</id><published>2010-08-12T23:20:00.001+10:00</published><updated>2010-08-12T23:20:20.267+10:00</updated><title type='text'>Listener Channel Failures, Process Activation errors, Licence Acquisition failure. It's all happening today...</title><content type='html'>&lt;div&gt;Just had an interesting error crop up at a client site. One of the team (Hi Daniel!) was building a SharePoint server and was halfway through configuring it, when it suddenly stopped working. 503 errors on all web sites on the server, and some very strange errors in the event log:&lt;/div&gt;  &lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;div&gt;&lt;font size="2" face="Arial"&gt;&lt;font size="2" face="Arial"&gt;&lt;span&gt;         &lt;div&gt;           &lt;hr /&gt;&lt;/div&gt;          &lt;div&gt;&amp;#160;&lt;/div&gt;          &lt;div&gt;Event ID: 8200&lt;/div&gt;       &lt;/span&gt;&lt;/font&gt;&lt;/font&gt;&lt;/div&gt;  &lt;div&gt;&lt;font size="2" face="Arial"&gt;&lt;span&gt;Source: Security-Licensing-SLC&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;  &lt;div&gt;&lt;font size="2" face="Arial"&gt;&lt;span&gt;Log: Application&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;  &lt;div&gt;&lt;font size="2" face="Arial"&gt;&lt;span&gt;Level: Error&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;  &lt;div&gt;&lt;font size="2" face="Arial"&gt;&lt;span&gt;Details: &lt;/span&gt;&lt;/font&gt;&lt;font size="2" face="Arial"&gt;&lt;span&gt;&lt;span lang="EN-AU"&gt;License acquisition failure details. h&lt;/span&gt;&lt;/span&gt;&lt;/font&gt;&lt;font size="2" face="Arial"&gt;&lt;span&gt;&lt;span lang="EN-AU"&gt;r=0x8004FE33&lt;/span&gt;&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;  &lt;div&gt;&lt;font size="2" face="Arial"&gt;&lt;span&gt;&lt;span lang="EN-AU"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/font&gt;&amp;#160;&lt;/div&gt; &lt;font size="2" face="Arial"&gt;&lt;span&gt;&lt;span lang="EN-AU"&gt;&lt;font size="2" face="Arial"&gt;         &lt;div&gt;&lt;font size="2" face="Arial"&gt;&lt;span&gt;Event ID: 5139&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;          &lt;div&gt;&lt;font size="2" face="Arial"&gt;&lt;span&gt;Source: WAS&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;          &lt;div&gt;&lt;font size="2" face="Arial"&gt;&lt;span&gt;Log: System&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;          &lt;div&gt;&lt;font size="2" face="Arial"&gt;&lt;span&gt;               &lt;div&gt;&lt;font size="2" face="Arial"&gt;&lt;span&gt;Level: Warning&lt;/span&gt;&lt;/font&gt;&lt;/div&gt; Details: &lt;/span&gt;&lt;/font&gt;&lt;/div&gt;          &lt;div&gt;&lt;font size="2" face="Arial"&gt;&lt;span&gt;&lt;span lang="EN-AU"&gt;A listener channel for protocol 'http' in worker process # serving application pool 'SharePoint Central Administration v3' reported a listener channel failure. The data field contains the error number.&lt;/span&gt;&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;          &lt;div&gt;&lt;font size="2" face="Arial"&gt;&lt;span&gt;&lt;span lang="EN-AU"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/font&gt;&amp;#160;&lt;/div&gt;         &lt;font size="2" face="Arial"&gt;&lt;span&gt;&lt;span lang="EN-AU"&gt;               &lt;div&gt;&lt;font size="2" face="Arial"&gt;&lt;span&gt;Event ID: 5002&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;                &lt;div&gt;&lt;font size="2" face="Arial"&gt;&lt;span&gt;Source: WAS&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;                &lt;div&gt;&lt;font size="2" face="Arial"&gt;&lt;span&gt;Log: System&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;                &lt;div&gt;&lt;font size="2" face="Arial"&gt;&lt;span&gt;                     &lt;div&gt;&lt;font size="2" face="Arial"&gt;&lt;span&gt;Level: Error&lt;/span&gt;&lt;/font&gt;&lt;/div&gt; Details: &lt;/span&gt;&lt;/font&gt;&lt;/div&gt;                &lt;div&gt;&lt;font size="2" face="Arial"&gt;&lt;span&gt;&lt;/span&gt;&lt;/font&gt;&lt;font size="2" face="Arial"&gt;&lt;span&gt;&lt;span lang="EN-AU"&gt;Application pool 'SharePoint Central Administration v3' is being automatically disabled due to a series of failures in the process(es) serving that application pool.&lt;/span&gt;&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;                &lt;div&gt;&lt;font size="2" face="Arial"&gt;&lt;span&gt;&lt;span lang="EN-AU"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/font&gt;&amp;#160;&lt;/div&gt;                &lt;div&gt;&lt;font size="2" face="Arial"&gt;&lt;span&gt;&lt;span lang="EN-AU"&gt;                       &lt;hr /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;                &lt;div&gt;&lt;font size="2" face="Arial"&gt;&lt;span&gt;&lt;span lang="EN-AU"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/font&gt;&amp;#160;&lt;/div&gt;                &lt;div&gt;&lt;font size="2" face="Arial"&gt;&lt;span&gt;&lt;span lang="EN-AU"&gt;WAS is the Windows Process Activation Service (you'll need to know that shortly). I'm not sure what the root cause of this error is, but someone somewhere in Microsoft does. Essentially, if you are using IPv6 and have nominated a Dedicated Crawl Server, the SharePoint application writes some bogus entries to the Windows Host file, causing WAS to fail. &lt;/span&gt;&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;                &lt;div&gt;&lt;font size="2" face="Arial"&gt;&lt;span&gt;&lt;span lang="EN-AU"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/font&gt;&amp;#160;&lt;/div&gt;                &lt;div&gt;&lt;font size="2" face="Arial"&gt;&lt;span&gt;&lt;span lang="EN-AU"&gt;The solution is to either:&lt;/span&gt;&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;                &lt;ul&gt;                 &lt;li&gt;&lt;font size="2" face="Arial"&gt;&lt;span&gt;&lt;span lang="EN-AU"&gt;Set up the SharePoint crawl service so it uses all WFE servers to crawl content (as Central Admin is FUBAR'd, you'd need to use STSADM to change this property), or&lt;/span&gt;&lt;/span&gt;&lt;/font&gt; &lt;/li&gt;                  &lt;li&gt;&lt;font size="2" face="Arial"&gt;&lt;span&gt;&lt;span lang="EN-AU"&gt;Remove IPv6 from the Server NIC's and restart the Windows process Activation service.&lt;/span&gt;&lt;/span&gt;&lt;/font&gt; &lt;/li&gt;               &lt;/ul&gt;                &lt;p&gt;&lt;font size="2" face="Arial"&gt;&lt;span&gt;&lt;span lang="EN-AU"&gt;This then writes nice entries to the Hosts file and the problems evapourate like morning dew on a hot day. This is the site that we found the solution on - &lt;a title="blocked::http://blogs.msdn.com/jmacleod/archive/2008/06/25/iis7-sharepoint-2007-fails-with-503-service-unavailable-errors.aspx" href="http://blogs.msdn.com/jmacleod/archive/2008/06/25/iis7-sharepoint-2007-fails-with-503-service-unavailable-errors.aspx"&gt;&lt;u&gt;&lt;font color="#0000ff"&gt;http://blogs.msdn.com/jmacleod/archive/2008/06/25/iis7-sharepoint-2007-fails-with-503-service-unavailable-errors.aspx&lt;/font&gt;&lt;/u&gt;&lt;/a&gt; (we used Workaround 2).&lt;/span&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;                &lt;p&gt;&lt;font size="2" face="Arial"&gt;&lt;span&gt;&lt;span lang="EN-AU"&gt;Cheers!                        &lt;br /&gt;Brad&lt;/span&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;             &lt;/span&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&lt;/font&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-6610421592043469341?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/6610421592043469341/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=6610421592043469341' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/6610421592043469341'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/6610421592043469341'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2010/08/listener-channel-failures-process.html' title='Listener Channel Failures, Process Activation errors, Licence Acquisition failure. It&amp;#39;s all happening today...'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-4573752686748200181</id><published>2010-08-12T23:19:00.001+10:00</published><updated>2010-08-12T23:19:07.131+10:00</updated><title type='text'>KRB_ERR_RESPONSE_TOO_BIG - Forcing TCP/IP over UDP</title><content type='html'>&lt;div&gt;I thought I had this error on my blog somewhere, but when I went looking for it, I could not find it...&lt;/div&gt;  &lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;div&gt;When you are working in an environment that uses machines running earlier versions of Windows than 2008 Server or Windows Vista, you may encounter an authentication problem when trying to pass through authentication using Kerberos tickets.&lt;/div&gt;  &lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;div&gt;Essentially, the UDP Protocol cannot handle the larger size packets required to capture a Kerberos ticket for someone who has a large collection of groups associated with their login. This scenario has a list of dependencies required to trigger it which are outlined in &lt;a href="http://support.microsoft.com/kb/244474/"&gt;KB Article 244474&lt;/a&gt;, but the fix is to set the following registry key on the web server to 1:&lt;/div&gt;  &lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;div&gt;HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa\Kerberos\Parameters&lt;/div&gt;  &lt;div&gt;MaxPacketSize=1 (Decimal)&lt;/div&gt;  &lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;div&gt;The Parameters key may not exist, if it does not, then create it.&amp;#160; The KB Article &lt;a href="http://support.microsoft.com/kb/326985"&gt;http://support.microsoft.com/kb/326985&lt;/a&gt; has a lot of useful links to Kerberos articles and descriptions which I have used in the past, so you may also find that helpful.&lt;/div&gt;  &lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;div&gt;B&lt;/div&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-4573752686748200181?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/4573752686748200181/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=4573752686748200181' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/4573752686748200181'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/4573752686748200181'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2010/08/krberrresponsetoobig-forcing-tcpip-over.html' title='KRB_ERR_RESPONSE_TOO_BIG - Forcing TCP/IP over UDP'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-5877872738175141294</id><published>2010-08-12T23:17:00.001+10:00</published><updated>2010-08-12T23:17:32.471+10:00</updated><title type='text'>Version Numbers for SharePoint – WSS 3 or 2007 Server</title><content type='html'>&lt;p&gt;Not sure how long this page has been here for, but every time I want to find out what the hotfix level is I always google it and come up with some blog list that is half up-to-date… but no more! &lt;a href="http://technet.microsoft.com/en-us/library/cc288269.aspx#section2"&gt;This list on TechNet&lt;/a&gt; is up to date and direct from the source – Thanks Microsoft! Every Hotfix, Every Service Pack and the corresponding version numbers. Great!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-5877872738175141294?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/5877872738175141294/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=5877872738175141294' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/5877872738175141294'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/5877872738175141294'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2010/08/version-numbers-for-sharepoint-wss-3-or.html' title='Version Numbers for SharePoint – WSS 3 or 2007 Server'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-8444455156234587391</id><published>2010-08-12T23:16:00.001+10:00</published><updated>2010-08-12T23:16:56.858+10:00</updated><title type='text'>Twitter for people who don't Twitter - Twinbox</title><content type='html'>&lt;p&gt;Finally – an add-in for Outlook to:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Let you Twitter from Outlook &lt;/li&gt;    &lt;li&gt;Subscribe to as many or as few people's tweets as you want – either in your main mailbox, or in a separate &amp;quot;Twitter&amp;quot; folder &lt;/li&gt;    &lt;li&gt;Discovery – Find out when ANYBODY twitters about a topic you are interested in! &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;I am a minimalist toolset kind of guy. The reason I have not jumped on the Twitter train yet is because it would be another information source for me to have to process. Currently, I have 2 – iGoogle and Outlook. I use iGoogle for searching things I want to know, and for polling SharePoint MVP's and Microsoft Employees RSS feeds (On-demand information). I use Outlook for Email (although I use iGoogle for home email, so there's some crossover there…) – for me, Outlook is delivered information.&lt;/p&gt;  &lt;p&gt;Anyway, Tweetdeck and those other Twitterrific tools just annoy me because it's something else I have to check. I have no way of controlling the inbound flow, notifications, etc – It's either on or off. With &lt;a href="http://www.techhit.com/TwInbox/twitter_plugin_outlook.html"&gt;Twinbox&lt;/a&gt;, I can set up rules on tweets the same way I set up rules on email – I stay on top of it, and can review them on my bus ride home. Tweet… er I mean Sweet! &lt;a href="http://content2.catalog.video.msn.com/e2/ft/share4/b9c9/0/OC_011_Twinbox_640x480-1615k.wmv"&gt;Here's the video describing how it works…&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;B&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-8444455156234587391?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/8444455156234587391/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=8444455156234587391' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/8444455156234587391'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/8444455156234587391'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2010/08/twitter-for-people-who-don-twitter.html' title='Twitter for people who don&amp;#39;t Twitter - Twinbox'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-6533021706029587043</id><published>2010-08-12T22:52:00.001+10:00</published><updated>2010-08-12T22:54:06.095+10:00</updated><title type='text'>Open in Explorer View fails on Windows 2008 R2 and SharePoint 2007</title><content type='html'>&lt;p&gt;When I was building up a MOSS 2007 Environment recently (actually at the start of May), I had a lot of trouble opening document libraries in Explorer view. Like all good developers I have the latest and greatest software stack on my trusty workstation (Apparently this company does have a standard operating environment, but whatever).&lt;/p&gt;  &lt;p&gt;Anyway,as I was ahead of the curve in terms of OS (2008 R2) and App (Office 2007), I was having difficulty opening a doc Library in explorer view. It was just me, so I was on my own to fix it (I can still hear the Service desk team snickering as they hung up the phone after offering to rebuild my laptop with the latest SOE – Still XP and Office 2003 at that stage…).&lt;/p&gt;  &lt;p&gt;After hunting for ages on the web, this guy nailed it. &lt;a title="http://netindonesia.net/blogs/andriyadi/archive/2010/01/04/wss-3-0-sp2-on-windows-server-2008-r2-open-with-windows-explorer-failed.aspx" href="http://netindonesia.net/blogs/andriyadi/archive/2010/01/04/wss-3-0-sp2-on-windows-server-2008-r2-open-with-windows-explorer-failed.aspx"&gt;http://netindonesia.net/blogs/andriyadi/archive/2010/01/04/wss-3-0-sp2-on-windows-server-2008-r2-open-with-windows-explorer-failed.aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;The issue was a mix of Client side and Server side problems – WebDAV!&lt;/p&gt;  &lt;p&gt;For the Client – you need to have the Desktop Experience feature activated if you are running a server OS,and the WebClient service running and starting automatically.&lt;/p&gt;  &lt;p&gt;For the server – Because it’s IIS7,you also need to DISABLE (remove) the IIS WebDAV module from the site causing you trouble. This will not only let you “Open in Explorer view”, but it will also let you map the document library as a network folder in Windows Explorer!&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_jqzNMr6xgzY/TGPumyJr49I/AAAAAAAAAGA/_w01TJdM1II/s1600-h/WebDav_Step1%5B1%5D%5B3%5D.jpg"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" class="wlDisabledImage" title="WebDav_Step1[1]" border="0" alt="WebDav_Step1[1]" src="http://lh5.ggpht.com/_jqzNMr6xgzY/TGPuoLoRaoI/AAAAAAAAAGE/4wD_ocecrLg/WebDav_Step1%5B1%5D_thumb%5B1%5D.jpg?imgmax=800" width="644" height="393" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;You also need to enable WebDAV Authoring service and turn it on using the menus on the far right:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_jqzNMr6xgzY/TGPuo-Ho3MI/AAAAAAAAAGI/Nmrbcw2i1ug/s1600-h/WebDav_Step2%5B1%5D%5B15%5D.jpg"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" class="wlDisabledImage" title="WebDav_Step2[1]" border="0" alt="WebDav_Step2[1]" src="http://lh6.ggpht.com/_jqzNMr6xgzY/TGPup_TvLhI/AAAAAAAAAGQ/Tbn6jenMFjw/WebDav_Step2%5B1%5D_thumb%5B13%5D.jpg?imgmax=800" width="644" height="393" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;The WebDAV authoring service is enabled as a feature of the IIS Application in Server Admin screen. Open IIS,look for the WebDAV authoring feature, then tick the box and go through to the end of the wizard.&lt;/p&gt;  &lt;p&gt;Restart IIS admin panel and open the “WebDAV Authoring” icon, then enable WebDAV on the right. Sorted!&lt;/p&gt;  &lt;p&gt;Thanks go to &lt;a href="http://netindonesia.net/blogs/andriyadi/archive/2010/01/04/wss-3-0-sp2-on-windows-server-2008-r2-open-with-windows-explorer-failed.aspx" target="_blank"&gt;Andri Yadi&lt;/a&gt; for outlining most of the indicated steps above. At least 2010 “just works”… well, not really… but you don’t have to spend much time configuring the OS as you do configuring the app.&lt;/p&gt;  &lt;p&gt;Cheers!   &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-6533021706029587043?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/6533021706029587043/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=6533021706029587043' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/6533021706029587043'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/6533021706029587043'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2010/08/open-in-explorer-view-fails-on-windows.html' title='Open in Explorer View fails on Windows 2008 R2 and SharePoint 2007'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_jqzNMr6xgzY/TGPuoLoRaoI/AAAAAAAAAGE/4wD_ocecrLg/s72-c/WebDav_Step1%5B1%5D_thumb%5B1%5D.jpg?imgmax=800' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-7608043288027714257</id><published>2010-08-12T22:02:00.003+10:00</published><updated>2010-08-12T22:02:57.102+10:00</updated><title type='text'>Uploading large files fails (2003 and 2008)</title><content type='html'>&lt;div&gt;When you attempt to upload a large file in Sharepoint, you may receive errors relating to timeouts, 404s etc.&lt;/div&gt;  &lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;div&gt;To resolve this, make the following changes:&lt;/div&gt;  &lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;div&gt;By default, the maximum size for uploading files is set to 50 MB. If you need to be able to upload larger files (such as when you use smigrate.exe to migrate a site between servers), you can change this setting to any value up to 2 GB (2047 MB). &lt;/div&gt;  &lt;div&gt;To configure large file support you must increase the default upload size in SharePoint Central Administration (Web Application properties). You may also need to perform the following additional actions (depending on your hardware configuration):&lt;/div&gt;  &lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;ul&gt;   &lt;li&gt;&lt;strong&gt;Increase the maximum upload size&lt;/strong&gt;       &lt;br /&gt;Click Start, point to All Programs, point to Administrative Tools, and then click SharePoint Central Administration.       &lt;br /&gt;Under Virtual Server Configuration, click Configure virtual server settings.       &lt;br /&gt;On the Virtual Server List page, click the virtual server you want to change.       &lt;br /&gt;On the Virtual Server Settings page, under Virtual Server Management, click Virtual server general settings.       &lt;br /&gt;Under Maximum upload size, type the maximum file size (in MB) that you want to allow to be uploaded.       &lt;br /&gt;Click OK.       &lt;br /&gt;If IIS is timing out when you upload large files, you can configure the Connection timeout setting in IIS to allow more than the default 120 seconds (2 minutes).       &lt;br /&gt;&lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Tune the IIS connection timeout&lt;/strong&gt;       &lt;br /&gt;Click Start, point to All Programs, point to Administrative Tools, and then click Internet Information Services (IIS) Manager.       &lt;br /&gt;Right-click the virtual server you want to configure, and then click Properties.       &lt;br /&gt;Click the Web Site tab.       &lt;br /&gt;In the Connections section, in the Connection timeout box, type the number of seconds you want IIS to wait before timing out.       &lt;br /&gt;Click OK.       &lt;br /&gt;&lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Increase the default chunk size for large files&lt;/strong&gt;       &lt;br /&gt;The large–file–chunk–size property must be set from the command line. This property is configured for a server or server farm, and cannot be configured for an individual virtual server. To set this property, use the following syntax:       &lt;br /&gt;Stsadm.exe –o setproperty –pn large–file–chunk–size –pv &amp;lt;size in bytes&amp;gt;.       &lt;br /&gt;After making a change to this property, you must restart IIS. You can restart IIS by typing iisreset on the command line. &lt;/li&gt; &lt;/ul&gt;  &lt;div&gt;&lt;strong&gt;If you want to increase the maximum limit for Web Parts...&lt;/strong&gt;     &lt;br /&gt;&lt;/div&gt;  &lt;div&gt;This change is required only when working with large Web Parts. The maximum limit for Web Parts is set to 1048576 bytes by default. &lt;/div&gt;  &lt;ul&gt;   &lt;li&gt;On your server computer running Windows SharePoint Services, open Notepad.      &lt;br /&gt;In Notepad, navigate to the %HomeDrive%\Inetpub\wwwroot folder and open the web.config file.       &lt;br /&gt;Locate the PropertySize attribute in the configuration\SharePoint\WebPartLimits element.       &lt;br /&gt;Change the PropertySize attribute to the maximum size you need.       &lt;br /&gt;Save and close the web.config file. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Large file support limitations&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;The following features do not support files larger than 50 MB:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Virus checking. &lt;/li&gt;    &lt;li&gt;Picture libraries. &lt;/li&gt;    &lt;li&gt;Streaming files. &lt;/li&gt;    &lt;li&gt;Client-side restoration of smigrate backup files (limited to 2 GB). The manifest files for an smigrate backup cannot be larger than 2 GB. &lt;/li&gt;    &lt;li&gt;Site templates (limit of 10 MB per site template, including content).      &lt;br /&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;div&gt;&lt;strong&gt;Additional changes in 2008 server:&lt;/strong&gt;&lt;/div&gt;  &lt;div&gt;In 2008 server, there's a second change you need to make as well - &lt;/div&gt;  &lt;div&gt;In either the WSS3 / MOSS site's Web.config, add / update the following line - &lt;/div&gt;  &lt;div&gt;&amp;lt;system.webServer&amp;gt;    &lt;br /&gt;&amp;#160; &amp;lt;security&amp;gt;     &lt;br /&gt;&amp;#160; &amp;lt;requestFiltering&amp;gt;     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;requestLimits maxAllowedContentLength=&amp;quot;52428800&amp;quot;/&amp;gt;     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;/requestFiltering&amp;gt;     &lt;br /&gt;&amp;#160; &amp;lt;/security&amp;gt;     &lt;br /&gt;&amp;lt;/system.webServer&amp;gt;&lt;/div&gt;  &lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;div&gt;If you wish to apply it across all sites, make the change in the Application.config file in %windir%\system32\inetsrv\config\applicationhost.config&lt;/div&gt;  &lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;div&gt;&lt;strong&gt;Other Notes:&lt;/strong&gt;&lt;/div&gt;  &lt;div&gt;You may find these hints useful as well&lt;/div&gt;  &lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;div&gt;In the web.config file for the farm (Program Files\Common Files\Microsoft Shared\Web server extensions\12\TEMPLATE\LAYOUTS), update the executionTimeout value in this line:&lt;/div&gt;  &lt;div&gt;&amp;lt;location path=&amp;quot;upload.aspx&amp;quot;&amp;gt;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;system.web&amp;gt;     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;httpRuntime executionTimeout=&amp;quot;999999&amp;quot; maxRequestLength=&amp;quot;2097151&amp;quot; /&amp;gt;     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;/system.web&amp;gt;     &lt;br /&gt;&amp;#160; &amp;lt;/location&amp;gt; &lt;/div&gt;  &lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;div&gt;You may also have to do something similar if the property is declared in the Web Application - &lt;/div&gt;  &lt;div&gt;&amp;lt;httpRuntime executionTimeout=&amp;quot;999999&amp;quot; maxRequestLength=&amp;quot;51200&amp;quot; /&amp;gt;    &lt;br /&gt;&lt;/div&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-7608043288027714257?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/7608043288027714257/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=7608043288027714257' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/7608043288027714257'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/7608043288027714257'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2010/08/uploading-large-files-fails-2003-and.html' title='Uploading large files fails (2003 and 2008)'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-327271051876528095</id><published>2010-08-12T22:02:00.001+10:00</published><updated>2010-08-12T22:02:19.155+10:00</updated><title type='text'>No More Spam from SharePoint Designer! (Infinite "On-change" loops are fixed)</title><content type='html'>&lt;div&gt;Finally. After years of creating new workflows, running a test, only to have the CIO come into me and say &amp;quot;Hmm Brad I've received 200 emails in the last minute asking me to approve this task - could you look into it please?&amp;quot;. &lt;/div&gt;  &lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;div&gt;It appears that Microsoft have finally changed the logic so that an &amp;quot;On Change&amp;quot; workflow event cannot trigger itself by making changes to the current list item. This means that there's a lot less test logic and column value validation that needs to go into a workflow, reducing the overall size and complexity of the workflow.&lt;/div&gt;  &lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;div&gt;It's in Service Pack 2's updates - get it while it's hot! &lt;a href="http://blogs.msdn.com/sharepointdesigner/archive/2009/07/13/service-pack-2-prevents-an-on-change-workflow-from-starting-itself.aspx"&gt;http://blogs.msdn.com/sharepointdesigner/archive/2009/07/13/service-pack-2-prevents-an-on-change-workflow-from-starting-itself.aspx&lt;/a&gt;&lt;/div&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-327271051876528095?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/327271051876528095/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=327271051876528095' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/327271051876528095'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/327271051876528095'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2010/08/no-more-spam-from-sharepoint-designer.html' title='No More Spam from SharePoint Designer! (Infinite &amp;quot;On-change&amp;quot; loops are fixed)'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-5913990255187325674</id><published>2010-08-12T22:01:00.001+10:00</published><updated>2010-08-12T22:01:40.235+10:00</updated><title type='text'>Hover (MouseOver) Highlight and Click to stay highlighted in a SharePoint list…</title><content type='html'>&lt;p&gt;While I was working in CustomWare I had the great pleasure of working with a guy called Sukri, a SharePoint developer. He's the kind of guy you'd mention something to, and it would tick over in the back of his mind, while he was doing his normal day-to-day work…. then a few days later, he'd come to you and say - &amp;quot;By the way, I know how we can address your client's requirements&amp;quot;. Like he did for one of our clients… we were going through the client's needs, and we talked about how the client wanted to be able to present financial data in SharePoint, then allow the user to hover over and highlight a row of data… and allow the user to click the row and make it stay highlighted.&lt;/p&gt;  &lt;p&gt;He came up with a script that allowed you to do both – then one of the other guys, Ben, decided to enhance it so you could select and deselect multiple rows. Here's a screenshot of how it looked on the screen…&lt;/p&gt;  &lt;p&gt;Code:&lt;/p&gt;  &lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px"&gt;   &lt;pre&gt;&amp;lt;script language=&amp;quot;javascript&amp;quot; type=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;br /&gt;var preRow;&lt;br /&gt;var preClassName;&lt;br /&gt;var orgBColor;&lt;br /&gt;var hoverColor = &amp;quot;#ffcc99&amp;quot;;&lt;br /&gt;var selectedColor = &amp;quot;#d2d2ff&amp;quot;;&lt;br /&gt;var SPGridViewGuid = &amp;quot;{&amp;lt;&amp;lt;LIST GUID&amp;gt;&amp;gt;}-{&amp;lt;&amp;lt;LIST VIEW WEB PART GUID&amp;gt;&amp;gt;}&amp;quot;; &lt;br /&gt;&lt;br /&gt;_spBodyOnLoadFunctionNames.push(&amp;quot;addSelectedRowEvent&amp;quot;);&lt;br /&gt;function addSelectedRowEvent() {&lt;br /&gt;// Get all TABLE tag objects&lt;br /&gt;var oTables = document.getElementsByTagName(&amp;quot;TABLE&amp;quot;);&lt;br /&gt;for (var i=0;i &amp;lt; oTables.length; i++ )&lt;br /&gt;{&lt;br /&gt;  // Filter where table id equal to SPGridView guid&lt;br /&gt;  if (oTables[i].id == SPGridViewGuid)&lt;br /&gt;       {&lt;br /&gt;        // Get all TR tag objects&lt;br /&gt;        var oRows = oTables[i].getElementsByTagName(&amp;quot;TR&amp;quot;);&lt;br /&gt;        for (var j=0;j &amp;lt; oRows.length; j++ )&lt;br /&gt;   {&lt;br /&gt;    if (j != 0)&lt;br /&gt;    {&lt;br /&gt;     // Add client event onMouseOver&lt;br /&gt;     oRows[j].onmouseover = function() {&lt;br /&gt;      this.style.backgroundColor = hoverColor;&lt;br /&gt;     }&lt;br /&gt;     // Add client event onMouseOut&lt;br /&gt;     oRows[j].onmouseout = function() {&lt;br /&gt;      this.style.backgroundColor = &amp;quot;&amp;quot;;&lt;br /&gt;     }&lt;br /&gt;     // Add client event onClick&lt;br /&gt;     oRows[j].onclick = function() {&lt;br /&gt;      // If previous row is not null &lt;br /&gt;&lt;br /&gt;      if(typeof(preRow) != 'undefined')&lt;br /&gt;      { &lt;br /&gt;&lt;br /&gt;&lt;font style="background-color: #ffff00"&gt;       // Assign previous stored background color and class name to TR object&lt;br /&gt;	//Code below has been commented out prior to demo&lt;br /&gt;	//&lt;/font&gt;&lt;font style="background-color: #ffff00"&gt;&lt;br /&gt;        //preRow.bgColor = orgBColor;&lt;br /&gt;        //preRow.className = preClassName;&lt;br /&gt;        // Change font weight&lt;br /&gt;       // try{ChangeFontWeight(preRow,'normal');}catch(e){;}&lt;br /&gt;&lt;/font&gt;      }&lt;br /&gt;      // If this row is alternating row&lt;br /&gt;      if(this.className != &amp;quot;&amp;quot;)&lt;br /&gt;      {&lt;br /&gt;       // Assign previous alternating class to TR object&lt;br /&gt;       preClassName = this.className;&lt;br /&gt;       this.className = &amp;quot;&amp;quot;;&lt;br /&gt;      }&lt;br /&gt;      // Assign new background color to TR object&lt;br /&gt;       orgBColor = this.bgColor;&lt;br /&gt;       if(this.bgColor == &amp;quot;#d2d2ff&amp;quot;)&lt;br /&gt;       {&lt;br /&gt;       this.bgColor = &amp;quot;white&amp;quot;;&lt;br /&gt;       try{ChangeFontWeight(this,'normal');}catch(e){;}&lt;br /&gt;       }&lt;br /&gt;       else&lt;br /&gt;       {&lt;br /&gt;       this.bgColor = selectedColor;&lt;br /&gt;        // Change font weight&lt;br /&gt;       try{ChangeFontWeight(this,'bold');}catch(e){;}&lt;br /&gt;       } &lt;br /&gt;&lt;br /&gt;      preRow = this;&lt;br /&gt;     }&lt;br /&gt;    }&lt;br /&gt;   }&lt;br /&gt;       }&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;function ChangeFontWeight(selectedRow,fontWeight) {&lt;br /&gt;;&lt;br /&gt;for (i=0;i&amp;lt;selectedRow.cells.length;i++)&lt;br /&gt;{&lt;br /&gt;  selectedRow.cells(i).style.fontWeight = fontWeight;&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&amp;lt;/script&amp;gt;&lt;/pre&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;font size="2"&gt;&lt;strong&gt;How it works:&lt;/strong&gt; &lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;The code you see above affects the HTML that is already on the page, so you need to position this at the end of the page below the list you are trying to modify. Because it is restricted to a list and a view, you can put it on a standard page (such as default.aspx) and it will only affect one of the views on the page.&lt;/font&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;font size="2"&gt;&lt;strong&gt;Configuration:&lt;/strong&gt; &lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;The only thing you need to do before using this script is to replace &amp;lt;&amp;lt;LIST GUID&amp;gt;&amp;gt; with the list GUID, and &amp;lt;&amp;lt;LIST VIEW WEB PART GUID&amp;gt;&amp;gt; with the web part GUID. you get both of these from the URL when editing a &amp;quot;View&amp;quot; – all you need to do is strip off the %7B and &amp;amp;7D, and the %2D's replace with hyphens &amp;quot; - &amp;quot;. &lt;/font&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a href="https://qoupqa.bay.livefilestore.com/y1mTgGRZwyIZiV4UkgrVFLcpFzHSOJpbSYDNFVxEN_kIO4nsF7vdwEQFnLM9v91g7vwN6VjJWHMZuJJt88Y-VzEmr_rh2tLDRINHoREpHy4tu0xjAkQ1HQj6XsjJcP3OeQuN5A5aiAFlrGZ07KLdzTSEg/image[7].png" rel="WLPP"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="https://qoupqa.bay.livefilestore.com/y1mjg3vNFh7S7T6VJzopJzfGUuveVjvsufIl2U1vrfNiiofbj3U30_DTtIfNWHhH1Dh7sP2o1OF0R65mjB1miBXxbd-y8gM6eG-xk6CpmNlrrAK-0jVr9ChoGUCPBsvZdw2jrH2Kef2Rvu4lwLorrK8zg/image_thumb[3].png" width="244" height="163" /&gt;&lt;/a&gt; &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a href="https://qoupqa.bay.livefilestore.com/y1muAdSM8EOolY_uAdEMsr0OxXK42sTscTgsJe5038slAe9fks28llImWzJsrnEBVPTnz5rfvGYSeJNRgYbdq8Ep79l3A_381MCeY7GwwS8XvwejiDktdm8b3AfybUxtGGPSTsZO-KotjO8bALZ94ZcpQ/image[12].png" rel="WLPP"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="https://qoupqa.bay.livefilestore.com/y1m6zBaxH67HSJKvZzHnhFYb_ilz9fzAC8ZyxP-7Tus3z-kxkYIc6SphB74nu9eQhT3C_LNuNT8WDPXjozX9_dtEYdy6ZTBfahrYuMd_06kw_7CVg_ec5CMxhlza95ckpVrZSZ2dlRklh4033HrBnOUMQ/image_thumb[6].png" width="244" height="135" /&gt;&lt;/a&gt; &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;font size="2"&gt;&lt;strong&gt;Deployment:&lt;/strong&gt; &lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;/font&gt;&lt;font size="2"&gt;I recommend creating a library and storing this as a .htm file – then referencing it from the Content Editor Web Part. Place the CEWP after the list view, and mark it as hidden. Change the title to something meaningful (such as Sukri's cool mouseover highlighting and multiclick code) and you're done!&lt;/font&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a href="https://qoupqa.bay.livefilestore.com/y1m2zWzLdGzqWAEL2L3WIVTFx68wq_sHyj9MbaZPoYkeYGxa2GyeNfaEVP_LDsxw5gk9DeKoDQkGcMN4BQ_hnXiNQAV1BbGxf9dZm8kkbGeeXNR-txvN6JICADhXwk26wRBm9dviAaSybCd2PKz-FSTRQ/image[16].png" rel="WLPP"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="https://qoupqa.bay.livefilestore.com/y1m9LcvybOg8-0ErPLXU7lpkUtRMCR14TsNGuDSQOoakEJJxp-f31lCGpOocY8rY2svg_WUEWZGSZ4bbZ-DpIExof5EMcLZzmua7QBmZuCkJ0XYdCaV0WG1t1B9_9UUm6aPHVuHu4Iu-5JezousadsEVA/image_thumb[8].png" width="244" height="219" /&gt;&lt;/a&gt; &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;font size="2"&gt;Storing the code as a separate file in a helper library gives you maximum flexibility, minimum change (no unghosting of pages) and version control of your code. &lt;/font&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;font size="2"&gt;&lt;strong&gt;Issues:&lt;/strong&gt; &lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;The only problem with the code is that it does not capture what the original background colour was – so if you click and unclick a row, it stays white. Not so bad if your list view is white rows, but an issue if you have alternating background colours. Ben was working on getting that resolved too, but he didn't get it debugged in time for the demo (&lt;font style="background-color: #ffff00"&gt;check the highlighted part above&lt;/font&gt;). If anyone can see where the issue in the code is, please let me know :)&lt;/font&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;font size="2"&gt;Cheers!&lt;/font&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;font size="2"&gt;Brad&lt;/font&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-5913990255187325674?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/5913990255187325674/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=5913990255187325674' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/5913990255187325674'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/5913990255187325674'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2010/08/hover-mouseover-highlight-and-click-to.html' title='Hover (MouseOver) Highlight and Click to stay highlighted in a SharePoint list…'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-6225608682419518877</id><published>2009-11-26T07:43:00.001+11:00</published><updated>2009-11-26T07:43:32.770+11:00</updated><title type='text'>Multiple choice fields get set to default value when saving a document to SharePoint 2007 using Office Word 2003</title><content type='html'>&lt;p&gt;Had this happen to me at a client's site. Would not have believed it if I had not seen it with my own eyes…&lt;/p&gt;  &lt;p&gt;When a user opened an office document (in our case, it was a word document) in Microsoft Office 2003 and then saved it, it reset all of the multi-choice fields to their default values. In fact, it was impossible to save anything but the default values from within Office 2003. The process worked fine in Office 2007… so what was happening?&lt;/p&gt;  &lt;p&gt;According to &lt;a href="http://dirkvandenberghe.com/archive/2009/11/03/saving-document-to-sharepoint-using-office-2003-resets-choice-metadata-fields-to-default-values.aspx" target="_blank"&gt;this article&lt;/a&gt;, it appears a bug was introduced in SP2 where if the default document Content type (Document) is removed from a document library and replaced with an alternative (eg a content type that inherits from Document), it cannot resolve the multi-choice fields properly and so it resets them to the default property.&lt;/p&gt;  &lt;p&gt;There's a fix for this issue - &lt;a href="http://support.microsoft.com/kb/971500/"&gt;&lt;/a&gt;&lt;a href="http://support.microsoft.com/kb/971500/" target="_blank"&gt;http://support.microsoft.com/kb/971500/&lt;/a&gt; – but it looks like the issue is in a Javascript file called bform.js. The most reliable solution (and one that could be done more easily than installing software and running it through a change control process) is to pull this file from a pre-sp2 install, back up the current version of bform.js and replace it with the earlier version. The file lives in the ..\Template\layouts\1033 directory of the 12 hive (or whatever language ID you are running).&lt;/p&gt;  &lt;p&gt;If you want to have a crack at installing the latest cumulative updates, at this time they are &lt;a title="KBHotfix.aspx-kbnum=974989" href="http://support.microsoft.com/hotfix/KBHotfix.aspx?kbnum=974989"&gt;KB 974989&lt;/a&gt; and &lt;a title="KBHotfix.aspx-kbnum=974988" href="http://support.microsoft.com/hotfix/KBHotfix.aspx?kbnum=974988"&gt;KB 974988&lt;/a&gt;. &lt;/p&gt;  &lt;p&gt;Brad &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-6225608682419518877?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/6225608682419518877/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=6225608682419518877' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/6225608682419518877'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/6225608682419518877'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2009/11/multiple-choice-fields-get-set-to.html' title='Multiple choice fields get set to default value when saving a document to SharePoint 2007 using Office Word 2003'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-1946063272408983753</id><published>2009-05-22T19:02:00.001+10:00</published><updated>2009-05-22T19:02:17.523+10:00</updated><title type='text'>Whoopsie! Service Pack 2 has a 180 day timebomb…</title><content type='html'>&lt;p&gt;Sometimes things just don’t go according to plan. It looks like SharePoint’s latest service pack has a 180 day timebomb in it. There’s a patch coming, and the workaround is pretty easy – you just enter your key again. &lt;/p&gt;  &lt;p&gt;I feel sorry for the SharePoint dev team – they do such a good job, but people often remember the things that do not go so well… Hopefully this one will be quickly fixed and just as quickly forgotten… At least it does not affect people immediately.&lt;/p&gt;  &lt;p&gt;More details can be found here - &lt;a title="http://blogs.msdn.com/sharepoint/archive/2009/05/21/attention-important-information-on-service-pack-2.aspx" href="http://blogs.msdn.com/sharepoint/archive/2009/05/21/attention-important-information-on-service-pack-2.aspx"&gt;http://blogs.msdn.com/sharepoint/archive/2009/05/21/attention-important-information-on-service-pack-2.aspx&lt;/a&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-1946063272408983753?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/1946063272408983753/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=1946063272408983753' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/1946063272408983753'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/1946063272408983753'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2009/05/whoopsie-service-pack-2-has-180-day.html' title='Whoopsie! Service Pack 2 has a 180 day timebomb…'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-1458648324984807656</id><published>2009-05-18T21:29:00.001+10:00</published><updated>2009-05-18T21:29:05.575+10:00</updated><title type='text'>Bypassing the recycle bin</title><content type='html'>&lt;div&gt;   &lt;p&gt;&lt;span style="font-family: &amp;#39;Arial&amp;#39;,&amp;#39;sans-serif&amp;#39;; font-size: 10pt"&gt;Testing can be so much fun. You build up sites, fill them with rubbish data, tear them down, rinse and repeat. Recently I had a site I'd put a fair bit of effort into and the client loved it. Problem - how do I leave the site as it is, but remove all the bad data?&lt;/span&gt;&lt;/p&gt;    &lt;p&gt;&lt;span style="font-family: &amp;#39;Arial&amp;#39;,&amp;#39;sans-serif&amp;#39;; font-size: 10pt"&gt;&lt;strong&gt;Option 1&lt;/strong&gt;: Once you have deleted all of the bad content from the lists, etc, you can go page by page through the recycle bin, 50 at a time and delete them from there... then do the same in the site collection recycle bin (this takes too long, gives me RSI)&lt;/span&gt;&lt;/p&gt;    &lt;p&gt;&lt;span style="font-family: &amp;#39;Arial&amp;#39;,&amp;#39;sans-serif&amp;#39;; font-size: 10pt"&gt;&lt;strong&gt;Option 2&lt;/strong&gt;: You could go to Central admin, and under the web app delete everything in the site collection by switching off and on the recycle bin (not granular enough - deletes all recycled objects in all site collections within that Web app)&lt;/span&gt;&lt;/p&gt;    &lt;p&gt;&lt;span style="font-family: &amp;#39;Arial&amp;#39;,&amp;#39;sans-serif&amp;#39;; font-size: 10pt"&gt;&lt;strong&gt;Option 3&lt;/strong&gt;: You can go to the recycle bin of interest, then enter the following into the address bar (by itself):         &lt;br /&gt;&lt;font face="Courier New"&gt;javascript:emptyItems();&lt;/font&gt;         &lt;br /&gt;&lt;/span&gt;&lt;span style="font-family: &amp;#39;Arial&amp;#39;,&amp;#39;sans-serif&amp;#39;; font-size: 10pt"&gt;Woah! Files in the recycle bin vanish, and people would not even know they existed. Lucky users don't know that this exists... oh wait, now they do :) - thanks to Jag from OBS who blogged this &amp;quot;gem&amp;quot; - &lt;a title="blocked::http://itfootprint.wordpress.com/2008/03/14/empty-sharepoint-user-recycle-bin/" href="http://itfootprint.wordpress.com/2008/03/14/empty-sharepoint-user-recycle-bin/"&gt;&lt;u&gt;&lt;font color="#800080"&gt;http://itfootprint.wordpress.com/2008/03/14/empty-sharepoint-user-recycle-bin/&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;&amp;#160;&lt;/span&gt;&lt;/p&gt;    &lt;p&gt;&lt;span style="font-family: &amp;#39;Arial&amp;#39;,&amp;#39;sans-serif&amp;#39;; font-size: 10pt"&gt;Option 3 wins hands down.&lt;/span&gt;&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;Brad&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-1458648324984807656?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/1458648324984807656/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=1458648324984807656' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/1458648324984807656'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/1458648324984807656'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2009/05/bypassing-recycle-bin.html' title='Bypassing the recycle bin'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-8717768143969986977</id><published>2009-05-17T00:59:00.001+10:00</published><updated>2009-05-17T07:46:19.306+10:00</updated><title type='text'>Can’t get the Room and Resource Reservation system working?</title><content type='html'>&lt;p&gt;Came across an issue with a client when deploying the Room and resource reservation system on a client site (you know, the one from Microsoft’s “Fab 40” collection with all of those pesky issues).&lt;/p&gt;  &lt;p&gt;Anyway, it was installing fine, no error, could create an RRR site… but it was not booking the rooms properly. Huh? I know about the fact you cannot delete a reservation (fixed that issue – future post), or that there’s a bug when creating resources in any locale except US (bug in the Workflow, fixed that)… but being able to book the same resource for the same time to 2 different people? Surely even the simplest test would have picked this one up!&lt;/p&gt;  &lt;p&gt;Turns out that there is a column that this “Conflict Detection” feature relies on… and if you try and install the application and this column exists as a site column for a parent (or a site collection column) then you’ll run into this. Problem is, I cannot remember the name of the column… and the environment is one I no longer have access to (so I cannot find out). I know this post does not have a specific resolution, but if you have installed this Template, and you find that you can “double-book” meeting rooms, check to make sure that the necessary feature is active – If it’s not, the error you get when you try to activate it will likely indicate a column name conflict.&lt;/p&gt;  &lt;p&gt;Cheers! B&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-8717768143969986977?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/8717768143969986977/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=8717768143969986977' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/8717768143969986977'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/8717768143969986977'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2009/05/cant-get-room-and-resource-reservation.html' title='Can’t get the Room and Resource Reservation system working?'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-2716149569098259613</id><published>2009-05-17T00:46:00.001+10:00</published><updated>2009-05-17T00:46:06.767+10:00</updated><title type='text'>SharePoint 2010 Preliminary Requirements</title><content type='html'>&lt;p&gt;Some details have started to come out about the requirements for SharePoint 2010.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Running it:&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;It can only be installed on 2008 Server &lt;/li&gt;    &lt;li&gt;It will only be released in 64-bit, which means… &lt;/li&gt;    &lt;li&gt;You can either install it on Windows 2008 64-bit OR Windows 2008 R2 64-bit &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Information Store:&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;You can only use SQL 2005 OR 2008 &lt;/li&gt;    &lt;li&gt;ONLY 64-bit versions of SQL 2005 or 2008 will be supported &lt;/li&gt;    &lt;li&gt;You “Can” install MOSS 2010 using a 32-bit SQL Server, but you’ll be in an unsupported state as soon as you flick the switch (and nobody wants that, right?) &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Using it:&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;You can only author content using a Windows machine and IE 7, IE 8 or (wait for it) Firefox 3 (I know, no way, right?) – Essentially the Browser MUST be XHTML 1.0 Compliant. &lt;/li&gt;    &lt;li&gt;IE 6 will continue to be supported as a level 2 browser, along with FF 1.5, 2, Safari 3, etc… also IE 7, 8 and FF 3 will be supported as Level 2 browsers on other Operating systems (although they indicate that they’re working on removing the restriction on the OS). &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;More info can be found here… - &lt;a title="Announcing SharePoint Server 2010 Preliminary System Requirements" href="http://blogs.msdn.com/sharepoint/archive/2009/05/07/announcing-sharepoint-server-2010-preliminary-system-requirements.aspx"&gt;Announcing SharePoint Server 2010 Preliminary System Requirements&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Brad&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-2716149569098259613?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/2716149569098259613/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=2716149569098259613' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/2716149569098259613'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/2716149569098259613'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2009/05/sharepoint-2010-preliminary.html' title='SharePoint 2010 Preliminary Requirements'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-2278909776973585628</id><published>2009-04-17T07:26:00.001+10:00</published><updated>2009-04-29T07:19:54.604+10:00</updated><title type='text'>SharePoint 2007 SP2 Service Pack has been released</title><content type='html'>&lt;p&gt;Update 29/04/2009 – The Service Pack 2 for SharePoint 2007 (that is, WSS 3 and MOSS 2007) has been released to the general public. You can get the &lt;a href="http://support.microsoft.com/kb/953338" target="_blank"&gt;Windows SharePoint Services one here&lt;/a&gt; and the &lt;a href="http://support.microsoft.com/kb/953334" target="_blank"&gt;Microsoft Office SharePoint Server one here&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;There are lots of changes (&lt;a href="http://download.microsoft.com/download/C/2/C/C2C36159-600C-4EEA-B80A-F988EE7A418F/2007%20Office%20Service%20Pack%202%20Changes.xlsx" target="_blank"&gt;Change Log WSS&lt;/a&gt; – &lt;a href="http://download.microsoft.com/download/C/2/C/C2C36159-600C-4EEA-B80A-F988EE7A418F/2007%20Office%20Service%20Pack%202%20Changes.xlsx" target="_blank"&gt;Change Log MOSS&lt;/a&gt;) so please ensure you test this in a development environment first before rolling out to production. &lt;/p&gt;  &lt;hr /&gt;  &lt;p&gt;The release date for SharePoint 2007 SP2 has been set at the 28th April (2 weeks from today). There’s a write-up of the biggest changes here - &lt;a title="http://blogs.technet.com/office_sustained_engineering/archive/2009/04/16/service-pack-2-for-the-2007-microsoft-office-system-due-to-ship-april-28th.aspx" href="http://blogs.technet.com/office_sustained_engineering/archive/2009/04/16/service-pack-2-for-the-2007-microsoft-office-system-due-to-ship-april-28th.aspx"&gt;http://blogs.technet.com/office_sustained_engineering/archive/2009/04/16/service-pack-2-for-the-2007-microsoft-office-system-due-to-ship-april-28th.aspx&lt;/a&gt; – The thing I’m most happy about is the fact that they are releasing the bugfix list as a spreadsheet again. Nice, very nice. Whack it in a SharePoint site, index it and you have a “That was fixed in Service Pack &lt;em&gt;n&lt;/em&gt;” lookup feature for clients who are still on RTM (and who are in an unsupported state).&lt;/p&gt;  &lt;p&gt;Sweet! And information that’s much more useful than the name of the next version of SharePoint. Honestly, I’ve lost count of the number of blog entries proudly proclaiming that the next version of SharePoint is going to be called… wait for it… SharePoint Server! &amp;lt;Commence Sarcasm&amp;gt;WooHoo! I’ll sleep better tonight!&amp;lt;/Commence Sarcasm&amp;gt;&lt;/p&gt;  &lt;p&gt;Anyway, keep an eye on this blog to be notified of the release &lt;a title="http://blogs.technet.com/office_sustained_engineering/archive/2009/04/16/service-pack-2-for-the-2007-microsoft-office-system-due-to-ship-april-28th.aspx" href="http://blogs.technet.com/office_sustained_engineering/"&gt;http://blogs.technet.com/office_sustained_engineering/&lt;/a&gt; (Or you could diarise it I suppose…)&lt;/p&gt;  &lt;p&gt;Brad&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-2278909776973585628?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/2278909776973585628/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=2278909776973585628' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/2278909776973585628'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/2278909776973585628'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2009/04/sp2-is-coming-for-sharepoint-2007.html' title='SharePoint 2007 SP2 Service Pack has been released'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-2274060399179281493</id><published>2009-03-08T10:26:00.001+11:00</published><updated>2009-03-08T10:26:54.525+11:00</updated><title type='text'>Fishing an ItemID from a URL – the easy way</title><content type='html'>&lt;p&gt;I’ve recently started to follow &lt;a href="http://blogs.msdn.com/jjameson/default.aspx" target="_blank"&gt;Jeremy Jameson’s blog&lt;/a&gt; – He knows lots about MOSS and the associated technologies, and he always seems to be coming up with little “gems” of information. The post that led me to his blog was one he wrote where you can &lt;a href="http://blogs.msdn.com/jjameson/archive/2008/06/12/browser-button-a-k-a-favelet-or-bookmarklet-for-parsing-sharepoint-list-item-ids.aspx" target="_blank"&gt;create a bookmark or quicklink which extracts the ItemID from the current URL in a browser&lt;/a&gt;. &lt;/p&gt;  &lt;p&gt;It’s a neat trick and could easily be expanded to a little toolbox of functionality for people who are constantly pulling things out of querystrings (like me). From his blog:&lt;/p&gt;  &lt;hr /&gt;&lt;a href="javascript:s=location.href;pos1=s.indexOf('DispForm.aspx?ID=', 0);if(pos1==-1){window.alert(&amp;quot;Unable to determine List Item ID from URL.&amp;quot;);}else{pos1+='DispForm.aspx?ID='.length;pos2=s.indexOf('&amp;amp;', pos1);if(pos2==-1){pos2=s.length;}listItemIntId=s.substr(pos1, pos2-pos1);window.alert('List Item ID: ' + listItemIntId);}" mce_href="javascript:s=location.href;pos1=s.indexOf(&amp;#39;DispForm.aspx?ID=&amp;#39;, 0);if(pos1==-1){window.alert(&amp;quot;Unable to determine List Item ID from URL.&amp;quot;);}else{pos1+=&amp;#39;DispForm.aspx?ID=&amp;#39;.length;pos2=s.indexOf(&amp;#39;&amp;amp;&amp;#39;, pos1);if(pos2==-1){pos2=s.length;}listItemIntId=s.substr(pos1, pos2-pos1);window.alert(&amp;#39;List Item ID: &amp;#39; + listItemIntId);}"&gt;Parse List Item ID&lt;/a&gt;   &lt;h5&gt;How do I install the browser button?&lt;/h5&gt;  &lt;p&gt;For Internet Explorer users:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Right click the &lt;strong&gt;Parse List Item ID&lt;/strong&gt; link and choose &lt;strong&gt;Add to Favorites&lt;/strong&gt;. &lt;/li&gt;    &lt;li&gt;A security alert dialog will warn you that the link may be unsafe. Click &lt;strong&gt;Yes&lt;/strong&gt;. &lt;/li&gt;    &lt;li&gt;In the &lt;strong&gt;Save in&lt;/strong&gt; dropdown list, choose &lt;strong&gt;Links&lt;/strong&gt;. Click &lt;strong&gt;Add&lt;/strong&gt;. &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;For Firefox users:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Drag the &lt;strong&gt;Parse List Item ID&lt;/strong&gt; link to your Links/Bookmarks toolbar. &lt;/li&gt; &lt;/ol&gt;  &lt;h5&gt;How do I uninstall the browser button?&lt;/h5&gt;  &lt;p&gt;For Internet Explorer users:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Right click the &lt;strong&gt;Parse List Item ID&lt;/strong&gt; button on the Favorites toolbar and choose &lt;strong&gt;Delete&lt;/strong&gt;. &lt;/li&gt;    &lt;li&gt;A confirmation dialog will warn you that the button will be permanently deleted. Click &lt;strong&gt;Yes&lt;/strong&gt;. &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;For Firefox users:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Right click the &lt;strong&gt;Parse List Item ID&lt;/strong&gt; button on the Links/Bookmarks toolbar and choose &lt;strong&gt;Delete&lt;/strong&gt;. &lt;/li&gt;    &lt;li&gt;A confirmation dialog will warn you that the button will be permanently deleted. Click &lt;strong&gt;Yes&lt;/strong&gt;. &lt;/li&gt; &lt;/ol&gt;  &lt;hr /&gt;  &lt;p&gt;Cheers!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-2274060399179281493?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/2274060399179281493/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=2274060399179281493' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/2274060399179281493'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/2274060399179281493'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2009/03/fishing-itemid-from-url-easy-way.html' title='Fishing an ItemID from a URL – the easy way'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-8126703054493499440</id><published>2009-03-08T09:13:00.001+11:00</published><updated>2009-03-08T09:38:43.652+11:00</updated><title type='text'>Found a way to "Address" a SharePoint field using JavaScript</title><content type='html'>&lt;p&gt;One of the things that makes it a bit tough working with SharePoint pages is the fact that you cannot predict what the form fields will be called. They get random names like ctl00$m$g_b38c402f_5254_4ae1_8677_39beff22ef48$ctl00$ctl02$ctl00$ctl01$ctl00$ctl00$ctl02$ctl00$ctl00$ctl04$ctl00$ctl00$TextField and they change every time you change the form fields. Bah! &lt;/p&gt;  &lt;p&gt;Hopeless. &lt;/p&gt;  &lt;p&gt;However... in my hunt around for a solution to the Outlook Calendar times in GMT issue for one client, I came across this little gem of a script that solves this problem: &lt;a href="http://blogs.msdn.com/sharepointdesigner/archive/2007/06/13/using-javascript-to-manipulate-a-list-form-field.aspx"&gt;http://blogs.msdn.com/sharepointdesigner/archive/2007/06/13/using-javascript-to-manipulate-a-list-form-field.aspx&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;The getTagFromIdentifierAndTitle code below grabs a Form field tag (id) based on the tag Name, Identifier and Title you pass in. In this code sample, they are using that information to pre-populate form fields in SharePoint from values in the querystring. One of the projects we’re working on at the moment has a common requirement to have the form fields pre-populated - this may be useful in that solution somewhere. &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;hr /&gt;  &lt;p&gt;&lt;/p&gt;  &lt;pre&gt;&lt;font size="1"&gt;&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt;&amp;#160;&amp;#160; &lt;/font&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;font size="1"&gt;// This javascript sets the default value of a lookup field identified&lt;br /&gt;// by &amp;lt;&amp;lt;FIELD DISPLAY NAME&amp;gt;&amp;gt; to the value stored in the querysting variable&lt;br /&gt;// identified by &amp;lt;&amp;lt;QUERYSTRING VARIABLE NAME&amp;gt;&amp;gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/font&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;font size="1"&gt;// Customize this javascript by replacing &amp;lt;&amp;lt;FIELD DISPLAY NAME&amp;gt;&amp;gt; and&lt;br /&gt;// &amp;lt;&amp;lt;QUERYSTRING VARIABLE NAME&amp;gt;&amp;gt; with appropriate values.&lt;br /&gt;// Then just paste it into NewForm.aspx inside PlaceHolderMain&amp;#160;&amp;#160; &lt;/font&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;font size="1"&gt;_spBodyOnLoadFunctionNames.push(&amp;quot;fillDefaultValues&amp;quot;);&amp;#160;&amp;#160; &lt;/font&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;font size="1"&gt;function fillDefaultValues() {&lt;br /&gt;&amp;#160;&amp;#160; var qs = location.search.substring(1, location.search.length);&lt;br /&gt;&amp;#160;&amp;#160; var args = qs.split(&amp;quot;&amp;amp;&amp;quot;);&lt;br /&gt;&amp;#160;&amp;#160; var vals = new Object();&lt;br /&gt;&amp;#160;&amp;#160; for (var i=0; i &amp;lt; args.length; i++) {&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; var nameVal = args[i].split(&amp;quot;=&amp;quot;);&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; var temp = unescape(nameVal[1]).split('+');&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; nameVal[1] = temp.join(' ');&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; vals[nameVal[0]] = nameVal[1];&lt;br /&gt;&amp;#160;&amp;#160; }&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; setLookupFromFieldName(&amp;quot;&amp;lt;&amp;lt;FIELD DISPLAY NAME&amp;gt;&amp;gt;&amp;quot;, vals[&amp;quot;&amp;lt;&amp;lt;QUERYSTRING VARIABLE NAME&amp;gt;&amp;gt;&amp;quot;]);&lt;br /&gt;}&lt;/font&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;font face="Courier New" size="1"&gt;function setLookupFromFieldName(fieldName, value) {&lt;br /&gt;    &lt;br /&gt;&amp;#160;&amp;#160; if (value == undefined) return;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&amp;#160;&amp;#160; var theSelect = getTagFromIdentifierAndTitle(&amp;quot;select&amp;quot;,&amp;quot;Lookup&amp;quot;,fieldName);&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&amp;#160; // if theSelect is null, it means that the target list has more than&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&amp;#160; // 20 items, and the Lookup is being rendered with an input element&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; if (theSelect == null) {&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; var theInput = getTagFromIdentifierAndTitle(&amp;quot;input&amp;quot;,&amp;quot;&amp;quot;,fieldName);&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; ShowDropdown(theInput.id);&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; //this function is provided by SharePoint&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; var opt=document.getElementById(theInput.opt);&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; setSelectedOption(opt, value);&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; OptLoseFocus(opt);&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; //this function is provided by SharePoint&amp;#160;&amp;#160; &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; } else {&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; setSelectedOption(theSelect, value);&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&amp;#160;&amp;#160; }&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;}&amp;#160;&amp;#160; &lt;/font&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;font face="Courier New" size="1"&gt;function setSelectedOption(select, value) {&lt;br /&gt;    &lt;br /&gt;&amp;#160;&amp;#160; var opts = select.options;&amp;#160;&amp;#160; var l = opts.length;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&amp;#160;&amp;#160; if (select == null) return;&amp;#160;&amp;#160; for (var i=0; i &amp;lt; l; i++) {&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; if (opts[i].value == value) {&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; select.selectedIndex = i;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; return true;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&amp;#160;&amp;#160; }&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&amp;#160;&amp;#160; return false;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;}&lt;/font&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;font face="Courier New" size="1"&gt;function getTagFromIdentifierAndTitle(tagName, identifier, title) {&lt;br /&gt;    &lt;br /&gt;&amp;#160;&amp;#160; var len = identifier.length;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&amp;#160;&amp;#160; var tags = document.getElementsByTagName(tagName);&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&amp;#160;&amp;#160; for (var i=0; i &amp;lt; tags.length; i++) {&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; var tempString = tags[i].id;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; if (tags[i].title == title &amp;amp;&amp;amp; (identifier == &amp;quot;&amp;quot; || tempString.indexOf(identifier) == tempString.length - len)) {&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; return tags[i];&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&amp;#160;&amp;#160; }&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&amp;#160;&amp;#160; return null;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&amp;lt;/script&amp;gt;&lt;/font&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;font face="Courier New" size="1"&gt;&lt;/font&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;hr /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Here's a list of the most common SharePoint Field types and their associated Identifier and tagName: &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;table class="" style="border-collapse: collapse" cellspacing="0" cellpadding="1" border="0"&gt;&lt;tbody&gt;&lt;br /&gt;    &lt;tr style="font-weight: bold; color: white; background-color: #4f81bd"&gt;&lt;br /&gt;      &lt;td class="fieldCell" style="width: 200px"&gt;SharePoint Field Type&lt;/td&gt;&lt;br /&gt;&lt;br /&gt;      &lt;td class="fieldCell" style="width: 200px"&gt;identifier&lt;/td&gt;&lt;br /&gt;&lt;br /&gt;      &lt;td class="fieldCell" style="width: 150px"&gt;tagName&lt;/td&gt;&lt;br /&gt;    &lt;/tr&gt;&lt;br /&gt;&lt;br /&gt;    &lt;tr&gt;&lt;br /&gt;      &lt;td class="fieldCell" style="font-weight: bold"&gt;Single Line of Text&lt;/td&gt;&lt;br /&gt;&lt;br /&gt;      &lt;td class="fieldCell"&gt;TextField&lt;/td&gt;&lt;br /&gt;&lt;br /&gt;      &lt;td class="fieldCell"&gt;input&lt;/td&gt;&lt;br /&gt;    &lt;/tr&gt;&lt;br /&gt;&lt;br /&gt;    &lt;tr&gt;&lt;br /&gt;      &lt;td class="fieldCell" style="font-weight: bold"&gt;Multiple Lines of Text&lt;/td&gt;&lt;br /&gt;&lt;br /&gt;      &lt;td class="fieldCell"&gt;TextField&lt;/td&gt;&lt;br /&gt;&lt;br /&gt;      &lt;td class="fieldCell"&gt;input&lt;/td&gt;&lt;br /&gt;    &lt;/tr&gt;&lt;br /&gt;&lt;br /&gt;    &lt;tr&gt;&lt;br /&gt;      &lt;td class="fieldCell" style="font-weight: bold"&gt;Number&lt;/td&gt;&lt;br /&gt;&lt;br /&gt;      &lt;td class="fieldCell"&gt;TextField&lt;/td&gt;&lt;br /&gt;&lt;br /&gt;      &lt;td class="fieldCell"&gt;input&lt;/td&gt;&lt;br /&gt;    &lt;/tr&gt;&lt;br /&gt;&lt;br /&gt;    &lt;tr&gt;&lt;br /&gt;      &lt;td class="fieldCell" style="font-weight: bold"&gt;Currency&lt;/td&gt;&lt;br /&gt;&lt;br /&gt;      &lt;td class="fieldCell"&gt;TextField&lt;/td&gt;&lt;br /&gt;&lt;br /&gt;      &lt;td class="fieldCell"&gt;input&lt;/td&gt;&lt;br /&gt;    &lt;/tr&gt;&lt;br /&gt;&lt;br /&gt;    &lt;tr&gt;&lt;br /&gt;      &lt;td class="fieldCell" style="font-weight: bold"&gt;Choice (dropdown)&lt;/td&gt;&lt;br /&gt;&lt;br /&gt;      &lt;td class="fieldCell"&gt;DropDownChoice&lt;/td&gt;&lt;br /&gt;&lt;br /&gt;      &lt;td class="fieldCell"&gt;select&lt;/td&gt;&lt;br /&gt;    &lt;/tr&gt;&lt;br /&gt;&lt;br /&gt;    &lt;tr&gt;&lt;br /&gt;      &lt;td class="fieldCell" style="font-weight: bold"&gt;Lookup (single)*&lt;/td&gt;&lt;br /&gt;&lt;br /&gt;      &lt;td class="fieldCell"&gt;Lookup&lt;/td&gt;&lt;br /&gt;&lt;br /&gt;      &lt;td class="fieldCell"&gt;select&lt;/td&gt;&lt;br /&gt;    &lt;/tr&gt;&lt;br /&gt;&lt;br /&gt;    &lt;tr&gt;&lt;br /&gt;      &lt;td class="fieldCell" style="font-weight: bold"&gt;Lookup (multiple)&lt;/td&gt;&lt;br /&gt;&lt;br /&gt;      &lt;td class="fieldCell"&gt;SelectCandidate; SelectResult&lt;/td&gt;&lt;br /&gt;&lt;br /&gt;      &lt;td class="fieldCell"&gt;select&lt;/td&gt;&lt;br /&gt;    &lt;/tr&gt;&lt;br /&gt;&lt;br /&gt;    &lt;tr&gt;&lt;br /&gt;      &lt;td class="fieldCell" style="font-weight: bold"&gt;Yes/No&lt;/td&gt;&lt;br /&gt;&lt;br /&gt;      &lt;td class="fieldCell"&gt;BooleanField&lt;/td&gt;&lt;br /&gt;&lt;br /&gt;      &lt;td class="fieldCell"&gt;input&lt;/td&gt;&lt;br /&gt;    &lt;/tr&gt;&lt;br /&gt;  &lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;*Lookups are a bit more complicated because Lookup FormFields render differently when the target list contains more than 20 items. That's why the code above has a special function for Lookups&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-8126703054493499440?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/8126703054493499440/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=8126703054493499440' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/8126703054493499440'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/8126703054493499440'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2009/03/found-way-to-sharepoint-field-using.html' title='Found a way to &amp;quot;Address&amp;quot; a SharePoint field using JavaScript'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-2914828130483335648</id><published>2009-03-07T15:25:00.001+11:00</published><updated>2009-03-07T15:25:44.635+11:00</updated><title type='text'>Hamlet, Act 2 scene 2 (Oh how I hate Daylight Savings, TimeZones, and the fact XML can’t deliver a date format JavaScript understands)</title><content type='html'>&lt;p&gt;Yes, while working onsite at a Client’s place I've been getting my hands all icky with code... I scrub and I scrub but &lt;a href="http://www.bartleby.com/70/4122.html" target="_blank"&gt;all of the ocean's waters won't wash this code from my hands&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Anyway, the point of this blog entry is to record the challenge that I had and the code I wrote to fix it, as it will be useful in the future for both me and maybe others. Essentially, the page I was fixing was giving me times in Zulu (GMT) - and in an XML format the JavaScript time functions could not understand. The business requirement was to have the times appear in Outlook in the same time zone the user was using. It took me the better part of a day, and I learned way too much about time zones and how to detect them on the user's computer, but I got there in the end.&lt;/p&gt;  &lt;p&gt;The original code for this was here - &lt;a href="http://patrikluca.blogspot.com/2008/03/extension-to-rooms-and-equipment.html"&gt;http://patrikluca.blogspot.com/2008/03/extension-to-rooms-and-equipment.html&lt;/a&gt; - an &amp;quot;Add to Outlook&amp;quot; button to go beside every Resource reservation, for a company still using a Lotus Notes app that allowed them to place multiple conflicting (overlapping) bookings on the same room / item.&lt;/p&gt;  &lt;p&gt;I leveraged the free &amp;quot;&lt;a href="http://technet.microsoft.com/en-us/windowsserver/sharepoint/bb407286.aspx"&gt;Resource Reservation&lt;/a&gt;&amp;quot; add-in for SharePoint and enhanced it according to the article, but when the users started using it they noticed that the times never matched. It was always 10 hours earlier than the real booking time that appeared in the page. Hmmm... 10 hours... Australia's GMT+10, so it must be passing them in as GMT Times.&lt;/p&gt;  &lt;p&gt;I updated the JavaScript so the times were changed back to the equivalent time zone (taking into account daylight savings) of the current user (Useful because this client is in 4 different time zones at any time as a minimum). There's only one problem in the code (and it's unlikely to be hit) but if a user books a resource for either side of a daylight savings change, then one of the times will be out by 1 hour. You can see the note I've put in there to remind myself if I ever get asked to fix it :)&lt;/p&gt;  &lt;p&gt;If you are copying the code, watch out for line breaks!&lt;/p&gt;  &lt;hr /&gt;  &lt;p&gt;function createOutlookAppointment(title,meetinglocation,startdate,enddate)&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;br /&gt;{     &lt;br /&gt;// if you ever get asked to manage the booking hours over a DST change period, you will need to     &lt;br /&gt;// test each date to see if it is in dst - isDST returns 1 if it is during DST, and 0 if not     &lt;br /&gt;// if (isDST(startdate) - isDST(enddate)) = -1 then the end time is during DST     &lt;br /&gt;// if (isDST(startdate) - isDST(enddate)) = 1 then the start time is during DST     &lt;br /&gt;// however if the calculation = 0 then leave 'em be     &lt;br /&gt;//&amp;#160;&amp;#160; newAppt = new appt(title, meetinglocation, formatIncomingDateTime(startdate + '_' + isDST(startdate)), formatIncomingDateTime(enddate) + '_' + isDST(enddate));     &lt;br /&gt;&amp;#160;&amp;#160; newAppt = new appt(title, meetinglocation, formatIncomingDateTime(startdate), formatIncomingDateTime(enddate));&lt;/p&gt;  &lt;p&gt;&amp;#160; saveAppt( newAppt );    &lt;br /&gt;}&lt;/p&gt;  &lt;p&gt;function isDST(incomingDateTime)    &lt;br /&gt;{     &lt;br /&gt;// This function detects if the inbound date and time is in Daylight savings time, and returns a 1 if it is, and a 0 if it's not&amp;#160; &lt;br /&gt;// Kinda handy, seeing as DST is always &amp;quot;1&amp;quot; hour difference     &lt;br /&gt;//I've dropped this in so I don't have to find it again if I ever do need to fix it     &lt;br /&gt;&amp;#160; var yearPart = incomingDateTime.substring(0,4);     &lt;br /&gt;&amp;#160; var monthPart = incomingDateTime.substring(5,7);     &lt;br /&gt;&amp;#160; var dayPart = incomingDateTime.substring(8,10);     &lt;br /&gt;&amp;#160; var d = new Date(yearPart, monthPart, dayPart);     &lt;br /&gt;//&amp;#160;&amp;#160; var d=new Date();     &lt;br /&gt;&amp;#160;&amp;#160; var dY=d.getFullYear();     &lt;br /&gt;&amp;#160;&amp;#160; var d1=new Date(dY,0,1,0,0,0,0);&amp;#160;&amp;#160;&amp;#160; &lt;br /&gt;&amp;#160;&amp;#160; var d2=new Date(dY,6,1,0,0,0,0);&amp;#160;&amp;#160; &lt;br /&gt;&amp;#160;&amp;#160; var d1a=new Date((d1.toUTCString()).replace(&amp;quot; GMT&amp;quot;,&amp;quot;&amp;quot;));&amp;#160;&amp;#160; &lt;br /&gt;&amp;#160;&amp;#160; var d2a=new Date((d2.toUTCString()).replace(&amp;quot; GMT&amp;quot;,&amp;quot;&amp;quot;));&amp;#160;&amp;#160; &lt;br /&gt;&amp;#160;&amp;#160; var o1=(d1-d1a)/3600000;&amp;#160;&amp;#160; &lt;br /&gt;&amp;#160;&amp;#160; var o2=(d2-d2a)/3600000;&amp;#160;&amp;#160; &lt;br /&gt;&amp;#160;&amp;#160; var rV=0;&amp;#160;&amp;#160; &lt;br /&gt;&amp;#160;&amp;#160; if (o1!=o2)     &lt;br /&gt;&amp;#160;&amp;#160; {&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; d.setHours(0);     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; d.setMinutes(0);     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; d.setSeconds(0);     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; d.setMilliseconds(0);&amp;#160;&amp;#160; &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; var da=new Date((d.toUTCString()).replace(&amp;quot; GMT&amp;quot;,&amp;quot;&amp;quot;));     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; o3=(d-da)/3600000;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; rV=(o3==o1)?0:1;&amp;#160;&amp;#160; &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; }&amp;#160; &lt;br /&gt;&amp;#160; return rV;&amp;#160; &lt;br /&gt;}&lt;/p&gt;  &lt;p&gt;function formatIncomingDateTime(incomingDateTime){&lt;/p&gt;  &lt;p&gt;&amp;#160; var timePartHours = incomingDateTime.substring(11,13);    &lt;br /&gt;&amp;#160; var timePartMinSecs = incomingDateTime.substring(13,16);     &lt;br /&gt;&amp;#160; var yearPart = incomingDateTime.substring(0,4);     &lt;br /&gt;&amp;#160; var monthPart = incomingDateTime.substring(5,7);     &lt;br /&gt;&amp;#160; var dayPart = incomingDateTime.substring(8,10);     &lt;br /&gt;&amp;#160; var newDate = new Date(yearPart, monthPart, dayPart); //gives us the current date and time in UTC     &lt;br /&gt;&amp;#160; var timeOffset = (newDate.getTimezoneOffset())/60; //gives us the amount of hours we need to deduct&lt;/p&gt;  &lt;p&gt;&amp;#160; //create the date we are going to manipulate    &lt;br /&gt;&amp;#160; var myDate = new Date(yearPart, monthPart, dayPart);&lt;/p&gt;  &lt;p&gt;&amp;#160; //calculate the hour we are booking for...    &lt;br /&gt;&amp;#160; timePartHoursInt = parseInt(timePartHours,10) - timeOffset;&lt;/p&gt;  &lt;p&gt;&amp;#160; if (timePartHoursInt &amp;lt; 0) {    &lt;br /&gt;&amp;#160;&amp;#160; //This means the booking hours + the time offset are really for yesterday...     &lt;br /&gt;&amp;#160;&amp;#160; //because the timeoffset is the difference between current local time and GMT     &lt;br /&gt;&amp;#160;&amp;#160; //so a negative number means we need to deduct a day and change it into real time again by adding 24h     &lt;br /&gt;&amp;#160;&amp;#160; timePartHoursInt += 24;     &lt;br /&gt;&amp;#160;&amp;#160; myDate.setDate(myDate.getDate() - 1);     &lt;br /&gt;&amp;#160; }     &lt;br /&gt;&amp;#160; else if (timePartHoursInt &amp;gt;= 24) {     &lt;br /&gt;&amp;#160;&amp;#160; //in this case, we are booking for tomorrow (and midnight - 00:00:00 - is tomorrow)     &lt;br /&gt;&amp;#160;&amp;#160; timePartHoursInt -= 24;     &lt;br /&gt;&amp;#160;&amp;#160; myDate.setDate(myDate.getDate() + 1);     &lt;br /&gt;&amp;#160; }&lt;/p&gt;  &lt;p&gt;if (timePartHoursInt &amp;lt; 10) {    &lt;br /&gt;// add a leading 0 to the time string so it's formatted in a standard way     &lt;br /&gt;// then convert the int to a string     &lt;br /&gt;&amp;#160; timePartHours = '0'+timePartHoursInt.toString();     &lt;br /&gt;}     &lt;br /&gt;else {     &lt;br /&gt;&amp;#160; timePartHours = timePartHoursInt.toString();     &lt;br /&gt;}&lt;/p&gt;  &lt;p&gt;&amp;#160; if (myDate.getMonth() &amp;lt; 10)    &lt;br /&gt;// add a leading 0 to the time string so it's formatted in a standard way     &lt;br /&gt;// then convert the int to a string     &lt;br /&gt;&amp;#160;&amp;#160; monthPart = '0'+myDate.getMonth();     &lt;br /&gt;&amp;#160; else     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; monthPart = myDate.getMonth();&lt;/p&gt;  &lt;p&gt;&amp;#160; if (myDate.getDate() &amp;lt; 10)    &lt;br /&gt;// add a leading 0 to the time string so it's formatted in a standard way     &lt;br /&gt;// then convert the int to a string     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; dayPart = '0'+myDate.getDate();     &lt;br /&gt;&amp;#160; else     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; dayPart = myDate.getDate();&lt;/p&gt;  &lt;p&gt;&amp;#160; var datePart = myDate.getYear() + '-' + monthPart + '-' + dayPart;&lt;/p&gt;  &lt;p&gt;&amp;#160; return datePart.concat(' '.concat(timePartHours).concat(timePartMinSecs));    &lt;br /&gt;}&lt;/p&gt;  &lt;p&gt;function appt( Subject, Location, Start, End){&lt;/p&gt;  &lt;p&gt;&amp;#160; this.Subject = Subject;    &lt;br /&gt;&amp;#160; this.Location = Location;     &lt;br /&gt;&amp;#160; this.Start = Start;     &lt;br /&gt;&amp;#160; this.End = End;&lt;/p&gt;  &lt;p&gt;&amp;#160; this.ReminderMinutesBeforeStart = 15;    &lt;br /&gt;}     &lt;br /&gt;function saveAppt( obj ){&lt;/p&gt;  &lt;p&gt;&amp;#160; var olAppointmentItem = 1;&lt;/p&gt;  &lt;p&gt;&amp;#160; out = new ActiveXObject( &amp;quot;Outlook.Application&amp;quot; );&lt;/p&gt;  &lt;p&gt;&amp;#160; appt = out.CreateItem( olAppointmentItem );&lt;/p&gt;  &lt;p&gt;&amp;#160; appt.Subject = obj.Subject;    &lt;br /&gt;&amp;#160; appt.Location = obj.Location;     &lt;br /&gt;&amp;#160; appt.Start = obj.Start;     &lt;br /&gt;&amp;#160; appt.End = obj.End;&lt;/p&gt;  &lt;p&gt;&amp;#160; appt.ReminderMinutesBeforeStart = obj.ReminderMinutesBeforeStart;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/p&gt;  &lt;p&gt;&amp;#160; appt.Display();    &lt;br /&gt;&amp;#160; return null;     &lt;br /&gt;}&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/p&gt;  &lt;hr /&gt;  &lt;p&gt;This &amp;quot;Add to Outlook&amp;quot; button can be used on any page that can pass in a Start and End date, time, a Title (for the calendar appointment) and a location (eg a calendaring Confluence site?). With a bit of modification you could also add other attendees, a reminder, etc. &lt;/p&gt;  &lt;p&gt;However, the site hosting the link / button must be trusted for this to work properly. If the site appears in the &amp;quot;Internet Zone&amp;quot; you just get a JavaScript error. If your site sits in the Intranet security zone you get a security dialogue, asking you if you are sure you want to run this crazy activeX control.&lt;/p&gt;  &lt;p&gt;Anyway, an interesting day and a successful outcome for the client.Although a word of warning – the Room and Resource Reservation solution from Microsoft will deploy successfully on a Publishing website, however it will NOT stop users from booking an overlapping meeting (because there’s a conflicting named column or content type – one or the other).&lt;/p&gt;  &lt;p&gt;Brad&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-2914828130483335648?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/2914828130483335648/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=2914828130483335648' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/2914828130483335648'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/2914828130483335648'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2009/03/hamlet-act-2-scene-2-oh-how-i-hate.html' title='Hamlet, Act 2 scene 2 (Oh how I hate Daylight Savings, TimeZones, and the fact XML can’t deliver a date format JavaScript understands)'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-6184759742163929367</id><published>2009-03-04T22:52:00.001+11:00</published><updated>2009-03-04T22:53:27.942+11:00</updated><title type='text'>All my life, I’ve wanted a consistent Menu system…</title><content type='html'>&lt;p&gt;Up until now, menu systems for MOSS had to be built if you created new site collections that resided below the “parent” site (Parent in a URL-hierarchal sense). The team at RDA have released a few projects, but by far and away the best one from them (IMHO) is the Global Navigation solution in CodePlex.&lt;/p&gt;  &lt;p&gt;Basically, you can nominate a web site or set of web sites you want to have the navigation based on, then using a separate administration page, Staple it to whichever web sites you want. I hope to try it out on one of our lab servers soon, and if it works as described I’ll just start rolling this out as a matter of course for all of the clients I create intranet sites for, where you will often have separate site collections with separate navigation in the same URL hierarchy.&lt;/p&gt;  &lt;p&gt;You can get the &lt;a href="http://rdacollaboration.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=24188" target="_blank"&gt;code and binaries for it here&lt;/a&gt; – there’s also &lt;a href="http://rdacollab.blogspot.com/2009/03/rda-global-navigation-for-sharepoint.html" target="_blank"&gt;a blog entry with screen shots here&lt;/a&gt; – I just wish they’d explain what they mean by the phrase “associating a Data Source with all sites” – Is the web site the data source? A Database table?&lt;/p&gt;  &lt;p&gt;Cheers!    &lt;br /&gt;Brad&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-6184759742163929367?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/6184759742163929367/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=6184759742163929367' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/6184759742163929367'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/6184759742163929367'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2009/03/all-my-life-ive-wanted-consistent-menu.html' title='All my life, I’ve wanted a consistent Menu system…'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-6662894032169295573</id><published>2009-02-25T18:44:00.001+11:00</published><updated>2009-02-25T18:44:38.005+11:00</updated><title type='text'>New hotfixes for WSS and MOSS (SharePoint 2007)</title><content type='html'>&lt;p&gt;And not a moment too soon! We rolled out the infrastructure update to a client just recently to resolve an issue they were having where emails coming into an email-enabled document library were not triggering a workflow. As most people know, the Infrastructure Update breaks Alternate Access Mappings when using Load-balancing or Proxies… so if you use them, you then need to install at least the next hotfix rollup that came out after it. &lt;/p&gt;  &lt;p&gt;So that was the plan… and all was going swimmingly until we looked at the workflow and realised that they were all failing – it appears as though the October and December hotfixes introduced an issue where updates to user columns failed when running through SharePoint Designer workflow. It’s like playing Whack-a-mole.&lt;/p&gt;  &lt;p&gt;Anyway, the new hotfixes have just been released and they fix a lot of outstanding issues – they can be found here for WSS - &lt;a href="http://support.microsoft.com/kb/961750"&gt;http://support.microsoft.com/kb/961750&lt;/a&gt; – and here for MOSS - &lt;a title="http://support.microsoft.com/kb/961749" href="http://support.microsoft.com/kb/961749"&gt;http://support.microsoft.com/kb/961749&lt;/a&gt;. I can’t find the hotfix rollup yet, so until they are published, these should ideally be deployed on farms that already have the &lt;a href="http://support.microsoft.com/kb/960010" target="_blank"&gt;December&lt;/a&gt; &lt;a href="http://support.microsoft.com/kb/960011" target="_blank"&gt;releases&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;List of issues resolved is as follows:&lt;/p&gt; &lt;strong&gt;WSS&lt;/strong&gt;   &lt;hr /&gt;  &lt;li&gt;When you decline a recurring meeting request from the meeting workspace, the e-mail message that is sent by the SharePoint server is not recognized by Microsoft Office Outlook 2007 as a meeting declination. Therefore, Outlook does not update the meeting attendee status to &amp;quot;Declined.&amp;quot; &lt;/li&gt;  &lt;li&gt;You migrate discussion boards from Windows SharePoint Services 2.0 to Windows SharePoint Services 3.0. Discussion boards work fine after that. However, if you export and import a discussion board into another Windows SharePoint Services 3.0 site, the thread relationship is broken, and all entries appear in one list. &lt;/li&gt;  &lt;li&gt;Content deployment target site permissions that are not inherited can be removed. &lt;/li&gt;  &lt;li&gt;The entries for e-mail-enabled lists are being deleted from the EmailEnabledLists table in the configuration database. When this issue occurs, incoming e-mail messages for these lists are not delivered. Therefore, the e-mail messages are deleted, and errors are logged for &amp;quot;Unkown alias.&amp;quot; &lt;/li&gt;  &lt;li&gt;If you have a list that has more than 500 unique scope IDs and if the Content Approval option is enabled, duplicated items may appear in the default view of this list. &lt;/li&gt;  &lt;li&gt;In a Windows SharePoint Services 3.0 site, alerts for All day Calendar events do not show the correct start and end time in alert e-mail messages. &lt;/li&gt;  &lt;li&gt;When you try to modify group membership of the built-in groups of site collections, you may receive a &amp;quot;System.UnauthorizedAccessException&amp;quot; exception. For example, this issue may occur when you try to add a new user to a built-in group. Built-in groups include visitors, owners, members, and so on. &lt;/li&gt;  &lt;li&gt;If you use the SharePoint Content Migration API to export large sites, the performance is poor. &lt;/li&gt;  &lt;li&gt;You create a new page in the source variation by using a customized page layout that has calculated columns. However, when you try to allow the variation engine to propagate the new page to the other variation label Web sites, it fails. &lt;/li&gt;  &lt;li&gt;When you move through a specific blog category page, you cannot move to the &lt;strong&gt;Next&lt;/strong&gt; page of blog entries. By default, the paging is set to 10 items per page. However, when you move to the next page in a category, a &amp;quot;There are no posts in this category&amp;quot; message is displayed. This message is incorrect. Paging in the &lt;strong&gt;All Posts&lt;/strong&gt; area works as expected. &lt;/li&gt;  &lt;li&gt;Before an incremental content deployment, you activate and then deactivate the feature that creates content types on both the source site and the destination site. During the incremental deployment, the content type delete operation fails, and the content deployment stops with an error message. &lt;/li&gt;  &lt;li&gt;All meetings that you view under a meeting workspace display folder numbers instead of document names. &lt;/li&gt;  &lt;li&gt;You create a versioned page, and you create a major version and a minor version. When you delete the versioned page and try to export the document library, it fails. &lt;/li&gt;  &lt;li&gt;If you have an orphan site collection, the XML produced by the &lt;b&gt;stsadm -o enumsites&lt;/b&gt; command is not well formed, as shown in the following example.     &lt;p&gt;&lt;code&gt;&lt;/code&gt;&lt;/p&gt;    &lt;pre&gt;&amp;lt;Sites Count=&amp;quot;3&amp;quot;&amp;gt; &lt;br /&gt;&amp;lt;Site Url=&amp;quot;http://webapp/&amp;quot; ... /&amp;gt; &lt;br /&gt;&amp;lt;Site Error=&amp;quot;Error message&amp;quot;&amp;gt;  &lt;br /&gt;&amp;lt;Site Url=&amp;quot;http://webapp/...&amp;quot; ... /&amp;gt; &lt;br /&gt;&amp;lt;/Site&amp;gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;  &lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;  &lt;p&gt;The last tag is missing an &amp;quot;s.&amp;quot; It should be &amp;lt;/Sites&amp;gt;. Also, the &amp;lt;site Error …&amp;gt; tag is not correctly closed. &lt;/p&gt;&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;After you install update 957691, you cannot set a user type column from the workflow when you create a new list item. &lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;If you programmatically run the &lt;b&gt;SPListItem.SystemUpdate(bool)&lt;/b&gt; method on a document library, the latest check-in comment will be removed. &lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;If you add a Site Columns choice type that has a slash (/) in the column name to a document library, you cannot change the value of it on a SharePoint site. However, you can change the value by opening the document in Microsoft Word, editing the property, and saving it back to the document library. &lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;When you build an application to control a document library, the &lt;b&gt;SPFolder.CopyTo()&lt;/b&gt; method does not increase the List.ItemCount number, this will cause inconsistency in the list. &lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;The Microsoft PKM Search Filter Daemon (Mssdmn.exe) crashes every 15 seconds when crawled using certificate authentication. &lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;When you try to back up the Shared Search index, it always fails, and you receive the following error message in the backup log: &lt;br /&gt;  &lt;p&gt;[30/9/2008 2:11:46]: Verbose: Starting object: Shared Search Index. [30/9/2008 3:12:17]: Error: Object Shared Search Index failed in event OnBackupComplete. For more information, see the error log located in the backup directory. WebException: The current operation timed-out after 3600 seconds [30/9/2008 3:12:17]: Debug: at Microsoft.Office.Server.Search.Administration.CatalogPauseTimeout.WaitAndThrowIfTimeout() at Microsoft.Office.Server.Search.Administration.SearchApi.CatalogResumeCrawl(GathererPauseReason reason) at Microsoft.Office.Server.Search.Administration.SearchSharedApplication.Microsoft.SharePoint.Administration.Backup.IBackupRestore.OnBackupComplete(Object sender, SPBackupInformation args) [30/9/2008 3:12:17]: Verbose: Starting object: SharedServices_Default_Search.&lt;/p&gt;&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;When you search on a SharePoint site, the performance may sometimes be slow. &lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;Search results are not security trimmed for anonymous users who access the sites that have the lockdown feature activated. &lt;br /&gt;  &lt;hr /&gt;&lt;strong&gt;MOSS&lt;/strong&gt; &lt;br /&gt;&lt;br /&gt;  &lt;hr /&gt;&lt;br /&gt;&lt;br /&gt;  &lt;ul&gt;&lt;br /&gt;    &lt;li&gt;The UserProfileChangeService service does not report user deletions. &lt;/li&gt;&lt;br /&gt;&lt;br /&gt;    &lt;li&gt;If blob caching is enabled for a Web site, you cannot download files whose size is more than 32 megabytes (MB) from that Web site. &lt;/li&gt;&lt;br /&gt;&lt;br /&gt;    &lt;li&gt;When you open a SharePoint Search site by using SharePoint Designer, the W3wp.exe process crashes. &lt;/li&gt;&lt;br /&gt;&lt;br /&gt;    &lt;li&gt;You create a new page based on the &amp;quot;(Welcome Page) Welcome page with summary links&amp;quot; page layout. You add a new link to the Summary Links Web part, and you use a URL that starts with &amp;quot;mms://&amp;quot;. However, the newly added link is an empty link. &lt;/li&gt;&lt;br /&gt;&lt;br /&gt;    &lt;li&gt;You convert a Word document (.docx) to a Web page on a SharePoint site. However, the multi level numbering is incorrect. For example, 1.1 may be displayed as 0.1. &lt;/li&gt;&lt;br /&gt;&lt;br /&gt;    &lt;li&gt;When you use spelling check in a Spanish site, it fails and you may receive the following error message: &lt;br /&gt;      &lt;p&gt;Spell checking is not available for the default language. Choose one of the following languages and click OK to continue spelling, or click Cancel to stop.&lt;/p&gt;&lt;br /&gt;    &lt;/li&gt;&lt;br /&gt;&lt;br /&gt;    &lt;li&gt;A Shared Services Timer job opens handles for each task, but the job does not close the handles. Because the type is set to manual reset for these handles, the garbage collector cannot clean them up. Therefore, a handle leak occurs in the Owstimer.exe process. &lt;/li&gt;&lt;br /&gt;&lt;br /&gt;    &lt;li&gt;You have a Word document (.docx) that has &lt;strong&gt;Track Changes&lt;/strong&gt; enabled. You convert the Word document to a Web page on a SharePoint site. However, deleted words are displayed in the conversion results as unhidden text. &lt;/li&gt;&lt;br /&gt;&lt;br /&gt;    &lt;li&gt;If you disable the &lt;strong&gt;Show Subsites&lt;/strong&gt; option on the navigation settings page and repeatedly visit a subsite, you see high latency and low throughput. &lt;/li&gt;&lt;br /&gt;&lt;br /&gt;    &lt;li&gt;The variation engine cannot restore destination page properties if the page contains a Content Query Web part. &lt;/li&gt;&lt;br /&gt;&lt;br /&gt;    &lt;li&gt;When you set a publishing time for a page in SharePoint, the publishing time may shift incorrectly if the time zone is not Coordinated Universal Time (UTC). This behavior occurs for the end time too. &lt;/li&gt;&lt;br /&gt;&lt;br /&gt;    &lt;li&gt;If you input &lt;strong&gt;Date&lt;/strong&gt; type cells in Excel 2007 files, the XLSX Filter extracts them as numbers. &lt;/li&gt;&lt;br /&gt;&lt;br /&gt;    &lt;li&gt;A Variation Page propagation job cannot transfer updated content to target labels if the page has a comma in the URL. This is because the Variation engine cannot find propagated pages that have a comma in the URL. &lt;/li&gt;&lt;br /&gt;&lt;br /&gt;    &lt;li&gt;The Business Data List Web part is not using the Regional Settings collation when it sorts the data. &lt;/li&gt;&lt;br /&gt;&lt;br /&gt;    &lt;li&gt;When you build an application to control a document library, the SPFolder.CopyTo() API does not increase the List.ItemCount number. This behavior causes inconsistency in the List. &lt;/li&gt;&lt;br /&gt;&lt;br /&gt;    &lt;li&gt;The Microsoft PKM Search Filter Daemon (Mssdmn.exe) crashes every 15 seconds when crawled using certificate authentication. &lt;/li&gt;&lt;br /&gt;&lt;br /&gt;    &lt;li&gt;When you back up the Shared Search index, it always fails, and you may receive the following error message in the backup log: &lt;br /&gt;      &lt;p&gt;[30/9/2008 2:11:46]: Verbose: Starting object: Shared Search Index. [30/9/2008 3:12:17]: Error: Object Shared Search Index failed in event OnBackupComplete. For more information, see the error log located in the backup directory. WebException: The current operation timed-out after 3600 seconds [30/9/2008 3:12:17]: Debug: at Microsoft.Office.Server.Search.Administration.CatalogPauseTimeout.WaitAndThrowIfTimeout() at Microsoft.Office.Server.Search.Administration.SearchApi.CatalogResumeCrawl(GathererPauseReason reason) at Microsoft.Office.Server.Search.Administration.SearchSharedApplication.Microsoft.SharePoint.Administration.Backup.IBackupRestore.OnBackupComplete(Object sender, SPBackupInformation args) [30/9/2008 3:12:17]: Verbose: Starting object: SharedServices_Default_Search.&lt;/p&gt;&lt;br /&gt;    &lt;/li&gt;&lt;br /&gt;&lt;br /&gt;    &lt;li&gt;When you search on a SharePoint site, the performance may be slow. &lt;/li&gt;&lt;br /&gt;&lt;br /&gt;    &lt;li&gt;Search results are not properly security trimmed for anonymous users who access the SharePoint sites that have the Lockdown feature activated. &lt;/li&gt;&lt;br /&gt;  &lt;/ul&gt;&lt;br /&gt;This release also includes fixes that are described in the following Microsoft Knowledge Base articles: &lt;br /&gt;&lt;br /&gt;  &lt;ul&gt;&lt;br /&gt;    &lt;li&gt;&lt;br /&gt;      &lt;p&gt;&lt;a href="http://support.microsoft.com/kb/961176/"&gt;961176&lt;/a&gt; (http://support.microsoft.com/kb/961176/ ) Description of the SharePoint Server 2007 hotfix package (Coreserver.msp): December 19, 2008 &lt;/p&gt;&lt;br /&gt;    &lt;/li&gt;&lt;br /&gt;&lt;br /&gt;    &lt;li&gt;&lt;br /&gt;      &lt;p&gt;&lt;a href="http://support.microsoft.com/kb/961176/"&gt;961176&lt;/a&gt; (http://support.microsoft.com/kb/961176/ ) Description of the SharePoint Server 2007 hotfix package (Coreserver.msp): December 19, 2008 &lt;/p&gt;&lt;br /&gt;    &lt;/li&gt;&lt;br /&gt;&lt;br /&gt;    &lt;li&gt;&lt;br /&gt;      &lt;p&gt;&lt;a href="http://support.microsoft.com/kb/963022/"&gt;963022&lt;/a&gt; (http://support.microsoft.com/kb/963022/ ) Description of the SharePoint Server 2007 hotfix package (Coreserver.msp): January 27, 2009 &lt;/p&gt;&lt;br /&gt;    &lt;/li&gt;&lt;br /&gt;  &lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;  &lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;/li&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-6662894032169295573?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/6662894032169295573/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=6662894032169295573' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/6662894032169295573'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/6662894032169295573'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2009/02/new-hotfixes-for-wss-and-moss.html' title='New hotfixes for WSS and MOSS (SharePoint 2007)'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-2717941926051007194</id><published>2009-02-24T07:58:00.001+11:00</published><updated>2009-02-24T07:58:32.114+11:00</updated><title type='text'>The Hosts file – here today, gone today!</title><content type='html'>&lt;p&gt;When I set up a SharePoint system, I like to ensure that it’s set up according to Microsoft’s “Least Privilege Access” rule. It means that if the site ever gets compromised, the user has no access to other resources except ones directly related to SharePoint.&lt;/p&gt;  &lt;p&gt;I was at a client’s site recently running an upgrade. Only one failure – It said that it could not find the hosts file… so I recreated the hosts file and reran the upgrade. No problems this time. Once I’d finished however, I noticed that there were a lot of errors coming up in the event log:&lt;/p&gt;  &lt;hr /&gt;  &lt;p&gt;Application Server Administration job failed for service instance Microsoft.Office.Server.Search.Administration.SearchServiceInstance (...).&lt;/p&gt;  &lt;p&gt;Reason: Could not find file 'C:\Windows\system32\drivers\etc\HOSTS'. &lt;/p&gt;  &lt;p&gt;Techinal Support Details:    &lt;br /&gt;System.IO.FileNotFoundException: Could not find file 'C:\Windows\system32\drivers\etc\HOSTS'.     &lt;br /&gt;File name: 'C:\Windows\system32\drivers\etc\HOSTS'     &lt;br /&gt;&amp;#160;&amp;#160; at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)     &lt;br /&gt;&amp;#160;&amp;#160; at System.IO.FileStream.Init(...)     &lt;br /&gt;&amp;#160;&amp;#160; at System.IO.FileStream..ctor(...)     &lt;br /&gt;&amp;#160;&amp;#160; at System.IO.StreamReader..ctor(...)     &lt;br /&gt;&amp;#160;&amp;#160; at System.IO.FileInfo.OpenText()     &lt;br /&gt;&amp;#160;&amp;#160; at Microsoft.Search.Administration.Security.HOSTSFile.ParseHOSTSFile(...)     &lt;br /&gt;&amp;#160;&amp;#160; at Microsoft.Search.Administration.Security.HOSTSFile.ConfigureDedicatedGathering(...)     &lt;br /&gt;&amp;#160;&amp;#160; at Microsoft.Office.Server.Search.Administration.SearchServiceInstance.SynchronizeDefaultContentSource&lt;/p&gt;  &lt;hr /&gt;  &lt;p&gt;The hosts file had disappeared again. Damn. Recreated it, but in about a minute it went again and these errors started up again. After a quick search, I uncovered this gem of an article which described the issue perfectly. It looks like the testing done for this feature was somewhat flawed. &lt;/p&gt;  &lt;p&gt;The solution is to grant permissions to the folder that the hosts file resides in – once the hosts file is deleted, then the service can recreate the hosts file the way its creator intended.&lt;/p&gt;  &lt;p&gt;Original article was here - &lt;a title="http://blogs.msdn.com/jjameson/archive/2007/05/05/the-case-of-the-disappearing-hosts-file.aspx" href="http://blogs.msdn.com/jjameson/archive/2007/05/05/the-case-of-the-disappearing-hosts-file.aspx"&gt;http://blogs.msdn.com/jjameson/archive/2007/05/05/the-case-of-the-disappearing-hosts-file.aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Brad&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-2717941926051007194?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/2717941926051007194/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=2717941926051007194' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/2717941926051007194'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/2717941926051007194'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2009/02/hosts-file-here-today-gone-today_24.html' title='The Hosts file – here today, gone today!'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-8408263309141219584</id><published>2009-02-19T18:33:00.001+11:00</published><updated>2009-02-19T18:33:31.271+11:00</updated><title type='text'>Had an interesting discussion after the last SharePoint User Group</title><content type='html'>&lt;p&gt;I really enjoyed myself at the last user group. I was all prepared to snore my way through it, but found that I was actually very interested. &lt;/p&gt;  &lt;p&gt;The usergroup was about Accessibility – a pretty lonely topic, less popular even than Governance. However, the presenter was a hearing-impaired, blind person who gave a very interesting speech. I was delighted because I wasn’t being forced to hear about another vendor product they say is for everyone and I think has an extremely limited scope… and because the presentation was interesting.&lt;/p&gt;  &lt;p&gt;But the most enjoyable part was once the presenter had finished – we started chatting amongst ourselves (there was about 20 people) about what the answer was. How do we make our systems more accessible? What technologies are out there today? Where do we need to be? What are the benefits? Downsides? There were several opinions – Most stemmed from personal experience. From a practical point of view, there were only really 3 things that could be improved - they were:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;The tools that visually impaired people use to interact with computer systems needs to be made better &lt;/li&gt;    &lt;li&gt;The languages that we use to create and “describe” the user interfaces needs to be made better &lt;/li&gt;    &lt;li&gt;The tools that developers use to build the UI need to be made better &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;The problem with 1 &amp;amp; 3 is cost and motivation. 2 has already been solved – by using XML, people can create dynamic sites that are engaging and accessible. So what’s stopping a proliferation of web sites running XML with an XSL presentation layer? In the past it was bandwidth. XML is a heavy language – there’s no denying it… but these days bandwidth’s cheap and available to most… so it’s not so much of an issue.&amp;#160; &lt;br /&gt;The tools we have today do not really facilitate using this type of language or developing in this way (that’s 3). Because visually impaired people are a minority, it’s difficult to get the type of private equity money invested into 1 – and if you do, the market is small and people with accessibility issues are generally at the lower end of the socioeconomic scale, making the potential market even smaller.&lt;/p&gt;  &lt;p&gt;The solution seems to be clear – make better developer tools – but an improvement in tools by vendors for something that is not being demanded or mandated is a tough ask (Vendors are looking for the “point of difference” in their product, not the same thing but in a different backend language). In the past, there has been considerable effort put into accessibility when governments started saying things like “We’ll only buy software that meets the following accessibility standards” – in fact, the only reason Windows has them is because governments were about to refuse to buy their OS as it didn’t have it “baked in”. So…&lt;/p&gt;  &lt;p&gt;Maybe what we need is some way for governments to say that they’ll only buy development tools that allow them to build web sites that meet accessibility standards with the same speed that they can build non-accessible sites. Hmmm… that’s a bit hard to quantify or measure. What about “We’ll only buy development tools that give developers the choice of creating the presentation layer of their solutions in either native code or a combination of XML+XSL”. That’s better – at least we can measure that. &lt;/p&gt;  &lt;p&gt;OK… That takes care of the guts of a web page, but how about the slick UI? What about Silverlight? Well… Silverlight uses XML to represent its functionality. It has limitations, but it’s getting there. What about InfoPath? InfoPath forms are ALL XML, with an XSL skin on them that gives them a rich UI experience in Forms Server. So you can see that we’re close. I mean, we have a language that is regarded as “Self-Describing” – that’s XML. We have tools that can have their toolset extended – in VS2008 you can implement your own intellisense for any language you can dream up. People have implemented CAML intellisense for VS2008. In a corporate environment where the devs are using this particular tool, you could conceivably build a corporate standard for XML and an XSL that maps to the corporate tags. XMLSpy has excellent capabilities, but the learning curve is steep.&lt;/p&gt;  &lt;p&gt;So we’re close… we have the capacity to enhance our current tools to meet the need for people with visual impairments. The population is aging, which will only increase the demand for these types of features. We have the language, and the overhead of running a UI layer through XML &amp;amp; XSL is being countered by the increase of available bandwidth to Joe user (even here in Australia, where ADSL1 is still kinda cool). Does anyone else have an opinion on this? Is there a better way to do it? I’m not on a personal crusade here, I don’t know anyone who’s blind, but it seems a bit silly that we’re 90% there and everyone’s looking at everyone else and say “you go first” “no you go first” “no, I insist, after you” etc.&lt;/p&gt;  &lt;p&gt;Anyway, just thought I’d get this down to see if there is a better approach. BTW – SharePoint has an “Accessibility” setting that can be turned on and off. Turning it on reduces some of the slick functionality in the UI but it makes it easier for screen readers to interpret what’s going on and let the users know. &lt;/p&gt;  &lt;p&gt;Lastly, if you are determined to build an accessible site or app the only true test of whether a user interface / web page is accessible is to get a blind person to try it for you. It’s easy to make something that is accessible, but a lot harder to retrofit it.&lt;/p&gt;  &lt;p&gt;Just my thoughts…&lt;/p&gt;  &lt;p&gt;Brad&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-8408263309141219584?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/8408263309141219584/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=8408263309141219584' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/8408263309141219584'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/8408263309141219584'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2009/02/had-interesting-discussion-after-last.html' title='Had an interesting discussion after the last SharePoint User Group'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-6811316088814844290</id><published>2009-01-28T17:48:00.001+11:00</published><updated>2009-01-28T17:48:38.334+11:00</updated><title type='text'>Useful "How To" guides for setting up Mail-enabled Systems</title><content type='html'>&lt;p&gt;I was looking for the missing piece of a puzzle while setting up an email-enabled system at a client's site and came across these 2 great reference documents that guide you through the entire process. I'm linking to them from here so I can quickly find them again if I need to&lt;/p&gt;  &lt;p&gt;Combined Knowledge have these documents on their download page - &lt;/p&gt;  &lt;p&gt;How to configure Email-enabled lists in WSS 3 / MOSS 2007 using AD and Exchange 2003 can be found &lt;a href="http://www.combined-knowledge.com/Downloads/How to configure Email Enabled Lists in Moss2007 RTM using Exchange 2003.pdf" target="_blank"&gt;here&lt;/a&gt;, whereas the version that walks you through the Exchange 2007 minefield is &lt;a href="http://www.combined-knowledge.com/Downloads/How to configure Email Enabled Lists in Moss2007 RTM using Exchange 2007.pdf" target="_blank"&gt;here&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Community knowledge sharing at it's best, compliments of Combined Knowledge.&lt;/p&gt;  &lt;p&gt;There's also guidance on how to set it up if you do not have Exchange configured. &lt;a href="http://www.toddklindt.com/blog/Lists/Posts/Post.aspx?ID=31" target="_blank"&gt;Heady stuff from Todd Klindt&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Great articles and invaluable resources guys!&lt;/p&gt;  &lt;p&gt;Brad&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-6811316088814844290?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/6811316088814844290/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=6811316088814844290' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/6811316088814844290'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/6811316088814844290'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2009/01/useful-to-guides-for-setting-up-mail.html' title='Useful &amp;quot;How To&amp;quot; guides for setting up Mail-enabled Systems'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-3164014988236334100</id><published>2009-01-28T17:13:00.001+11:00</published><updated>2009-01-28T17:13:42.054+11:00</updated><title type='text'>Variables available in the "Current Item" are frustratingly incomplete</title><content type='html'>&lt;p&gt;[Rant Coming...]&lt;/p&gt;  &lt;p&gt;I wish I wish I WISH there was an easier way to do this... but every time I need to create a URL (link) to a list item, I have to build it manually in the Workflow. There are simply no properties available that you can just &amp;quot;use&amp;quot;.&lt;/p&gt;  &lt;p&gt;Here are all of the OTB properties, not including the columns (in my case, I had a &amp;quot;Title&amp;quot; column).&lt;/p&gt;  &lt;p&gt;Approval status - (0;#Approved)    &lt;br /&gt;Approver Comments - (?????)     &lt;br /&gt;Attachments - (False)     &lt;br /&gt;Content Type - (Item)     &lt;br /&gt;Content Type id - (0x01000A6DA9AE04C6EC49A86D68039C7C52E4)     &lt;br /&gt;Created - (28/01/2009 3:33:17 PM)     &lt;br /&gt;Created By - (DOMAIN_NAME\USER_ID)     &lt;br /&gt;Encoded absolute URL - (&lt;a href="http://yourdomain/bta/Lists/TestEmailCheck/2_.000"&gt;http://yourdomain/bta/Lists/TestEmailCheck/2_.000&lt;/a&gt;)&amp;#160; &lt;em&gt;I MEAN, COME ON! HOW USELESS IS THIS!!&lt;/em&gt;     &lt;br /&gt;File Name - (2_)     &lt;br /&gt;File type - (?????)     &lt;br /&gt;GUID - {10A35B6E-E36C-4BCA-B996-D21BF7F03BCF}()     &lt;br /&gt;HTML file type - (?????)     &lt;br /&gt;ID - (2)     &lt;br /&gt;Is Current Version - True()     &lt;br /&gt;Item type - (0)     &lt;br /&gt;Level - (1)     &lt;br /&gt;Modified - (28/01/2009 3:33:17 PM)     &lt;br /&gt;Modify by - (DOMAIN_NAME\USER_ID)     &lt;br /&gt;Name, for use in forms - (2_.000)     &lt;br /&gt;Order - (200)     &lt;br /&gt;Path - (bta/Lists/TestEmailCheck)     &lt;br /&gt;Server relative URL - (/bta/Lists/TestEmailCheck/2_.000)     &lt;br /&gt;Type, Icon linked to document - (?????)     &lt;br /&gt;UI version - (512)     &lt;br /&gt;URL Path (/bta/Lists/TestEmailCheck/2_.000)     &lt;br /&gt;Version - (1.0)&lt;/p&gt;  &lt;p&gt;So to build one, we have to use the following process:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://HardcodedURL/[Path]/DispForm.aspx?ID=[ID"&gt;http://HardcodedURL/[Path]/DispForm.aspx?ID=[ID&lt;/a&gt;] &lt;/p&gt;  &lt;p&gt;Hardcoded url makes AAM's useless (but then so does the Infrastructure Update, so who's counting). &lt;/p&gt;  &lt;p&gt;The hope is that dispform.aspx location or filename is never change, because the url breaks again. &lt;/p&gt;  &lt;p&gt;How hard would it be to have one of the URL fields actually contain a working URL that took you to the list item! Aaaargh!&lt;/p&gt;  &lt;p&gt;[Rant complete.]&lt;/p&gt;  &lt;p&gt;Brad&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;hr align="center" width="100%" size="2" /&gt;  &lt;p&gt;NOTICE    &lt;br /&gt;This email, including any attachments, is confidential and may be the subject of legal privilege or copyright - it is not intended that any associated rights be waived by delivery of this email to you. If you are not the intended recipient of this email please advise us by return email and delete both messages. You should not read, use, copy or disclose the contents of this email or its attachments without authorisation. It is your responsibility to check attachments for viruses and defects prior to opening. This notice should not be removed.&lt;/p&gt;  &lt;hr align="center" width="100%" size="1" /&gt;  &lt;p&gt;Message protected by MailGuard: e-mail anti-virus, anti-spam and content filtering.    &lt;br /&gt;&lt;a href="http://www.mailguard.com.au"&gt;http://www.mailguard.com.au&lt;/a&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-3164014988236334100?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/3164014988236334100/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=3164014988236334100' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/3164014988236334100'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/3164014988236334100'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2009/01/variables-available-in-item-are.html' title='Variables available in the &amp;quot;Current Item&amp;quot; are frustratingly incomplete'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-7058160734648424192</id><published>2009-01-28T10:50:00.001+11:00</published><updated>2009-01-28T10:50:27.805+11:00</updated><title type='text'>Timer Job shocker (yes' it's still out there)</title><content type='html'>&lt;p&gt;Was at a client's place today and saw this for the first time in ages - IIS would not start, error ID's 6398, 6482 and 7076 in the event log, emails not being sent, etc. &lt;/p&gt;  &lt;p&gt;&amp;quot;Wait just a doggone minute, here - I am certain this was fixed in WSS SP1&amp;quot; - but even though the client was running a more recent version of WSS &amp;amp; MOSS than SP1, the issue still existed - and the errors and symptoms were exactly the same.&lt;/p&gt;  &lt;p&gt;It turns out that there is another hotfix now available for this - but it's not a part of SharePoint code, so it's a separate one that needs to be applied if you are seeing any of these issues (in other words, it's unlikely to be a part of WSS / MOSS SP2 due out in a couple of months). &lt;/p&gt;  &lt;p&gt;Hotfix can be requested here - &lt;a title="http://support.microsoft.com/kb/946517/en-us" href="http://support.microsoft.com/kb/946517/en-us"&gt;http://support.microsoft.com/kb/946517/en-us&lt;/a&gt; - Articles discussing the fact that the issue still exists can be found &lt;a href="http://www.sharepointblogs.com/share-a-pint/archive/2008/01/18/finally-a-hotfix-for-the-event-id-7076-6398-and-6432-recurring-errors.aspx" target="_blank"&gt;here&lt;/a&gt; and &lt;a href="http://social.technet.microsoft.com/forums/en-US/sharepointadmin/thread/2e1f4045-2a30-4975-b809-4cc9bc935e20/#page:2" target="_blank"&gt;here&lt;/a&gt;... It only seems to occur in IIS 6, and is more likely to occur when you have more app pools running under the same account as the Timer service. &lt;/p&gt;  &lt;p&gt;Now where's the Change Request form... &lt;/p&gt;  &lt;p&gt;Good luck :)&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-7058160734648424192?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/7058160734648424192/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=7058160734648424192' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/7058160734648424192'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/7058160734648424192'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2009/01/timer-job-shocker-yes-it-still-out.html' title='Timer Job shocker (yes&amp;#39; it&amp;#39;s still out there)'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-6507710246734438654</id><published>2009-01-26T12:14:00.001+11:00</published><updated>2009-01-26T12:14:35.605+11:00</updated><title type='text'>Colocating SharePoint databases on the same SQL Server as 3rd party apps</title><content type='html'>&lt;p&gt;I'm currently working my way through a deployment for a test environment on one of the projects we are currently engaged with (yes, I'm working on Australia Day - How un-Australian).&lt;/p&gt;  &lt;p&gt;Anyway, this particular 3rd party application has some specific requirements around collation settings which means it is impossible to create a SharePoint database on the same Database server instance. This error is thrown every time you attempt to create the database...&lt;/p&gt;  &lt;p&gt;An exception of type Microsoft.SharePoint.SPException was thrown.&amp;#160; Additional exception information: The specified SQL server instance has invalid sort order Latin1_General_BIN2.&amp;#160; Choose a server instance that performs case-insensitive and non-binary comparisons.&lt;/p&gt;  &lt;p&gt;So what's the solution? Pretty easy actually... just create a separate instance on the SQL Server and use the default sort order, then install SharePoint to that instance. &lt;/p&gt;  &lt;p&gt;Problem solved - back to the BBQ...&lt;/p&gt;  &lt;p&gt;Brad&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-6507710246734438654?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/6507710246734438654/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=6507710246734438654' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/6507710246734438654'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/6507710246734438654'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2009/01/colocating-sharepoint-databases-on-same.html' title='Colocating SharePoint databases on the same SQL Server as 3rd party apps'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-1911279423052827765</id><published>2009-01-20T09:57:00.001+11:00</published><updated>2009-01-20T09:57:36.820+11:00</updated><title type='text'>Unable to delete items from a list</title><content type='html'>&lt;p&gt;I was onsite at a client's site today and I created a couple of test entries in a list they had created, to test some workflow functionality. That was all well and good, until I went and tried to delete the dummy data.&lt;/p&gt;  &lt;p&gt;Survey Says: Access Denied!&lt;/p&gt;  &lt;p&gt;What the hell? It was getting close to the end of the day and after about 15 minutes I decided to put the issue aside and attack it the next morning with a fresh set of caffeine-enhanced eyes.&lt;/p&gt;  &lt;p&gt;Rock up the next morning, jump in the drivers seat and go...&lt;/p&gt;  &lt;p&gt;&amp;quot;Okay, so this is not standard OTB SharePoint functionality... Which means there's probably a feature somewhere that's trying to preserve data integrity... and it doesn't stop me from editing the item, just deleting it, so it's probably hooking into the ItemDeleting event or something...&amp;quot;&lt;/p&gt;  &lt;p&gt;One quick look at the Features folder later (ordered by last modified) and I notice that there are several features there... but the one I'm most interested in is the one called &amp;quot;ManageEventHandlers&amp;quot; - Oooooh, I wonder what this one does!&lt;/p&gt;  &lt;p&gt;In the feature.xml file you can normally find the description of what the feature does (which is easier than trying to find the feature and the site it's been deployed to using the UI), so I cracked it open and - Oh happy days - The author was proud enough of their work to put a reference in there to their own site - A big cheerio to Brian Wilson from MCS UK :)&lt;/p&gt;  &lt;p&gt;The feature is actually a good one to have, as it lets you hook events that occur in SharePoint up to DLL code you have written - and all using the UI... but the client did not know that they were using free open-source code on their site, so the person who initially set up the site clearly had not heeded the warnings in &lt;a href="http://blogs.msdn.com/brianwilson/archive/2008/07/13/web-parts-in-office-sharepoint-server-2007.aspx" target="_blank"&gt;this article&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;So this time the feature in question adds a link to the settings pages of lists and libraries, called Event Receivers - this lets you pick and event, then identify an assembly and method to use when that feature gets called. In my list, there was 2 methods connected to the &amp;quot;ItemDeleting&amp;quot; event - remove them, and everything comes good :)&lt;/p&gt;  &lt;p&gt;The feature can be &lt;a href="http://www.codeplex.com/SPSCustomAdmin/Release/ProjectReleases.aspx?ReleaseId=3024" target="_blank"&gt;downloaded here&lt;/a&gt;, and the &lt;a href="http://blogs.msdn.com/brianwilson" target="_blank"&gt;blog articles&lt;/a&gt; that talk through it are &lt;a href="http://blogs.msdn.com/brianwilson/archive/2007/03/05/part-1-event-handlers-everything-you-need-to-know-about-microsoft-office-sharepoint-portal-server-moss-event-handlers.aspx" target="_blank"&gt;here&lt;/a&gt;, &lt;a href="http://blogs.msdn.com/brianwilson/archive/2007/03/18/event-handlers-part-2-building-and-deploying-event-handlers-including-event-handler-starter-solution-kit.aspx" target="_blank"&gt;here&lt;/a&gt; and &lt;a href="http://blogs.msdn.com/brianwilson/archive/2007/03/18/event-handlers-part-3-register-event-handlers-plus-free-site-settings-manage-event-handlers-add-on.aspx" target="_blank"&gt;here&lt;/a&gt; (3 articles in total).&lt;/p&gt;  &lt;p&gt;Brad&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-1911279423052827765?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/1911279423052827765/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=1911279423052827765' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/1911279423052827765'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/1911279423052827765'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2009/01/unable-to-delete-items-from-list.html' title='Unable to delete items from a list'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-3239455231354260406</id><published>2009-01-19T00:04:00.001+11:00</published><updated>2009-01-19T00:04:56.481+11:00</updated><title type='text'>Explorer View doesn't work on a specific site...</title><content type='html'>&lt;p&gt;Had an issue last year at a client's site where a user noticed that they were unable to view a document library using &amp;quot;Explorer View&amp;quot;. They kept getting the IE window, but where the explorer view would normally be, there was just a 404 error message.&lt;/p&gt;  &lt;p&gt;Bit odd... so I checked around... Nothing wrong with her SOE... Site was trusted... She could access explorer view on other sites in the same farm, and even sibling sites... She wasn't &lt;a href="http://www.vistax64.com/vista-general/52258-re-cannot-access-explorer-view-sharepoint-doc-library.html#post777710"&gt;running&lt;/a&gt; &lt;a href="http://support.microsoft.com/kb/841215"&gt;vista&lt;/a&gt;... Hmmm...&lt;/p&gt;  &lt;p&gt;Turned out she suffered from an &amp;quot;I found it First&amp;quot; syndrome - everyone had the same problem... with that site and that one only. Well, that makes it a bit easier - gotta be on the server! Eventually we traced it back to a mis-configured managed path hierarchy. This particular client had set up the following managed paths:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://intranetsite/IT"&gt;http://intranetsite/IT&lt;/a&gt; as a Wildcard inclusion site, and     &lt;br /&gt;&lt;a href="http://intranetsite/IT/Department"&gt;http://intranetsite/IT/Department&lt;/a&gt; as another Wildcard Inclusion site.&lt;/p&gt;  &lt;p&gt;This plays havoc with SharePoint Designer because it can't resolve the webdav path properly... and I guess behind the scenes that's what the explorer view is doing as well. Anyway, replacing &lt;a href="http://intranetsite/IT/Department"&gt;http://intranetsite/IT/Department&lt;/a&gt; with an explicit inclusion and a placeholder web site did the trick.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-3239455231354260406?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/3239455231354260406/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=3239455231354260406' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/3239455231354260406'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/3239455231354260406'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2009/01/explorer-view-doesn-work-on-specific.html' title='Explorer View doesn&amp;#39;t work on a specific site...'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-7747641132269610205</id><published>2008-12-11T22:39:00.001+11:00</published><updated>2008-12-11T22:39:56.905+11:00</updated><title type='text'>SharePoint + Kerberos on Windows 2008 Server (IIS 7)</title><content type='html'>&lt;p&gt;We're currently building a client some integration components and one of the pieces of functionality we need to work with is Kerberos, &lt;a href="http://en.wikipedia.org/wiki/Cerberus" target="_blank"&gt;my favourite 3-headed dog&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Windows 2008 Server runs IIS 7, which has a great feature that (by default) means you don't have to set up SPN's for Kerberos-based sites - it uses Kernel-mode authentication (which means &amp;quot;things just work&amp;quot;). &lt;/p&gt;  &lt;p&gt;&lt;a href="http://en.wikipedia.org/wiki/Bad_News_Bears" target="_blank"&gt;Bad news bears&lt;/a&gt; for SharePoint though - because SharePoint runs as a &amp;quot;farm&amp;quot; - even in single-server configurations - you have to run the site and authentication under the app pool account... AND still set up your SPN's. Bugger, eh! So... how do you make it work?&lt;/p&gt;  &lt;p&gt;Go to the server on the site and change the following setting in the C:\Windows\System32\inetsrv\config\applicationHost.config file (which will affect all sites on the server) - &lt;/p&gt;  &lt;hr /&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&amp;lt;system.webServer&amp;gt;&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&amp;lt;security&amp;gt;&lt;/p&gt;    &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;authentication&amp;gt;&lt;/p&gt;    &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;windowsAuthentication enabled=&amp;quot;true&amp;quot; useKernelMode=&amp;quot;true&amp;quot; useAppPoolCredentials=&amp;quot;true&amp;quot; /&amp;gt;&lt;/p&gt;    &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;/authentication&amp;gt;&lt;/p&gt;    &lt;p&gt;&amp;lt;/security&amp;gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&amp;lt;/system.webServer&amp;gt;&lt;/p&gt;  &lt;hr /&gt;  &lt;p&gt;OR do it on the App pool under the Windows Authentication Advanced settings option&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;hr /&gt;&amp;#160; &lt;a href="http://lh5.ggpht.com/_jqzNMr6xgzY/SUD7_Dyc8hI/AAAAAAAAADo/f5OuZn5OA54/s1600-h/image%5B19%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="476" alt="image" src="http://lh4.ggpht.com/_jqzNMr6xgzY/SUD8BuYZ9nI/AAAAAAAAADs/sjGa6YFpbmQ/image_thumb%5B13%5D.png?imgmax=800" width="644" border="0" /&gt;&lt;/a&gt;   &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_jqzNMr6xgzY/SUD8CP7JecI/AAAAAAAAADw/g0f28yEt8A0/s1600-h/image%5B28%5D.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="309" alt="image" src="http://lh5.ggpht.com/_jqzNMr6xgzY/SUD8C63hFYI/AAAAAAAAAD0/t1RTv-CPU2o/image_thumb%5B18%5D.png?imgmax=800" width="460" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;I found the solution for the problem we were facing only blogged about in one location - &lt;a href="http://www.harbar.net/archive/2008/05/18/Using-Kerberos-with-SharePoint-on-Windows-Server-2008.aspx"&gt;www.Harbar.net&lt;/a&gt; (actually, I seem to keep hitting problems that this guy has already overcome, because I find myself regularly drawn to his site from Google).&lt;/p&gt;  &lt;p&gt;Cheers!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-7747641132269610205?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/7747641132269610205/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=7747641132269610205' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/7747641132269610205'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/7747641132269610205'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2008/12/sharepoint-kerberos-on-windows-2008.html' title='SharePoint + Kerberos on Windows 2008 Server (IIS 7)'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_jqzNMr6xgzY/SUD8BuYZ9nI/AAAAAAAAADs/sjGa6YFpbmQ/s72-c/image_thumb%5B13%5D.png?imgmax=800' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-632916346842288293</id><published>2008-12-11T21:29:00.001+11:00</published><updated>2008-12-11T21:30:47.603+11:00</updated><title type='text'>Non-standard port numbers hotfix for Kerberos</title><content type='html'>&lt;p&gt;In September 2007 I implemented a 4-layer Kerberos solution at a client's site. Back then, there was only a couple of people who'd done it and there was not much information around on it (and it nearly killed me... well, it wasn't that bad, but it was pretty stressful). Since then, lots of people have started to implement Kerberos authentication-based sites and it's become a bit more mainstream. Certainly I look around and there's lots of people with info.&lt;/p&gt;  &lt;p&gt;One of the things I noticed while troubleshooting was that when you browsed sites the ticket that was generated never appended the port number when attempting to authenticate. Well apparently this was a &amp;quot;feature&amp;quot; of IE6 when used on XP or 2003 server which has finally been fixed (I imagine it works as expected in IE7, etc). You can download the patch for 2003 server or XP from this &lt;a href="http://support.microsoft.com/kb/908209" target="_blank"&gt;KB Article 908209&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Just a warning: If you have SPN's set up to not use the port number and this patch is applied to a client, YOUR SITES WILL STOP USING KERBEROS TO AUTHENTICATE. For example:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;You have a site &lt;a href="http://mybeautiful.site.liveshere:8000"&gt;http://mybeautiful.site.liveshere:8000&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;You have an SPN set up for the service account on this site eg setspn -a http/mybeautiful.site.liveshere serviceAccount &lt;/li&gt;    &lt;li&gt;Everything works fine and dandy because IE 6 builds a poor Kerberos request without the port number. &lt;/li&gt;    &lt;li&gt;You apply the patch &amp;amp; reg key. Suddenly, everyone starts getting the &amp;quot;3 prompts and you're out&amp;quot; authentication request, because now the port number forms part of the request. &lt;/li&gt;    &lt;li&gt;Whoopsie! The fix is to register another 2 SPN's for the site that uses a port number, against the Web App pool account (2 spn's - one DNS prefix and one FQDN - in our example, one for http/mybeautiful:8000 and one for http/mybeautiful.site.liveshere:8000) &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Anyway, hope this helps!&lt;/p&gt;  &lt;p&gt;Brad&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-632916346842288293?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/632916346842288293/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=632916346842288293' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/632916346842288293'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/632916346842288293'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2008/12/non-standard-port-numbers-hotfix-for.html' title='Non-standard port numbers hotfix for Kerberos'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-1294306816104631006</id><published>2008-12-11T18:00:00.001+11:00</published><updated>2008-12-11T18:00:33.220+11:00</updated><title type='text'>I keep having to look for this tool and it's getting harder to find in the file jungle of Microsoft</title><content type='html'>&lt;p&gt;Microsoft released a tool called the Win XP Virtual CD Control Panel. It's cool because it DOES NOT NEED A REBOOT AND HAS NO SPYWARE AND DOES NOT &amp;quot;PHONE HOME&amp;quot; - and it's 60kb. Ideal for prod servers :).&lt;/p&gt;  &lt;p&gt;When was the last time you got a useful tool that was smaller than Notepad (at 166kb, it's a bit big, eh!)&lt;/p&gt;  &lt;p&gt;Anyway, pull it down here.&lt;/p&gt;  &lt;p&gt;&lt;a title="Virtual CD-ROM Control Panel for Windows XP" href="http://download.microsoft.com/download/7/b/6/7b6abd84-7841-4978-96f5-bd58df02efa2/winxpvirtualcdcontrolpanel_21.exe"&gt;Virtual CD-ROM Control Panel for Windows XP&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;32 bit only, sorry. Still, everyone's got one of those kicking around somewhere :)&lt;/p&gt;  &lt;p&gt;Brad&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-1294306816104631006?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/1294306816104631006/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=1294306816104631006' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/1294306816104631006'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/1294306816104631006'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2008/12/i-keep-having-to-look-for-this-tool-and.html' title='I keep having to look for this tool and it&amp;#39;s getting harder to find in the file jungle of Microsoft'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-9219475146862688288</id><published>2008-12-07T22:13:00.001+11:00</published><updated>2008-12-07T22:13:43.753+11:00</updated><title type='text'>Time to upgrade or lose support - WSS 3 &amp; MOSS 2007 RTM...</title><content type='html'>&lt;p&gt;Now's the time to plan your upgrade of SharePoint to Service Pack 1 if you have not already done so. I know I know, there are a lot of people stuck in a change freeze this time of year, so if this is you, then plan to do it as soon as the change freeze ends because on the &lt;strong&gt;13th of JANUARY 2009 your SharePoint 2007 system will no longer be supported by Microsoft&lt;/strong&gt;.&lt;/p&gt;  &lt;p&gt;More information can be found here - &lt;a title="lifesupsps#Office" href="http://support.microsoft.com/gp/lifesupsps#Office" target="_blank"&gt;Lifecycle Supported Service Packs&lt;/a&gt; - info came from &lt;a href="http://blogs.technet.com/stefan_gossner/default.aspx"&gt;Stefan Go&amp;#223;ner&lt;/a&gt;'s blog.&lt;/p&gt;  &lt;p&gt;Also SharePoint 2007 SP 2 is currently in Beta and will be coming soon to a Microsoft site near you (official word is between February and April - I'm betting February) :) - once it hits, the 12-month EOL clock starts for SP1.&lt;/p&gt;  &lt;p&gt;Brad&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-9219475146862688288?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/9219475146862688288/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=9219475146862688288' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/9219475146862688288'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/9219475146862688288'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2008/12/time-to-upgrade-or-lose-support-wss-3.html' title='Time to upgrade or lose support - WSS 3 &amp;amp; MOSS 2007 RTM...'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-5320486862941918803</id><published>2008-12-07T20:58:00.001+11:00</published><updated>2008-12-07T20:58:15.050+11:00</updated><title type='text'>Sometimes it pays to "kick it old-skool" - Converting Dynamic disks back to basic disks</title><content type='html'>&lt;p&gt;My wife was constantly having problems running out of space on her C drive. Back when the computer was first built, I'm pretty sure Windows 95 was just vapourware and nobody would ever need more than 640k to run an OS... well, it's not that bad... it's running the last of the single-core Athlons and a gig of DDR RAM...&lt;/p&gt;  &lt;p&gt;Anyway, I always used to think that the latest was ALWAYS the greatest... and sometimes I was right, sometimes I was wrong. I'd gone and converted my wife's C drive to a dynamic disk (because I could then create JBOD arrays, raid 1 disks, extend into free space etc).&lt;/p&gt;  &lt;p&gt;Problem with boot disks that are configured as basic, when you upgrade them you can't manage the space allocated to each drive. But you can't build a disk in Dynamic format in XP from the install CD either... so this problem exists for every XP owner who has more than one partition on their boot drive. There are heaps of tools out there that allow you to mess around with partitions (Partition Magic is my favourite) but none of them work with Dynamic disks. &lt;/p&gt;  &lt;p&gt;So what can you do? &lt;a href="http://support.microsoft.com/kb/309044" target="_blank"&gt;Format &amp;amp; Reload&lt;/a&gt;? Hell no! I've got better things to do, like watching the grass grow out the back of the house. Well it seems that &lt;a href="http://support.microsoft.com/kb/913964" target="_blank"&gt;Live OneCare doesn't work nicely with Dynamic disks either&lt;/a&gt;... so much so that Microsoft have documented the way to convert a dynamic disk back to a basic disk in a non-data destructive way. This is what's in the article:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Download and install the Windows Support Tools for Microsoft Windows XP. To do this, visit the following Web site:      &lt;br /&gt;      &lt;br /&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=49AE8576-9BB9-4126-9761-BA8011FABF38&amp;amp;displaylang=en"&gt;http://www.microsoft.com/downloads/details.aspx?FamilyId=49AE8576-9BB9-4126-9761-BA8011FABF38&amp;amp;displaylang=en&lt;/a&gt;       &lt;br /&gt;&lt;b&gt;       &lt;br /&gt;Note&lt;/b&gt; When you install these tools, click &lt;strong&gt;Complete&lt;/strong&gt; when you are prompted to click &lt;strong&gt;Typical&lt;/strong&gt; or &lt;strong&gt;Complete&lt;/strong&gt;. &lt;/li&gt;    &lt;li&gt;Click &lt;strong&gt;Start&lt;/strong&gt;, click &lt;strong&gt;Run&lt;/strong&gt;, type Dskprobe.exe, and then click &lt;strong&gt;OK.&lt;/strong&gt; &lt;/li&gt;    &lt;li&gt;On the &lt;strong&gt;Drives&lt;/strong&gt; menu, click &lt;strong&gt;Physical Drive&lt;/strong&gt;. &lt;/li&gt;    &lt;li&gt;In the &lt;strong&gt;Available Physical Drives&lt;/strong&gt; box, double-click the drive you want to change. &lt;/li&gt;    &lt;li&gt;Click &lt;strong&gt;Set Active&lt;/strong&gt;, and then click &lt;strong&gt;OK&lt;/strong&gt;. &lt;/li&gt;    &lt;li&gt;On the &lt;strong&gt;Sectors&lt;/strong&gt; menu, click &lt;strong&gt;Read&lt;/strong&gt;. &lt;/li&gt;    &lt;li&gt;Click &lt;strong&gt;Read&lt;/strong&gt; to accept the default settings. &lt;/li&gt;    &lt;li&gt;In the editor, find the 01C0 line. In this line, the third pair of numbers on the right is 42. Change 42 to 07.      &lt;br /&gt;&lt;b&gt;Note&lt;/b&gt; On some computers, 42 may appear on the 01D0 line.       &lt;br /&gt;[&lt;em&gt;Brad's Tip: It can appear on both as well - the trick is to convert all instances of 42 to 07 in this area. My wife has C and D drives - we had 42 appear on both 01C0 and 01D0&lt;/em&gt;] &lt;/li&gt;    &lt;li&gt;On the &lt;strong&gt;Sectors&lt;/strong&gt; menu, click &lt;strong&gt;Write&lt;/strong&gt;. &lt;/li&gt;    &lt;li&gt;When you receive a message that is similar to the following, click &lt;strong&gt;Yes&lt;/strong&gt;:       &lt;p&gt;The current handle is in Read Only mode. Do you wish to change the current mode to allow writing the selected buffer to disk?        &lt;br /&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Click &lt;strong&gt;Write it&lt;/strong&gt;. &lt;/li&gt;    &lt;li&gt;When you receive a message that is similar to the following, click &lt;strong&gt;Yes&lt;/strong&gt;:       &lt;p&gt;Are you sure you want to permanently overwrite the data in sector 0 on the device PhysicalDrive 0        &lt;br /&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Exit the Disk Prob program, and then restart the computer. &lt;/li&gt;    &lt;li&gt;After the computer restarts, click &lt;strong&gt;Start&lt;/strong&gt;, click &lt;strong&gt;Run&lt;/strong&gt;, type cmd, and then click &lt;strong&gt;OK&lt;/strong&gt;. &lt;/li&gt;    &lt;li&gt;On the command line, type chkdsk to scan for errors. &lt;/li&gt;    &lt;li&gt;If any errors are found, type chkdsk /f on the command line to fix these errors. &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;Problem Sorted.&lt;/p&gt;  &lt;p&gt;Brad&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-5320486862941918803?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/5320486862941918803/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=5320486862941918803' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/5320486862941918803'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/5320486862941918803'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2008/12/sometimes-it-pays-to-it-old-skool.html' title='Sometimes it pays to &amp;quot;kick it old-skool&amp;quot; - Converting Dynamic disks back to basic disks'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-5867724567479802658</id><published>2008-12-04T05:51:00.001+11:00</published><updated>2008-12-04T05:51:17.466+11:00</updated><title type='text'>Not unless you're a SysAdmin buddy!</title><content type='html'>&lt;p&gt;Had a very unusual issue recently on a hardened SharePoint environment (read: set up according to Microsoft Best Practices).&lt;/p&gt;  &lt;p&gt;I was trying to install a feature, and I was getting a response back... Access Denied. Nothing really unusual in that... I must have forgotten to set myself up as a farm admin again... except in this case I was already a farm administrator. So... what could be causing that problem?&lt;/p&gt;  &lt;p&gt;It turns out that Microsoft decided that in order to install a feature, being a Farm Administrator is simply not enough - you have to be a SysAdmin on the SQL Database as well. Huh? Where'd the &amp;quot;Least Privilege, best-practice&amp;quot; thinking go when they set up that trap?&lt;/p&gt;  &lt;p&gt;So I log into the SQL database and add myself in as a SysAdmin, and tada! I'm able to successfully deploy the feature. I honestly would have thought that the application would have verified your credentials, then once confirming you are a farm administrator, run the feature installation under the SharePoint admin account (which has all the required DB Access). But Nooooooo, not this time!&lt;/p&gt;  &lt;p&gt;If anyone knows why this might be the case, I'm interested to hear from you. To me, it makes no sense and works against least privilege configuration.&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;Brad&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-5867724567479802658?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/5867724567479802658/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=5867724567479802658' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/5867724567479802658'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/5867724567479802658'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2008/12/not-unless-you-sysadmin-buddy_04.html' title='Not unless you&amp;#39;re a SysAdmin buddy!'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-2332209459082262374</id><published>2008-12-02T10:45:00.003+11:00</published><updated>2008-12-02T10:45:59.923+11:00</updated><title type='text'>wmpnetwk.exe running at maximum CPU...</title><content type='html'>&lt;p&gt;When I realised I could put my wife's computer to good use and stop her nagging me about how the videos on the Media Centre were not appearing, I thought all of my christmases had come at once. So I kicked off the indexing of the file shares 3 nights ago, and ahhhh.... blissful silence for a day... then&lt;/p&gt;  &lt;p&gt;&amp;quot;Hey Brad, have you done anything to my computer?&amp;quot;&lt;/p&gt;  &lt;p&gt;&amp;quot;Yep, It's serving media up to the Media Centre in the lounge room.&amp;quot;&lt;/p&gt;  &lt;p&gt;&amp;quot;Well... I don't know what that means, but it's been running really slow for a day now. Can you have a look at it?&amp;quot;&lt;/p&gt;  &lt;p&gt;*sigh...* &amp;quot;OK&amp;quot;&lt;/p&gt;  &lt;p&gt;Sure enough, there's a process running on it called wmpnetwk.exe that's using all the available juice. &lt;a href="http://www.eggheadcafe.com/software/aspnet/32790306/wmpnetwkexe-cpu-usage.aspx" target="_blank"&gt;There's plenty&lt;/a&gt; &lt;a href="http://www.avforums.com/forums/desktops-servers/833917-cpu-maxing-out.html" target="_blank"&gt;of information&lt;/a&gt; &lt;a href="http://forums.cnet.com/5208-6142_102-0.html?forumID=5&amp;amp;threadID=226185&amp;amp;messageID=2361900" target="_blank"&gt;around about&lt;/a&gt; &lt;a href="http://www.geekstogo.com/forum/windows-media-player-11-wmpnetwk-exe-SOLVED-t211876.html" target="_blank"&gt;the root cause&lt;/a&gt; (&lt;a href="http://club.cdfreaks.com/f3/explorer-exe-causes-100-cpu-usage-74137/" target="_blank"&gt;corrupt media files&lt;/a&gt;) and some solutions (uninstall - actually I was hoping for a real solution).&lt;/p&gt;  &lt;p&gt;As most of the people creating the links above will testify, it ends up that WMP is trying to index a corrupt AVI file. but how do you find it? You could use the SYSInternals tools, but there's an easier way... &lt;/p&gt;  &lt;p&gt;Clear the index from the WMP having problems (It's done here - C:\Documents and Settings\&amp;lt;Your login name&amp;gt;\Application Data\Microsoft\Media Index - If you are running vista, then it's C:\Users\&amp;lt;your login name&amp;gt;\AppData\Local\Microsoft), kick off a new index, and see where it stops. The system indexes alphabetically by folder, so if you add the path to the column headings in the video library and order by the path, you'll see the last file successfully indexed. the one after that has a problem. Run it for yourself and see... in my case, I had a 700MB video file that lasted for 35 seconds.&lt;/p&gt;  &lt;p&gt;Killed the WMPlayer and WMPnetwk processes, Deleted the corrupt videos, reindexed, done.&lt;/p&gt;  &lt;p&gt;Brad&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-2332209459082262374?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/2332209459082262374/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=2332209459082262374' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/2332209459082262374'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/2332209459082262374'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2008/12/wmpnetwkexe-running-at-maximum-cpu.html' title='wmpnetwk.exe running at maximum CPU...'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-3016368046202380809</id><published>2008-12-02T10:45:00.001+11:00</published><updated>2008-12-02T10:45:08.388+11:00</updated><title type='text'>Indexing Network Shares thru Media Centre (or for Americans, Center)</title><content type='html'>&lt;p&gt;Had some interesting challenges with Media Centre. Most of which I have not blogged about as I've normally found the answer on &lt;a href="http://thegreenbutton.com" target="_blank"&gt;The Green Button&lt;/a&gt; or &lt;a href="http://www.xpmediacentre.com.au" target="_blank"&gt;XP Media Centre&lt;/a&gt;, but this one I thought I might, as I think others might be in the same boat and I don't think the solution has been found yet.&lt;/p&gt;  &lt;p&gt;Have you ever tried to share media from your Windows Server to your Media Centre? You can't. Server 2003 or 2008 - neither of them work natively. First a quick rundown on my setup:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Windows Vista Ultimate, running Media Centre in the lounge room &lt;/li&gt;    &lt;li&gt;Windows 2008 Server, storing the media files (My Computer) &lt;/li&gt;    &lt;li&gt;Windows XP (My Wife's computer) &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;I'm using TVersity to share my media from my 2008 Server to my xBox 360. I can't use TVersity to stream media to the Media Centre in the lounge room, because I need to have Vista Media Centre running on both the source and target to do so (There's no MCE 2008 Server). I have looked for a hack or a workaround, tried to copy, deploy and start the required services from a Vista machine to the server, nothing. I have looked at security and reduced it so much that blind freddy could access them as long as he was jacked into the network.&lt;/p&gt;  &lt;p&gt;The Solution? Index the files in the library of my wife's XP computer, running Media Player 11. Don't ask me why it works. It seems that not only does MC need access to the files, it also needs to have them indexed and shared as part of WMP 11 - even if they are not on the same computer, it works.&lt;/p&gt;  &lt;p&gt;Of course, then I hit another problem... but that's the next blog entry... :)&lt;/p&gt;  &lt;p&gt;Brad&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-3016368046202380809?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/3016368046202380809/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=3016368046202380809' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/3016368046202380809'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/3016368046202380809'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2008/12/indexing-network-shares-thru-media.html' title='Indexing Network Shares thru Media Centre (or for Americans, Center)'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-4915886339943660021</id><published>2008-12-02T10:41:00.001+11:00</published><updated>2008-12-02T10:41:49.548+11:00</updated><title type='text'>Tagged Links - like a "blog this" that auto-loads into SharePoint lists</title><content type='html'>&lt;p&gt;It took me a little while to understand what this plug-in was trying to do and how it was adding value, and then it dawned on me - it's like a &amp;quot;Blog this&amp;quot; button on your browser! I love the ability to just click on a browser button and have a Windows Live Writer window open up pre-populated with the page name and a link. It's awesome! That's how I created this blog article...&lt;/p&gt;  &lt;p&gt;So this SharePoint feature installs on the server and gets called from a link in your links list. It then retrieves information about the last page you visited in that window (from your referer browser property) and pre-populates some fields in the list. You can then &amp;quot;tag&amp;quot; the link with topics, like &amp;quot;SharePoint&amp;quot; or &amp;quot;Shopping&amp;quot; or &amp;quot;Christmas&amp;quot; or &amp;quot;Maxed Out Credit Card&amp;quot;... or whatever other topics you think are relevant.&lt;/p&gt;  &lt;p&gt;It's quick, it's easy, and it's a great way of having a range of link lists that are then searchable by others. Like blogging about an article you just saw that may be useful in the future, but you are not sure when... or a list of personal bookmarks.&lt;/p&gt;  &lt;p&gt;I'm always on the lookout for ways to get information into WSS / MOSS without effort - the more information you have, the easier it is to make informed decisions. This looks to be a great one! Grab it here - &lt;a title="http://community.zevenseas.com/Blogs/Daniel/archive/2008/11/22/free-solution-tagged-links-&amp;#8211;-social-bookmarking-for-sharepoint.aspx" href="http://community.zevenseas.com/Blogs/Daniel/archive/2008/11/22/free-solution-tagged-links-&amp;ndash;-social-bookmarking-for-sharepoint.aspx"&gt;http://community.zevenseas.com/Blogs/Daniel/archive/2008/11/22/free-solution-tagged-links-&amp;#8211;-social-bookmarking-for-sharepoint.aspx&lt;/a&gt; - and have a look at how it's used here - &lt;a title="http://community.zevenseas.com/blogs/daniel/archive/2008/07/19/tagged-links-%E2%80%93-walkthrough.aspx" href="http://community.zevenseas.com/blogs/daniel/archive/2008/07/19/tagged-links-%E2%80%93-walkthrough.aspx"&gt;http://community.zevenseas.com/blogs/daniel/archive/2008/07/19/tagged-links-%E2%80%93-walkthrough.aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Brad&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-4915886339943660021?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/4915886339943660021/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=4915886339943660021' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/4915886339943660021'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/4915886339943660021'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2008/12/tagged-links-like-this-that-auto-loads.html' title='Tagged Links - like a &amp;quot;blog this&amp;quot; that auto-loads into SharePoint lists'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-8848969856354993209</id><published>2008-10-24T03:44:00.001+11:00</published><updated>2008-10-24T03:44:33.124+11:00</updated><title type='text'>First time using SQL 2008? Midnight trap for young players... and me</title><content type='html'>&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;So I had a client coming over to do some integration work tomorrow (which is now later today) and I had to get SharePoint set up, pointing to their domain. Pfffft no problems, I'll do it just before I go to bed. That was about 6 hours ago now...&lt;/p&gt;  &lt;p&gt;I have a stab at the install... What's this? &lt;/p&gt;  &lt;p&gt;System.Security.Principal.IdentityNotMappedException&lt;/p&gt;  &lt;p&gt;Hmmm... Security. Okay, no problems. It's a VM, running on VMWare over Fedora. It's probably got a dodgy time on the DC. Sure enough, the time's out by about 20 hours. So I bring it back inline, run my script to tell it to get the time from the internet and have another crack.&lt;/p&gt;  &lt;p&gt;Same problem. Okay... what if I just use a local account to run the connection to the local database? That takes the DC out of the equation... but I know it'll bite me later on... oh never mind. &lt;/p&gt;  &lt;p&gt;Same problem. It's now well after midnight and my only friend is the quiet hum of the fridge compressor. Okay, what if it's something to do with the SQL settings? I'm running SQL 2008 Dev edition...&lt;/p&gt;  &lt;p&gt;Aha! Named Pipes and TCPIP are turned off. How is a web app going to communicate with a SQL server no matter where it is except over TCPIP? Sure enough, turning it on did the trick... and changed the error message :) But it's an easy one, and unrelated to this - so if you need the settings, they are here - &lt;/p&gt;  &lt;p&gt;Crack open SQL Server Configuration Manager and drill down to:&lt;/p&gt;  &lt;p&gt;SQL Server Network Configuration    &lt;br /&gt;L&amp;gt;Protocols for MSSQLSERVER&lt;/p&gt;  &lt;p&gt;On the right you will see the services, enable the ones you need. finally, go to the SQL Server Services Folder and restart the server service to have the changes take effect.&lt;/p&gt;  &lt;p&gt;Done!&lt;/p&gt;  &lt;p&gt;Brad&lt;/p&gt;  &lt;p&gt;PS - the error code snip's below to help Google index it and lead other people here looking for the light. This error doesn't appear much in the ones I saw...&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;10/24/2008 03:12:03&amp;#160; 8&amp;#160; INF&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Creating a new farm with config db SharePoint_Config content db SharePoint_AdminContent_f257f33b-5879-4676-bce4-e2b58416c2c6 server hv102 for farm mode    &lt;br /&gt;10/24/2008 03:12:17&amp;#160; 8&amp;#160; ERR&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Task configdb has failed with an unknown exception     &lt;br /&gt;10/24/2008 03:12:17&amp;#160; 8&amp;#160; ERR&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Exception: System.Security.Principal.IdentityNotMappedException: Some or all identity references could not be translated.     &lt;br /&gt;&amp;#160;&amp;#160; at System.Security.Principal.NTAccount.Translate(IdentityReferenceCollection sourceAccounts, Type targetType, Boolean forceSuccess)     &lt;br /&gt;&amp;#160;&amp;#160; at System.Security.Principal.NTAccount.Translate(Type targetType)     &lt;br /&gt;&amp;#160;&amp;#160; at Microsoft.SharePoint.Administration.SPProcessIdentity.GetCurrentSecurityIdentifier()     &lt;br /&gt;&amp;#160;&amp;#160; at Microsoft.SharePoint.Administration.SPProcessIdentity.GetCurrentSid()     &lt;br /&gt;&amp;#160;&amp;#160; at Microsoft.SharePoint.Administration.SPProcessIdentity.Update()     &lt;br /&gt;&amp;#160;&amp;#160; at Microsoft.SharePoint.Administration.SPApplicationPool.Update()     &lt;br /&gt;&amp;#160;&amp;#160; at Microsoft.SharePoint.Administration.SPWebApplication.CreateDefaultInstance(SPWebService service, Guid id, String applicationPoolId, IdentityType identityType, String applicationPoolUsername, SecureString applicationPoolPassword, String iisServerComment, Boolean secureSocketsLayer, String iisHostHeader, Int32 iisPort, Boolean iisAllowAnonymous, DirectoryInfo iisRootDirectory, Uri defaultZoneUri, Boolean iisEnsureNTLM, Boolean createDatabase, String databaseServer, String databaseName, String databaseUsername, String databasePassword, SPSearchServiceInstance searchServiceInstance, Boolean isPaired, Boolean autoActivateFeatures)     &lt;br /&gt;&amp;#160;&amp;#160; at Microsoft.SharePoint.Administration.SPAdministrationWebApplication.CreateDefaultInstance&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-8848969856354993209?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/8848969856354993209/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=8848969856354993209' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/8848969856354993209'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/8848969856354993209'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2008/10/first-time-using-sql-2008-midnight-trap.html' title='First time using SQL 2008? Midnight trap for young players... and me'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-1364147736272633846</id><published>2008-10-02T14:44:00.003+10:00</published><updated>2008-10-02T14:44:40.473+10:00</updated><title type='text'>The following URL is not valid... during a demo. Oh man...</title><content type='html'>&lt;p&gt;I was demoing SharePoint to one of our clients recently and banging on about how good the InfoPath forms were. I said - &amp;quot;It takes a couple of minutes to get a form from the InfoPath client to the MOSS web site. Watch this...&amp;quot;&lt;/p&gt;  &lt;p&gt;Up pops a dialog - The following URL is not valid: &lt;a href="http://myfabulousdemo/w00t"&gt;http://myfabulousdemo/w00t&lt;/a&gt; etc...&lt;/p&gt;  &lt;p&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="94" alt="infopath_invalid_url[1]" src="http://lh6.ggpht.com/specul8online/SORRt1r2SSI/AAAAAAAAADk/nYpnuDfqxj0/infopath_invalid_url14.jpg?imgmax=800" width="374" border="0" /&gt; &lt;/p&gt;  &lt;p&gt;Oh, ok - let me just confirm my Loopback adapter is running... yes... and that I have the site correct... yes... and that there's a root site (a site that can be referenced like this &lt;a href="http://myfabulousdemo"&gt;http://myfabulousdemo&lt;/a&gt;)... yes... hmmm...&lt;/p&gt;  &lt;p&gt;Well if I was able to show you how easy it was to publish an InfoPath form, then you would see a very similar interface to this one... and so on.&lt;/p&gt;  &lt;p&gt;It turns out that restarting the &amp;quot;System Event Notification&amp;quot; service (and as an added dependency bonus, the COM+ system Application service) makes it work. &lt;a href="http://edwin.vriethoff.net/2007/11/14/infopath-publishing-the-following-url-is-not-valid/" target="_blank"&gt;Thanks edwin&lt;/a&gt;!&lt;/p&gt;  &lt;p&gt;Cheers all!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-1364147736272633846?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/1364147736272633846/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=1364147736272633846' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/1364147736272633846'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/1364147736272633846'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2008/10/following-url-is-not-valid-during-demo.html' title='The following URL is not valid... during a demo. Oh man...'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/specul8online/SORRt1r2SSI/AAAAAAAAADk/nYpnuDfqxj0/s72-c/infopath_invalid_url14.jpg?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-5976268935662515332</id><published>2008-10-02T14:44:00.001+10:00</published><updated>2008-10-02T14:44:16.318+10:00</updated><title type='text'>Demos Happen {Here}</title><content type='html'>&lt;p&gt;As part of the &amp;quot;&lt;a href="http://www.microsoft.com/australia/heroes/default.aspx" target="_blank"&gt;Heroes Happen {Here}&lt;/a&gt;&amp;quot; promotion of the Microsoft 2008 Product releases (namely Windows 2008 Server, Visual Studio 2008 and SQL 2008), Microsoft Australia ran a promotion called &amp;quot;&lt;a href="http://www.microsoft.com/australia/heroes/community.aspx" target="_blank"&gt;Demos Happen {Here}&lt;/a&gt;&amp;quot;. &lt;a href="http://www.linkedin.com/in/rog42" target="_blank"&gt;Rog42&lt;/a&gt; (Roger Lawrence, Microsoft's Group Manager Evangelism for AU) was running the comp.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Motivation&lt;/strong&gt;:     &lt;br /&gt;I can't honestly see any benefit in my going to Tech-Ed, except I really enjoy going. From a company perspective the ROI is less than 0, as I'm out un-billable for 3 days, looking at cool tech stuff... and the ticket costs come out of my department's bottom line. When I found out that the prize for this comp was free tickets to tech-ed, I quickly had a look at the entrants on the website - I think about 3 weeks to go there were 4 entrants, including one from New South Wales (Cool, I sez to meself - I've got a 50% chance if I turn up at the gate, much like &lt;a href="http://www.foxsports.com.au/beijing_olympics/story/0,,24192615-5014107,00.html" target="_blank"&gt;these guys&lt;/a&gt;). So I whipped up a demo that discussed a strategy for moving from a physical SharePoint server with a Separate DB Server to a load-balanced SharePoint farm, using the original physical server as well as a virtual server... the goal being to get it done with no downtime... in under 2 hours.&lt;/p&gt;  &lt;p&gt;The toughest part was getting the demo to a point where I could show the salient bits within a 10-minute window (as it happened, I was a few seconds over on the night - one of the criteria was to be under 10 minutes and to discuss at least one of the new technologies... d'oh!). I eventually used TechSmith's Camtasia product, then sped up the boring bits (the Physical Server Backup and the restore took about an hour in total). By the time the demo closed, there were 12 or 13 entrants in NSW... and my odds had lengthened considerably. I also knew if &lt;a href="http://www.roodyn.com/" target="_blank"&gt;this guy showed&lt;/a&gt;, we'd all be column fodder :)&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;When you try and add a Virtual Machine to an NLB Cluster, it fails to converge:&lt;/strong&gt;     &lt;br /&gt;The reason for the blog entry is that while going to a Network Load-Balanced Web Front End, I had no end of trouble trying to get the Hyper-V Virtual Server to converge. I tried and tried and tried, but it just wouldn't stay happy. There's a hotfix available for this which include some manual steps - the good thing is that if you run into the same problem, the hotfix gets installed on the affected guest, and not on the host (so the affected environment is just the virtual server you are creating from the backup, and hell if installing hotfixes makes you wet your pants, snapshot it and move on). The hotfix is here - &lt;a title="http://support.microsoft.com/kb/953828" href="http://support.microsoft.com/kb/953828"&gt;http://support.microsoft.com/kb/953828&lt;/a&gt;. Worked a treat.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Now as for the comp itself&lt;/strong&gt;:     &lt;br /&gt;Great idea - very community-spirited. I think next year, the following enhancements to the process could make it even better:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Have a way of &amp;quot;Registering Intent To Enter&amp;quot; - use this to send out Terms and Conditions, judging criteria, disqualification rules to the participants. It won't get everyone on the same page, but I think some people could have modified their presentations slightly and done much better. &lt;/li&gt;    &lt;li&gt;Have a 1-minute warning or a big-ass countdown clock visible to the presenter. When you're up there, 10 minutes feels like 3 or 4. Knowing is more accurate than guessing. &lt;/li&gt;    &lt;li&gt;4 slices of pizza per attendee is a good estimate - but any pizza is better than no pizza, so the catering was appreciated :) &lt;/li&gt;    &lt;li&gt;For me, the idea was to try and win Tech-ed tickets and to get some practice presenting. A video of my presentation would have been awesome to get my hands on. So would have the tix, but there was only 1 prize per state. &lt;/li&gt;    &lt;li&gt;It would have been good to see how the non-winners rated - I feel I did ok, but I don't really know. &lt;a href="http://www.flickr.com/photos/rog42/2753810112/in/set-72157606671101849/" target="_blank"&gt;The winner was really slick.&lt;/a&gt; If (for example) I scored low on &amp;quot;storyline&amp;quot; then it would have given me something to go back and identify opportunities for improvement in other presentations I give. This feedback could be a personal report, rather than in front of everyone. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Cheers!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-5976268935662515332?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/5976268935662515332/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=5976268935662515332' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/5976268935662515332'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/5976268935662515332'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2008/10/demos-happen-here.html' title='Demos Happen {Here}'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-8471490065935901265</id><published>2008-10-02T14:43:00.003+10:00</published><updated>2008-10-02T14:43:56.381+10:00</updated><title type='text'>Blogging from the Australian Partner Conference</title><content type='html'>&lt;p&gt;Just arrived at the Australian partner conference, and work seems like it's a million miles away (well, for my family it does - I have a 20 minute walk ahead of me each day to get to and from the conference, then 15 hours per day making new connections and reaffirming old ones).&lt;/p&gt;  &lt;p&gt;At least I got a chance to dip in the pool before I started - now my family won't see me for the next 2 days - I'm sure they'll tell me how much fun they've been having on the flight back!&lt;/p&gt;  &lt;p&gt;Ah well... On with the show!&lt;/p&gt;  &lt;p&gt;B&lt;/p&gt;  &lt;p&gt;PS - A special shout-out to my homie, Yaohan... who made some choice references to me and &amp;quot;being away on a junket&amp;quot; :)&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-8471490065935901265?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/8471490065935901265/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=8471490065935901265' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/8471490065935901265'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/8471490065935901265'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2008/10/blogging-from-australian-partner.html' title='Blogging from the Australian Partner Conference'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-7961000320965448721</id><published>2008-10-02T14:43:00.001+10:00</published><updated>2008-10-02T14:43:34.997+10:00</updated><title type='text'>Botack's Blogging</title><content type='html'>&lt;div&gt;A good mate of mine, Yaohan has finally started to blog. As a consultant, every now and again I meet someone who is great at what they do and great to work with - Yaohan is both. His talent with Solution development using the Sharepoint API is amazing and he's a great guy to hang with.&lt;/div&gt;  &lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;div&gt;You can catch his ramblings here - &lt;a href="http://botack.spaces.live.com/blog/"&gt;http://botack.spaces.live.com/blog/&lt;/a&gt;&lt;/div&gt;  &lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;div&gt;Go dude!&lt;/div&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-7961000320965448721?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/7961000320965448721/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=7961000320965448721' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/7961000320965448721'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/7961000320965448721'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2008/10/botack-blogging.html' title='Botack&amp;#39;s Blogging'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-6185580305913495409</id><published>2008-10-02T14:42:00.003+10:00</published><updated>2008-10-02T14:42:51.370+10:00</updated><title type='text'>Terminal Services Client 6.0 - no more /console</title><content type='html'>&lt;p&gt;Have you been wondering why you can no longer remote desktop to the console session? Are you running Windows Vista SP1 or Windows 2008 Server? Or have you downloaded the Remote desktop client v6.0 update and installed it?&lt;/p&gt;  &lt;p&gt;Well, you are not alone, I have a couple of Virtual servers which I prefer to manage using Remote Desktop than the clunky app that comes with Hyper-V. Because the apps I run on them do not support multiple instances, they complain if there is more than one session logged into the server - solution is to use mstsc /console.at least it was in v5.2... they've changed the switch in v6 to be /Admin. &lt;/p&gt;  &lt;p&gt;Not sure why - the other switch worked, why couldn't they depreciate it instead? Both switches act the same way... so why change it? Is there a mandate coming down from Steve Ballmer that says everything associated with an elevated security level needs to have the word Admin in it?&lt;/p&gt;  &lt;p&gt;Ah well, now you know. Change your shortcut links from /console to /admin &amp;amp; you're good to go again.&lt;/p&gt;  &lt;p&gt;Brad&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-6185580305913495409?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/6185580305913495409/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=6185580305913495409' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/6185580305913495409'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/6185580305913495409'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2008/10/terminal-services-client-60-no-more.html' title='Terminal Services Client 6.0 - no more /console'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-4980995766857741820</id><published>2008-10-02T14:42:00.001+10:00</published><updated>2008-10-02T14:42:18.879+10:00</updated><title type='text'>Finally - a way to install WSS 3 onto Vista! WOOHOO!</title><content type='html'>&lt;p&gt;&lt;a href="http://community.bamboosolutions.com/" target="_blank"&gt;Bamboo Solutions&lt;/a&gt; have come up with a way of installing WSS 3 onto Windows Vista. Developers everywhere, rejoice! No longer do we have to run a separate VM / VPC with a server OS on it just to develop against WSS 3.&lt;/p&gt;  &lt;p&gt;They have all the information &lt;a href="http://community.bamboosolutions.com/blogs/bambooteamblog/archive/2008/05/21/how-to-install-windows-sharepoint-services-3-0-sp1-on-vista-x64-x86.aspx" target="_blank"&gt;here&lt;/a&gt; - hopefully Microsoft will not issue a takedown notice (which would be an incredible shame... I mean, it's an unsupported configuration... and it's a free download from the MS website... but a similar sort of thing's &lt;a href="http://www.testdriven.net/" target="_blank"&gt;happened&lt;/a&gt; &lt;a href="http://www.infoq.com/news/2007/06/TestDriven-Express-Emails" target="_blank"&gt;before&lt;/a&gt;). It looks like they &lt;a href="http://blogs.msdn.com/cjohnson/archive/2008/05/23/wssv3-on-vista.aspx" target="_blank"&gt;acknowledge its existence but refuse to have anything to do with it&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Thanks Bamboo Solutions! You guys have made my life easier...    &lt;br /&gt;Brad&lt;/p&gt; &lt;!-- &lt;hr&gt;  &lt;h6&gt;How to install Windows SharePoint Services 3.0 SP1 on Vista x64/x86&lt;/h6&gt; &lt;p&gt;If you are a developer for SharePoint your best friend has been Virtual PC or VMWare. It’s time to introduce a new friend, Bamboo Nation :) &lt;p&gt;We have put together an installer that allows you to install WSS3.0 SP1 on Vista, both x86 and x64.&amp;nbsp; This will allow you to develop on your workstation with all the power of a non virtualized environment. You still need VPC and VMWare for so don’t feel sorry. &lt;p&gt;There’s been much discussion about SharePoint being a "bad" &lt;a href="http://codebetter.com/blogs/jeffrey.palermo/archive/2007/09/13/sharepoint-is-not-a-good-development-platform.aspx"&gt;development platform&lt;/a&gt;. This will remove the objection that you NEED to develop on a Server OS.&amp;nbsp; I think we all as SharePoint developers have built our “virtualization skills” to a comfortable level now so it’s time to give us a break ;) &lt;p&gt;So please &lt;a href="http://community.bamboosolutions.com/media/p/193.aspx"&gt;download the setup helper&lt;/a&gt; and try it out. I really want to hear from you about problems you encountered so we can fix them.&amp;nbsp; Please leave your comments here or we &lt;a href="http://community.bamboosolutions.com/forums/104.aspx"&gt;can discuss in this forum&lt;/a&gt;. It would be nice to hear about successful installations too :) &lt;p&gt;Current limitations: &lt;ul&gt; &lt;li&gt; &lt;p&gt;You must select the Advanced option during install.&lt;/p&gt; &lt;li&gt; &lt;p&gt;If you want to run on SQLExpress, manually install it first.&amp;nbsp; &lt;a href="http://msdn.microsoft.com/en-us/express/bb410792.aspx"&gt;Get it here&lt;/a&gt;.&lt;/p&gt; &lt;li&gt; &lt;p&gt;You have to manually enable IIS7 with the proper options (explained).&lt;/p&gt; &lt;li&gt; &lt;p&gt;Your workstation has to be part of a domain.&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;strong&gt;Here’s how you install it.&lt;/strong&gt; &lt;p&gt;First download the installation helper and the correct version of WSS with SP1.  &lt;p&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=EF93E453-75F1-45DF-8C6F-4565E8549C2A&amp;amp;displaylang=en"&gt;Windows SharePoint Services 3.0 with Service Pack 1&lt;/a&gt; &lt;p&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=9FB41E51-CB03-4B47-B89A-396786492CBA&amp;amp;displaylang=en"&gt;Windows SharePoint Services 3.0 x64 with Service Pack 1&lt;/a&gt; &lt;p&gt;Go &lt;a href="http://community.bamboosolutions.com/media/p/193.aspx"&gt;here to download our Setup Helper file&lt;/a&gt; &lt;p&gt;&lt;img alt="" src="http://community.bamboosolutions.com/cfs-file.ashx/__key/CommunityServer.Components.UserFiles/00.00.00.21.22/wss.desktop.jpg"&gt; &lt;p&gt;Now run the setup helper (&lt;strong&gt;WssVista.msi&lt;/strong&gt;) &lt;p&gt;&lt;img alt="" src="http://community.bamboosolutions.com/cfs-file.ashx/__key/CommunityServer.Components.UserFiles/00.00.00.21.22/wss.setup.screens.jpg"&gt; &lt;p&gt;You will see an &lt;a href="http://en.wikipedia.org/wiki/User_Account_Control"&gt;UAC prompt&lt;/a&gt; before the install continues, it looks “scarier” than usual since our msi is not &lt;a href="http://blogs.msdn.com/astebner/archive/2006/12/03/uac-prompt-from-unidentified-publisher-appears-when-uninstalling-msis-on-windows-vista.aspx"&gt;signed&lt;/a&gt; &lt;p&gt;If you trust us (and you should) press &lt;strong&gt;Allow&lt;/strong&gt; to finish the installation. &lt;p&gt;&lt;img alt="" src="http://community.bamboosolutions.com/cfs-file.ashx/__key/CommunityServer.Components.UserFiles/00.00.00.21.22/wss.uacprompt.jpg"&gt; &lt;p&gt;&lt;img alt="" src="http://community.bamboosolutions.com/cfs-file.ashx/__key/CommunityServer.Components.UserFiles/00.00.00.21.22/wss.wssvistacomplete.jpg"&gt; &lt;p&gt;Once the install has completed you will find the SetupLauncher.exe in the install location you selected. If you didn’t change the default option you will see it under the directory ..\&lt;strong&gt;Program Files\WssOnVista\Setup&lt;/strong&gt; &lt;p&gt;&lt;img alt="" src="http://community.bamboosolutions.com/cfs-file.ashx/__key/CommunityServer.Components.UserFiles/00.00.00.21.22/wss.location.jpg"&gt; &lt;p&gt;&lt;b&gt;Configuring IIS7&lt;/b&gt; &lt;p&gt;Before we go any further we need to make sure &lt;a href="http://learn.iis.net/page.aspx/28/installing-iis7-on-vista/"&gt;IIS7 is installed with all required options&lt;/a&gt; .  &lt;p&gt;Go to Control Panel and click &lt;strong&gt;Programs&lt;/strong&gt;. &lt;p&gt;&lt;img alt="" src="http://community.bamboosolutions.com/cfs-file.ashx/__key/CommunityServer.Components.UserFiles/00.00.00.21.22/wss.iis.step1.jpg"&gt; &lt;p&gt;Under Program and Features click &lt;strong&gt;Turn Windows features on or off&lt;/strong&gt;. &lt;p&gt;&lt;img alt="" src="http://community.bamboosolutions.com/cfs-file.ashx/__key/CommunityServer.Components.UserFiles/00.00.00.21.22/wss.iis.turnon.jpg"&gt; &lt;p&gt;Under Windows Features select &lt;strong&gt;Web Management Tools&lt;/strong&gt; and &lt;strong&gt;World Wide Web Services&lt;/strong&gt;. Enable at least the following options and choose OK.  &lt;p&gt;&lt;img alt="" src="http://community.bamboosolutions.com/cfs-file.ashx/__key/CommunityServer.Components.UserFiles/00.00.00.21.22/wss.iis.features.jpg"&gt; &lt;p&gt;Wait until Windows has configured all options. &lt;p&gt;&lt;img alt="" src="http://community.bamboosolutions.com/cfs-file.ashx/__key/CommunityServer.Components.UserFiles/00.00.00.21.22/wss.iis.progress.jpg"&gt; &lt;p&gt;&lt;b&gt;Installing Windows SharePoint Services 3.0 SP1 on Vista.&lt;/b&gt; &lt;p&gt;After completing the above steps it’s time for the interesting part. Locate &lt;strong&gt;SetupLauncher.exe&lt;/strong&gt; and start it. You will once again see an UAC prompt, select &lt;strong&gt;Allow&lt;/strong&gt;. &lt;p&gt;&lt;img alt="" src="http://community.bamboosolutions.com/cfs-file.ashx/__key/CommunityServer.Components.UserFiles/00.00.00.21.22/wss.setupLauncher.jpg"&gt; &lt;p&gt;After the SetupLauncher run, select the WSS installation file &lt;strong&gt;Sharepoint.exe&lt;/strong&gt;, and click OK.&amp;nbsp; First, the package will be extracted. &lt;p&gt;&lt;img alt="" src="http://community.bamboosolutions.com/cfs-file.ashx/__key/CommunityServer.Components.UserFiles/00.00.00.21.22/wss.Extract.jpg"&gt; &lt;p&gt;After the files have been extracted the WSS setup program will be started.  &lt;p&gt;The current version only supports the &lt;strong&gt;advanced installation&lt;/strong&gt; option so select that one. &lt;p&gt;&lt;img alt="" src="http://community.bamboosolutions.com/cfs-file.ashx/__key/CommunityServer.Components.UserFiles/00.00.00.21.22/wss.Advanced.jpg"&gt; &lt;p&gt;Select Web Front End when asked about Server Type. The database will be created later. &lt;p&gt;&lt;img alt="" src="http://community.bamboosolutions.com/cfs-file.ashx/__key/CommunityServer.Components.UserFiles/00.00.00.21.22/wss.serverType.jpg"&gt; &lt;p&gt;Sit back and relax while SharePoint is being installed, you are running Vista remember ;) &lt;p&gt;&lt;img alt="" src="http://community.bamboosolutions.com/cfs-file.ashx/__key/CommunityServer.Components.UserFiles/00.00.00.21.22/wss.progress.jpg"&gt; &lt;p&gt;Hopefully you will see the following screen at the end of the installation. If you would get an error during the installation step try to run a Repair. &lt;p&gt;&lt;img alt="" src="http://community.bamboosolutions.com/cfs-file.ashx/__key/CommunityServer.Components.UserFiles/00.00.00.21.22/wss.Installed.jpg"&gt; &lt;p&gt;Leave the checkbox checked and click Close to run the Configuration Wizard. &lt;p&gt;&lt;a href="http://community.bamboosolutions.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/bambooteamblog/image_5F00_2.png"&gt;&lt;img height="226" alt="image" src="http://community.bamboosolutions.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/bambooteamblog/image_5F00_thumb.png" width="264" border="0"&gt;&lt;/a&gt; &lt;p&gt;At the second screen select the option to create a new server farm. &lt;p&gt;&lt;a href="http://community.bamboosolutions.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/bambooteamblog/image_5F00_4.png"&gt;&lt;img height="417" alt="image" src="http://community.bamboosolutions.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/bambooteamblog/image_5F00_thumb_5F00_1.png" width="488" border="0"&gt;&lt;/a&gt; &lt;p&gt;Specify your database server (e.g. MYLAPTOP\SQLEXPRESS) and account information. &lt;p&gt;&lt;a href="http://community.bamboosolutions.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/bambooteamblog/image_5F00_6.png"&gt;&lt;img height="421" alt="image" src="http://community.bamboosolutions.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/bambooteamblog/image_5F00_thumb_5F00_2.png" width="492" border="0"&gt;&lt;/a&gt; &lt;p&gt;&lt;a href="http://community.bamboosolutions.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/bambooteamblog/image_5F00_8.png"&gt;&lt;img height="209" alt="image" src="http://community.bamboosolutions.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/bambooteamblog/image_5F00_thumb_5F00_3.png" width="244" border="0"&gt;&lt;/a&gt;&lt;br&gt;&lt;a href="http://community.bamboosolutions.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/bambooteamblog/image_5F00_12.png"&gt;&lt;img height="210" alt="image" src="http://community.bamboosolutions.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/bambooteamblog/image_5F00_thumb_5F00_5.png" width="244" border="0"&gt;&lt;/a&gt; &lt;p&gt;Let the Configuration Wizard do it's work. &lt;p&gt;&lt;a href="http://community.bamboosolutions.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/bambooteamblog/image_5F00_16.png"&gt;&lt;img height="413" alt="image" src="http://community.bamboosolutions.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/bambooteamblog/image_5F00_thumb_5F00_7.png" width="481" border="0"&gt;&lt;/a&gt; &lt;p&gt;And you should end up with this screen, congratulations! &lt;p&gt;&lt;a href="http://community.bamboosolutions.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/bambooteamblog/image_5F00_18.png"&gt;&lt;img height="419" alt="image" src="http://community.bamboosolutions.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/bambooteamblog/image_5F00_thumb_5F00_8.png" width="488" border="0"&gt;&lt;/a&gt; &lt;p&gt;&lt;a href="http://community.bamboosolutions.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/bambooteamblog/image_5F00_10.png"&gt;&lt;img height="500" alt="image" src="http://community.bamboosolutions.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/bambooteamblog/image_5F00_thumb_5F00_4.png" width="664" border="0"&gt;&lt;/a&gt; &lt;p&gt;The final result is WSS running on Vista, Enjoy! &lt;p&gt;/Jonas &lt;p&gt;Note: Remember that this is a "beta" product from Bamboo.&amp;nbsp; Do not use it for any production work, as well as the usual "backup your system before install this program".&amp;nbsp; Obviously, running WSS v3 or MOSS on Vista is not a supported environment by MS.&amp;nbsp; Additional discussion about this tool &lt;a href="http://community.bamboosolutions.com/forums/104.aspx"&gt;can be found in this forum&lt;/a&gt;.&lt;/p&gt; --&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-4980995766857741820?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/4980995766857741820/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=4980995766857741820' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/4980995766857741820'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/4980995766857741820'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2008/10/finally-way-to-install-wss-3-onto-vista.html' title='Finally - a way to install WSS 3 onto Vista! WOOHOO!'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-4215750003409568292</id><published>2008-10-02T14:41:00.001+10:00</published><updated>2008-10-02T14:41:32.355+10:00</updated><title type='text'>Moving on...</title><content type='html'>&lt;p&gt;As some of you may already be aware I have recently moved on from livePoint and have started a new role at CustomWare, a software consultancy shop specialising in Integration and Collaboration solutions based around WebMethods and Atlassian products. &lt;/p&gt;  &lt;p&gt;I had a lot of fun at livePoint while working there (and learned heaps, especially from the Sales team - hi Teesaan) - livePoint have a dynamic GM in Garry Smith, someone who has more energy than any other person I have ever met in my life so far. The technical director, Sergio Otoya was an absolute joy to work for and I hope our paths will meet again in the future. &lt;/p&gt;  &lt;p&gt;My new manager, &lt;a href="http://www.linkedin.com/pub/1/17/a00" target="_blank"&gt;Andrew Tucker&lt;/a&gt; has built up several businesses in the past and really impressed me during the interview as to his breadth of knowledge - his experience and the opportunities inherent in the role were the 2 key drivers to make the move into CustomWare. Exciting times ahead :) &lt;/p&gt;  &lt;p&gt;Cheers! &lt;/p&gt;  &lt;p&gt;Brad&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-4215750003409568292?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/4215750003409568292/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=4215750003409568292' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/4215750003409568292'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/4215750003409568292'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2008/10/moving-on.html' title='Moving on...'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-8388139023748287605</id><published>2008-10-02T14:40:00.003+10:00</published><updated>2008-10-02T14:40:54.589+10:00</updated><title type='text'>Choosing between BizTalk and Windows Workflow Foundation (or WWF / .NET 3.0)</title><content type='html'>&lt;p&gt;Kent Brown has recently published a great MSDN article on how to decide which technology (either BizTalk or WinWF) would be appropriate for particular business scenarios. If you do get into Business Process Improvement implementations (and hey, if you are implementing SharePoint then you are improving Business Processes, right?) then make sure you &lt;a href="http://msdn2.microsoft.com/en-us/library/cc303238.aspx"&gt;check it out&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Cheers!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-8388139023748287605?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/8388139023748287605/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=8388139023748287605' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/8388139023748287605'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/8388139023748287605'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2008/10/choosing-between-biztalk-and-windows.html' title='Choosing between BizTalk and Windows Workflow Foundation (or WWF / .NET 3.0)'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-917614927039417443</id><published>2008-10-02T14:40:00.001+10:00</published><updated>2008-10-02T14:40:20.681+10:00</updated><title type='text'>Live Messenger and Live Writer on 2008 Server (or 2003 for that matter)</title><content type='html'>&lt;p&gt;I've just completed a Dual-boot deployment of 2008 server on my home PC (so I can gradually migrate from Vista to 2008 server) - one of the first things I needed to do is fire up MSN Messenger, so I kick off the deployment package... WTF is this message? &lt;/p&gt;  &lt;p&gt;Sorry, you can't install Live products on server Operating systems. &lt;/p&gt;  &lt;p&gt;So I quickly call my home boys (Fired up Google) and got the low-down on the shiz-nit (searched for &amp;quot;Windows Live Writer 2008 server&amp;quot;). Sure enough, the Live auto-downloader rejects anything but desktop OS's, but you can download the MSI packs from Microsoft by following Daniel's guide - &lt;a href="http://blogs.technet.com/doxley/archive/2008/03/04/windows-live-installer-without-the-installer.aspx"&gt;here is his post&lt;/a&gt; (&lt;a href="http://www.paulstovell.com/blog/installing-windows-server-2008-on-a-laptop"&gt;and another one - use Daniel's Guide first&lt;/a&gt;) that explains how to use the WLInstaller.exe downloader tool to download the latest version of all the apps on another client PC (eg a computer running a desktop OS). So now I can msg my homies and rap using Messenger, then blog about my new record contract using Writer. &lt;/p&gt;  &lt;p&gt;I have to get some sleep...&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-917614927039417443?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/917614927039417443/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=917614927039417443' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/917614927039417443'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/917614927039417443'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2008/10/live-messenger-and-live-writer-on-2008.html' title='Live Messenger and Live Writer on 2008 Server (or 2003 for that matter)'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-190840565557753085</id><published>2008-10-02T14:39:00.001+10:00</published><updated>2008-10-02T14:39:39.999+10:00</updated><title type='text'>Can't save a file using SharePoint Designer or "Open Site"...</title><content type='html'>&lt;p&gt;Had a problem at work today where one of the staff could not open a site to edit it using SP Designer. One of the other people seemed to have more success (and they were running SP Designer with SP1) but they were still having problems. &lt;/p&gt;  &lt;p&gt;The site was a restored site collection from a client's environment (and the other instance of it we restored worked fine with SPD)... tried running an upgrade to SP1 for SPD on the erroring computer, but no dice... we even looked at the web sites to see if one of the app pools was off or the site had lost its application directories, IISReset (so we could check the IIS Control Panel Applet - &lt;a href="http://sharepointblog.spaces.live.com/blog/cns!74C8FB1191265567!251.entry" target="_blank"&gt;problem and fix described here&lt;/a&gt;) but nothing unusual there...&lt;/p&gt;  &lt;p&gt;We were at a loss, until one of the guys said he'd switched on Anonymous Authentication. Aha - I know that page - that's where I stop people using SPD on a site by switching off Client Integration... and sure enough, it must have been switched off by accident when the Anon Auth was activated.&lt;/p&gt;  &lt;p&gt;Fixed!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-190840565557753085?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/190840565557753085/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=190840565557753085' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/190840565557753085'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/190840565557753085'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2008/10/can-save-file-using-sharepoint-designer.html' title='Can&amp;#39;t save a file using SharePoint Designer or &amp;quot;Open Site&amp;quot;...'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-2082645115370643870</id><published>2008-10-02T14:38:00.003+10:00</published><updated>2008-10-02T14:38:51.103+10:00</updated><title type='text'>When you open IIS control panel applet you see no nodes</title><content type='html'>&lt;p&gt;Have seen a few instances of this lately - on 2003 Server running SP1 or SP2 with WSS 3 or MOSS 2007 installed, if you open up the IIS 6 Control Panel applet from Admin Tools, it takes about 20 seconds to appear and displays nothing except the name of the server you are currently on. There are no other nodes that appear - No Application Pool folder, no Web Sites folder, nothing.&lt;/p&gt;  &lt;p&gt;According to this article (&lt;a title="http://support.microsoft.com/default.aspx/kb/946517/en-us" href="http://support.microsoft.com/default.aspx/kb/946517/en-us"&gt;http://support.microsoft.com/default.aspx/kb/946517/en-us&lt;/a&gt;), it seems that the SharePoint timer service (OWSTimer.exe) can compete for IIS with other processes and cause this situation to occur. A temporary fix can be achieved by running IISRESET on your site (and bringing down your sites momentarily), however if you call MS Support they'll send you the fix for free.&lt;/p&gt;  &lt;p&gt;I've only seen this on 32-bit 2003 servers running SP2, but it looks like it affects all 2003 server versions running with a service pack.&lt;/p&gt;  &lt;p&gt;Good luck and happy troubleshooting!    &lt;br /&gt;Brad&lt;/p&gt;  &lt;p&gt;PS: As an aside - The MS internal support article indicates that this hotfix is part of SP3 for 2003 server. Huh? I spent half an hour on the phone with Microsoft support (in India over their impressive VoIP system with audio lag) explaining to them that SP3 was not out yet and probably wouldn't be out for another 12 months or so - hell, SP2 only came out mid 2007 and OS SP's seem to roll around every couple of years... They finally came around to my way of thinking, and hopefully will change their internal information. It was only when I rang back again asking for SP3 that they finally admitted it didn't exist yet :)&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-2082645115370643870?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/2082645115370643870/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=2082645115370643870' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/2082645115370643870'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/2082645115370643870'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2008/10/when-you-open-iis-control-panel-applet.html' title='When you open IIS control panel applet you see no nodes'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-8846222474696008005</id><published>2008-10-02T14:38:00.001+10:00</published><updated>2008-10-02T14:38:15.307+10:00</updated><title type='text'>How to edit a page that has no "Edit Page" menu option in WSS / MOSS</title><content type='html'>&lt;p&gt;Hi all.&lt;/p&gt;  &lt;p&gt;I recently discovered &lt;a href="http://www.cleverworkarounds.com/"&gt;Paul's Blog&lt;/a&gt; and was very interested in his article explaining how to hide page components using JavaScript and deploying the functionality as a feature. In &lt;a href="http://www.cleverworkarounds.com/2008/02/28/more-sharepoint-branding-customisation-using-javascript-part-3/"&gt;part 3 of the 6-part article&lt;/a&gt;, Paul demonstrates a way of exposing Administrative pages in &amp;quot;edit mode&amp;quot; view - a problem I have had every now and again, but I was unaware there was a solution for it except to crack the page open in SP Designer.&lt;/p&gt;  &lt;p&gt;Once you are at the page you want to add a web part to, add the following to the URL:&lt;/p&gt;  &lt;p&gt;To change everyone's view of a particular page, append ?PageView=Shared&amp;amp;ToolPaneView=2 to the URL.&lt;/p&gt;  &lt;p&gt;To change your private view of a particular page, append ?PageView=Personal&amp;amp;ToolPaneView=2 to the URL (this will only work on pages that allow you to have a personal view - to see if you can edit a personal view of a page, go to the page and click on the top right context menu beside the &amp;quot;Welcome, &amp;lt;your name&amp;gt;&amp;quot; link to see if there's a menu option called &amp;quot;Personalise this page&amp;quot;).&lt;/p&gt;  &lt;p&gt;More info on the URL switches can be found here - &lt;a title="http://blogs.msdn.com/danielmcpherson/archive/2004/10/11/240863.aspx" href="http://blogs.msdn.com/danielmcpherson/archive/2004/10/11/240863.aspx"&gt;http://blogs.msdn.com/danielmcpherson/archive/2004/10/11/240863.aspx&lt;/a&gt; - they relate to 2003, but they all seem to work on 2007 as well. &lt;/p&gt;  &lt;p&gt;Cheers!    &lt;br /&gt;Brad&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-8846222474696008005?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/8846222474696008005/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=8846222474696008005' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/8846222474696008005'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/8846222474696008005'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2008/10/how-to-edit-page-that-has-no-page-menu.html' title='How to edit a page that has no &amp;quot;Edit Page&amp;quot; menu option in WSS / MOSS'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-222706319486935945</id><published>2008-10-02T14:37:00.003+10:00</published><updated>2008-10-02T14:37:45.853+10:00</updated><title type='text'>"Print-Friendly" page layouts and IE Developer Toolbar</title><content type='html'>&lt;p&gt;One of the questions we got asked a lot at the investment bank I was working at during the initial phases of the Business Intelligence project was around creating &amp;quot;Printer-Friendly&amp;quot; versions of the Excel Report pages. Apparently, although we were generating reports to be used and shared online, some of the executives just can't get enough of paper and printouts.&lt;/p&gt;  &lt;p&gt;Anyway, prehistoric work practices aside, there are 2 approaches to this in the WSS / MOSS world. The first one involves modifying the core.css style sheet that is incorporated into the OTB master pages. The other is to modify the master page and point to an alternate style sheet as the style sheet to use when printing. The second option is probably the one that Microsoft would prefer you to use, however it may require more effort to roll out. Taking this option one step further, you could create a feature and staple the feature to all the site templates (which would make it easier to deploy).&lt;/p&gt;  &lt;p&gt;Begin by downloading and installing the &lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=e59c3964-672d-4511-bb3e-2d5e1db91038&amp;amp;displaylang=en" target="_blank"&gt;IE Developer Toolbar&lt;/a&gt;. You may need to go into your browser settings and enable the IE Developer Toolbar add-ons once you have installed it (in IE, Tools --&amp;gt; Manage Add-ons --&amp;gt; Enable or Disable Add-ons).&lt;/p&gt;  &lt;p&gt;So let's look at the 2 alternatives: First, the one Microsoft does not support: modifying the core.css file. The reason this is not officially supported is because a service pack or hot fix may overwrite the file. If there are issues with the changes you make, you will be charged for support calls... and so on. Since neither scenario is likely to be related to a Style sheet change, if your changes are going to be simple I say &amp;quot; Be like a squirrel and go nuts!&amp;quot; :)&lt;/p&gt;  &lt;p&gt;Open up the core.css file (normally located in C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\LAYOUTS\1033\STYLES) and search for @media - this will get you to an area within the style sheet that is set up to hide the listed classes within of the page. OTB the side menu and breadcrumbs are hidden, but the top logo and search boxes are visible. Pffft. Give me more printable area, not a logo. Display the IE Developer Toolbar by going Options --&amp;gt; Toolbars --&amp;gt; Explorer --&amp;gt; IE Developer Toolbar. Click on the icon in the toolbar that looks like a mouse over a box, then click on the logo. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://7l0dza.bay.livefilestore.com/y1pzKQkPmCQuVHHSsShlZhsfD0ynwpM2EXDZnvSZ7ng2pI3q_v8GjeIlT1bM1gLw2hKulSbmr-_XvVxIofSBXxS8t9yEtLsCkky?PARTNER=WRITER"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="201" alt="2008-03-13_1143" src="http://7l0dza.bay.livefilestore.com/y1pzKQkPmCQuVHcIzeLibvBpkJu1YBZySPh-jLflIusg6rugloaElU6tR3bKkHWLr7GgGdy9lAKl6YMQT13-bb4Vqep513eJ6S4?PARTNER=WRITER" width="707" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;You will see the &amp;lt;BODY&amp;gt; tag below the button you clicked on automatically expand and highlight the object you have just selected in the page. Then you can click on parent objects in the tree until you get to the row that covers off the entire width of the page. In the Attribute field to the right of the tree, you will then see the class and possibly the ID of the object (normally the object is a &amp;lt;TD&amp;gt;) appear in the list of styles that are currently being applied to that object. &lt;/p&gt;  &lt;p&gt;Add the class you see to the list in the @media print section of the core.css. This will set this class to display:none;, effectively hiding the table cell and shrinking the area to take up 0px space. When I did it, the class was called ms-globalTitleArea.&lt;/p&gt;  &lt;p&gt;You may also want to reduce the padding or margin on the content tables, however you'd probably want to go towards a separate style sheet if you are looking at getting into this much detail, so check out the second option below!&lt;/p&gt;  &lt;p&gt;The second alternative is to add a Style Sheet &amp;quot;Link&amp;quot; tag into the master page that points to an alternative style sheet. The format of the tag is:&lt;/p&gt;  &lt;p&gt;&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; type=&amp;quot;text/css&amp;quot; href=&amp;quot;/_layouts/1033/styles/print.css&amp;quot; media=&amp;quot;print&amp;quot; /&amp;gt;&lt;/p&gt;  &lt;p&gt;You'll notice the path in here is a bit odd - it points to the same virtual folder path that core.css resides in. That's where I've put my revised Style Sheet to make sure it's available in a common location across all MOSS / WSS sites.&lt;/p&gt;  &lt;p&gt;To be honest, I believe that this is the better option. Changes you make to the print.css file will only affect the printed page and not the live site. The other enhancement you can make to the master page (while you have it cracked open in SP Designer) is to add a &amp;quot;Print This Page&amp;quot; or &amp;quot;Printer-Friendly&amp;quot; link that people can click on (not everyone uses &amp;lt;CTRL&amp;gt; + P to print a web page). Add the following link to the top of the page (perhaps near the &amp;quot;My Links&amp;quot; or &amp;quot;My Site&amp;quot; links) &lt;/p&gt;  &lt;p&gt;&amp;lt;a href=&amp;quot;#&amp;quot; onClick=&amp;quot;window.print();return false&amp;quot;&amp;gt;Print This Page&amp;lt;/a&amp;gt;&lt;/p&gt;  &lt;p&gt;This pops up the printer dialogue for the user, but it does not change the functionality in any other way (you get the same printed result by clicking the &amp;quot;Print&amp;quot; menu button or pressing &amp;lt;CTRL&amp;gt; + P).&lt;/p&gt;  &lt;p&gt;Cheers!    &lt;br /&gt;Brad&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-222706319486935945?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/222706319486935945/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=222706319486935945' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/222706319486935945'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/222706319486935945'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2008/10/page-layouts-and-ie-developer-toolbar.html' title='&amp;quot;Print-Friendly&amp;quot; page layouts and IE Developer Toolbar'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-1278700457487220268</id><published>2008-10-02T14:37:00.001+10:00</published><updated>2008-10-02T14:37:09.824+10:00</updated><title type='text'>Community Kit for SharePoint - Enhanced Blog Edition v2.0</title><content type='html'>&lt;p&gt;The next version of the EBE has been released. I hope that Microsoft look at including this type of functionality in the MOSS vNext - One thing that was a bit disappointing was the OTB Blog features - I know, I know - MOSS / WSS 3 is not a blogging application.&lt;/p&gt;  &lt;p&gt;Support now for Trackbacks, CAPTCHA Spam control, RSS Post content trimming, still supports Windows Live Writer (What I write all my blog posts in). The new solution is &lt;a href="http://www.codeplex.com/Release/ProjectReleases.aspx?ProjectName=CKS&amp;amp;ReleaseId=5134" target="_blank"&gt;here&lt;/a&gt; on CodePlex.&lt;/p&gt;  &lt;p&gt;Cheers!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-1278700457487220268?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/1278700457487220268/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=1278700457487220268' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/1278700457487220268'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/1278700457487220268'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2008/10/community-kit-for-sharepoint-enhanced.html' title='Community Kit for SharePoint - Enhanced Blog Edition v2.0'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-3176414177065934618</id><published>2008-10-02T14:36:00.003+10:00</published><updated>2008-10-02T14:36:30.537+10:00</updated><title type='text'>SharePoint User "Buzz" kit</title><content type='html'>&lt;p&gt;Microsoft have created a &amp;quot;Buzz&amp;quot; kit that provides assets for companies to use who are rolling out SharePoint internally. Before distributing them far and wide, ensure that the &amp;quot;Buzz&amp;quot; you are creating is about features and functionality you are deploying (so if you are deploying WSS 3, don't bang on about the BDC unless you are trying to get another business unit to come up with funding). The page with all the assets is located &lt;a href="http://sharepoint.microsoft.com/gearup/Pages/General/BuzzKit.aspx" target="_blank"&gt;here&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Cheers!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-3176414177065934618?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/3176414177065934618/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=3176414177065934618' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/3176414177065934618'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/3176414177065934618'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2008/10/sharepoint-user-kit.html' title='SharePoint User &amp;quot;Buzz&amp;quot; kit'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-2139609072370216371</id><published>2008-10-02T14:36:00.001+10:00</published><updated>2008-10-02T14:36:04.182+10:00</updated><title type='text'>Can't get the Quick Parts to display Document Properties in Word 2007...</title><content type='html'>&lt;p&gt;Ever have one of those days? It's miserable weather when you wake up, and the day just gets worse the more you get into it. The dog bites you as you leave the house, you tear your suit on the fence as you run to catch the bus which you end up missing, you're working on a problem for an hour that does not exist...&lt;/p&gt;  &lt;p&gt;So here I am working on a problem for the better part of an hour. Why won't the fields in the SharePoint document library appear as Document Properties under the Quick Parts button in the Word 2007 ribbon? For that matter, why oh why is the Document Properties button greyed out altogether? The document properties exist - I can see them when I look at the &amp;quot;Properties&amp;quot; in Windows File Explorer... When I view the Document Information Panel, I can see the fields I want to insert in there... and there's nothing funny going on in the Document Library with the Content Type or Library Security... and I can save values from the DIP and live on the SharePoint site... and like all good developers I'm a Site Admin... so what gives?&lt;/p&gt;  &lt;p&gt;It turns out that even though the word document is saved with the .docx extension, it does not necessarily mean that you can use the integration features with SharePoint 2007 / WSS 3, such as Quick Parts. In fact, if you can see the phrase [Compatibility mode] next to the file name in the title bar of the window, you cannot add any type of Document Property into the document at all.&lt;/p&gt;  &lt;p&gt;The solution is pretty easy - click on the Office Pearl (the blob with the office logo on it in the top left of the screen) and choose the &amp;quot;Convert&amp;quot; option that appears (it will only be present if you are running in compatibility mode). Voila - now you can add columns from the Document library into the document's content and update them from the Document Information Panel!&lt;/p&gt;  &lt;p&gt;&lt;a href="http://screencast.com/t/gHVE7xSw5" target="_blank"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="196" alt="image" src="http://byfiles.storage.msn.com/y1pOXeU0PVvAxk5yvEpvHfXJvaFpYmglGZu30Q3gln8CqkraHVVxln8NWJBuMP3QQBD0wMUb6k4SEs?PARTNER=WRITER" width="244" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-2139609072370216371?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/2139609072370216371/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=2139609072370216371' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/2139609072370216371'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/2139609072370216371'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2008/10/can-get-quick-parts-to-display-document.html' title='Can&amp;#39;t get the Quick Parts to display Document Properties in Word 2007...'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-2612103010681875165</id><published>2008-10-02T14:35:00.003+10:00</published><updated>2008-10-02T14:35:42.268+10:00</updated><title type='text'>External BLOB storage</title><content type='html'>&lt;p&gt;Hey all!&lt;/p&gt;  &lt;p&gt;There's been some information published around External BLOB storage in Technet - you can &lt;a href="http://msdn2.microsoft.com/en-us/library/bb802976.aspx"&gt;look at the information here&lt;/a&gt;. Also, &lt;a href="http://www.codeplex.com/ebs"&gt;Kaneboy has uploaded some code to CodePlex&lt;/a&gt; that allows the user to merely install and activate the feature. I'm glad someone wrote some code I could use in a demo :)&lt;/p&gt;  &lt;p&gt;You activate the feature at the farm level and you have to activate it across all WFE's in order for the operation to be consistent throughout the farm. &lt;a href="http://www.codeplex.com/ebs"&gt;Thanks for sharing Kaneboy&lt;/a&gt;!&lt;/p&gt;  &lt;p&gt;Brad&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-2612103010681875165?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/2612103010681875165/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=2612103010681875165' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/2612103010681875165'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/2612103010681875165'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2008/10/external-blob-storage.html' title='External BLOB storage'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-4516864631002632923</id><published>2008-10-02T14:35:00.001+10:00</published><updated>2008-10-02T14:35:21.281+10:00</updated><title type='text'>Displaying Custom Field in Content Query Web Parts MOSS 2007</title><content type='html'>&lt;p&gt;Hi all.&lt;/p&gt;  &lt;p&gt;There's an article on Technet that goes over the procedure required to create data from custom fields in the Content Query web part - it's very comprehensive and will be useful to anyone who wants to collect data from (for example) the same list in multiple sites with a custom field and has been having trouble...&lt;/p&gt;  &lt;p&gt;&lt;a title="http://msdn2.microsoft.com/en-us/library/bb850574.aspx" href="http://msdn2.microsoft.com/en-us/library/bb850574.aspx"&gt;http://msdn2.microsoft.com/en-us/library/bb850574.aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Brad&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-4516864631002632923?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/4516864631002632923/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=4516864631002632923' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/4516864631002632923'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/4516864631002632923'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2008/10/displaying-custom-field-in-content.html' title='Displaying Custom Field in Content Query Web Parts MOSS 2007'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-228050906214365129</id><published>2008-10-02T14:34:00.003+10:00</published><updated>2008-10-02T14:34:55.768+10:00</updated><title type='text'>Social Networking and what is delivered in MOSS 2007</title><content type='html'>&lt;p&gt;Microsoft have released a white paper on Social Networking in general and how to implement MOSS as a social networking platform. It's a real pity that the Knowledge Networks add-on never got past RC 0 - it would have been the ultimate enabler for building up people's knowledge profile. Ah well, at least it'll be in the next version. &lt;/p&gt;  &lt;p&gt;From the page...    &lt;br /&gt;Learn about the importance of social networking in an organization and how to properly implement Microsoft Office SharePoint Server 2007 as a social networking platform. This white paper discusses why it is important to design a solution that encompasses the inclusion of data into Office SharePoint Server 2007 as part of a user's profile. The white paper also presents strategies that can help to ensure that data from various sources don't conflict, overlap, and cause inconsistencies in the social mining involved in creating colleague matches. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://technet2.microsoft.com/Office/f/?en-us/library/488d329d-306a-436d-a9fa-4b1e4037c8a61033.mspx"&gt;Link to the page publishing the white paper...&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Brad&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-228050906214365129?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/228050906214365129/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=228050906214365129' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/228050906214365129'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/228050906214365129'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2008/10/social-networking-and-what-is-delivered.html' title='Social Networking and what is delivered in MOSS 2007'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-9177336259611819084</id><published>2008-10-02T14:34:00.001+10:00</published><updated>2008-10-02T14:34:29.378+10:00</updated><title type='text'>Integrating other Portals and Information Sources with SharePoint</title><content type='html'>&lt;p&gt;In large organisations, there is always more than one source of information that needs to be presented within SharePoint - often these are pre-existing portal applications from other vendors or even from Microsoft. &lt;/p&gt;  &lt;p&gt;Jose Barreto has written a blog entry on the various ways integration can be achieved with SharePoint 2007 or WSS 3 that is worth checking out, especially when looking at an implementation and integration proposal for a prospective client - &lt;a title="http://blogs.msdn.com/sharepoint/archive/2007/10/26/integrating-sharepoint-with-other-portals-and-applications.aspx" href="http://blogs.msdn.com/sharepoint/archive/2007/10/26/integrating-sharepoint-with-other-portals-and-applications.aspx"&gt;http://blogs.msdn.com/sharepoint/archive/2007/10/26/integrating-sharepoint-with-other-portals-and-applications.aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Cheers!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-9177336259611819084?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/9177336259611819084/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=9177336259611819084' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/9177336259611819084'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/9177336259611819084'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2008/10/integrating-other-portals-and.html' title='Integrating other Portals and Information Sources with SharePoint'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-6406146446919866454</id><published>2007-09-16T23:47:00.002+10:00</published><updated>2010-07-14T18:11:58.441+10:00</updated><title type='text'>Kerberos Authentication &amp; Excel Services</title><content type='html'>&lt;p&gt;After battling with setting this up for 3 days before it finally started to authenticate, I thought I'd add the lessons learned to the configuration processes listed &lt;a href="http://blogs.msdn.com/martinkearn/archive/2007/04/23/configuring-kerberos-for-sharepoint-2007-part-1-base-configuration-for-sharepoint.aspx" target="_blank"&gt;here&lt;/a&gt; including the troubleshooting tools used.&lt;/p&gt; &lt;p&gt;Firstly, Credits and Thanks - Without &lt;a href="http://blogs.msdn.com/martinkearn/archive/2007/04/23/configuring-kerberos-for-sharepoint-2007-part-1-base-configuration-for-sharepoint.aspx" target="_blank"&gt;Martin Kearn's blog entry&lt;/a&gt;, I would have had no hope translating these 2 Technet articles (&lt;a href="http://support.microsoft.com/kb/832769/" target="_blank"&gt;1&lt;/a&gt;, &lt;a href="http://support.microsoft.com/kb/917409" target="_blank"&gt;2&lt;/a&gt;) into the steps in Martin's guide. If I'd needed to configure delegation to the SQL server, I would have also taken advantage of &lt;a href="http://sqljunkies.com/WebLog/mosha/archive/2005/01/25/6905.aspx" target="_blank"&gt;this article from Mosha Pasumansky&lt;/a&gt;. &lt;a href="http://blogs.msdn.com/james_world/archive/2007/08/20/essential-guide-to-kerberos-in-sharepoint.aspx" target="_blank"&gt;James World's blog article&lt;/a&gt; validated what I was seeing in NetMon with Site access authentication requests being passed through without a port number (I'm glad it wasn't just me).&lt;/p&gt; &lt;p&gt;The major challenge that I had following the steps in Martin's blog is that he does not give an explanation on how to determine what SPN's you need - this makes determining the correct SPN's for configurations different from Martin's configuration difficult - it's my aim to alleviate some of that confusion for others also venturing down this path, especially if your setup is a high-availability one.&lt;/p&gt; &lt;p&gt;Some of the following will be similar to Martin's blog, however I'm also going to build in:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;How to determine the SPN's required  &lt;li&gt;What SPN's are necessary, what are not  &lt;li&gt;Troubleshooting Kerberos issues that may be seen while setting up Excel Services (and which tools to use) - Coming soon...  &lt;li&gt;What can still be achieved without using Kerberos in Excel Services (Yes, you don't NEED Kerberos or SSO to run most ECS functionality... but there are some bits that will refuse to work) - Coming soon...&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;So where does SharePoint need to double-hop credentials anyway? How can you test to see if your issue is caused by a double-hop failure because you are using NTLM authentication? Is a Double-hop something a Kangaroo does? &lt;a href="http://sharepointblog.spaces.live.com/blog/cns!74C8FB1191265567!151.entry" target="_blank"&gt;Find out here...&lt;/a&gt; :)&lt;/p&gt; &lt;p&gt;Kerberos was created to be more secure and faster than NTLM - and to fill the double-hop void... but by default, it does not allow accounts to impersonate other accounts unless you explicitly allow them to do so. That's probably why you're here - because in order to get the full functionality of Excel Services working with Kerberos authentication, you need to allow the service accounts of the SharePoint application to impersonate the user's account that is currently logged into SharePoint. If you do not need to authenticate users and you don't mind if people who are connected to your network can see your back-end data source then there are instructions coming soon on how to set up ECS without using Kerberos.&lt;/p&gt; &lt;p&gt;In the diagram below, I outline the process that occurs to retrieve data from the SSAS cube via ECS using Kerberos &amp;amp; Delegation.&lt;/p&gt; &lt;p&gt;&lt;a href="https://qoupqa.bay.livefilestore.com/y1mD9y_mSY2RAqTt__mLwBe6Dfinnty2aHvRATDs_gONGC-4bmelcBe807Gtsm0OfqechneheBXr0E3ZEPEd2-Yt_xjbZzw_PXvimXP4j91KpGk5dQbX-Q0XcN33l5_fSZXRVwBx4KpUEYZE9-vEAyW9g/ECS.jpg" target="_blank"&gt;&lt;img src="https://qoupqa.bay.livefilestore.com/y1mD9y_mSY2RAqTt__mLwBe6Dfinnty2aHvRATDs_gONGC-4bmelcBe807Gtsm0OfqechneheBXr0E3ZEPEd2-Yt_xjbZzw_PXvimXP4j91KpGk5dQbX-Q0XcN33l5_fSZXRVwBx4KpUEYZE9-vEAyW9g/ECS.jpg" border="0"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;You can see that it's a fairly involved process, and each arrow encapsulates a further series of sub-tasks that occur to achieve the desired outcome (The Visio diagram used to create this image is &lt;a href="http://cid-74c8fb1191265567.skydrive.live.com/self.aspx/Public/excel%20calc%20services%20visio.vsd" target="_blank"&gt;here&lt;/a&gt;). In some cases you may also require delegation (represented by the arrows with the yellow highlights) at the SSAS server, if you are querying live data from the database and you want the figures to be security trimmed.&lt;/p&gt; &lt;p&gt;Based on the diagram above, in the table below I highlight which SPN's are required for Excel to work and which ones can be left alone. I recommend migrating all of the authentication types over at once - mainly because it's easier to manage... however it's not necessary as indicated...&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;table cellspacing="1" cellpadding="4" width="100%" border="1"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="168"&gt;&lt;nobr&gt;&lt;strong&gt;Application Pool&lt;br&gt;Account Description&lt;/strong&gt;&lt;/nobr&gt;&lt;/td&gt; &lt;td valign="top" width="439"&gt;&lt;strong&gt;Used to&lt;/strong&gt;&lt;/td&gt; &lt;td valign="top" width="159"&gt;&lt;strong&gt;Required to be &lt;nobr&gt;Kerberos-enabled &lt;/nobr&gt;for ECS to work&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="168"&gt;MOSS Server Farm account&lt;/td&gt; &lt;td valign="top" width="439"&gt;Run the MOSS Central Admin application pool, SharePoint services and connect to the database to make application changes, create new sites, etc.&lt;/td&gt; &lt;td valign="top" width="159"&gt;No&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="168"&gt;My Sites Application Pool account&lt;/td&gt; &lt;td valign="top" width="439"&gt;Used to run the application pool for the My Sites area of MOSS. Not required unless your users want to use the RSS reader supplied with MOSS to read RSS feeds from the SharePoint application (Or you could use the Smiling Goat RSS Reader which does NTLM Authentication).&lt;/td&gt; &lt;td valign="top" width="159"&gt;No&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="167"&gt;The Web site rendering the Excel pages&lt;/td&gt; &lt;td valign="top" width="439"&gt;Used to run the web site that the user sees and interacts with. Must support Kerberos if you want to put an RSS feed reader on the site that points to another area of the site or another MOSS site. Also required if you want to display figures from Analysis services that are security-trimmed, use Connection files or Analysis Services filters.&lt;/td&gt; &lt;td valign="top" width="159"&gt;Yes&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="167"&gt;Search Service Account&lt;/td&gt; &lt;td valign="top" width="439"&gt;Used to manage the jobs that run on WFE servers, crawling content&lt;/td&gt; &lt;td valign="top" width="159"&gt;No&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="168"&gt;Default Content Access account&lt;/td&gt; &lt;td valign="top" width="439"&gt;Used to crawl content on web sites, file shares, etc&lt;/td&gt; &lt;td valign="top" width="159"&gt;No&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="168"&gt;Content Access account&lt;/td&gt; &lt;td valign="top" width="439"&gt;Used to crawl content that the account is specifically configured to access&lt;/td&gt; &lt;td valign="top" width="159"&gt;No&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="168"&gt;Shared Service Provider (SSP) service account&lt;/td&gt; &lt;td valign="top" width="439"&gt;Used to run the Shared service provider Services, same account as the SSP Application pool account and therefore has the same privileges&lt;/td&gt; &lt;td valign="top" width="159"&gt;Yes&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="168"&gt;SSP Application pool account&lt;/td&gt; &lt;td valign="top" width="439"&gt;Used to manage SSP's, Application servers&lt;/td&gt; &lt;td valign="top" width="159"&gt;Yes&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="168"&gt;ECS Web Service App Pool Account&lt;/td&gt; &lt;td valign="top" width="439"&gt;Used by the Web Site to generate the HTML that renders the Excel Spreadsheet (Normally that same account as the SSP App pool)&lt;/td&gt; &lt;td valign="top" width="159"&gt;Yes&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt; &lt;p&gt;Other accounts that are needed during an installation of SharePoint&lt;br&gt;&lt;/p&gt; &lt;table cellspacing="1" cellpadding="4" width="100%" border="1"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="169"&gt;&lt;nobr&gt;&lt;strong&gt;Account Description&lt;/strong&gt;&lt;/nobr&gt;&lt;/td&gt; &lt;td valign="top" width="441"&gt;&lt;strong&gt;Used to&lt;/strong&gt;&lt;/td&gt; &lt;td valign="top" width="157"&gt;&lt;strong&gt;Required to be &lt;nobr&gt;Kerberos-enabled &lt;/nobr&gt;for ECS to work&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="169"&gt;SSAS SQL Server Service Account&lt;/td&gt; &lt;td valign="top" width="441"&gt;Run SQL Server 2005 SSAS&lt;/td&gt; &lt;td valign="top" width="159"&gt;No&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt; &lt;p&gt;Let's get underway. First we'll run through the work that needs to be done by your local friendly Domain Administrator :)&lt;/p&gt; &lt;hr color="blue"&gt;  &lt;blockquote&gt; &lt;p&gt;Create the SPN's: &lt;/p&gt;&lt;/blockquote&gt; &lt;blockquote&gt; &lt;p&gt;Start by filling out the following table - this makes it easier to work out the required SPN's&lt;/p&gt; &lt;table cellspacing="1" cellpadding="4" width="100%" border="1"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top"&gt;&lt;strong&gt;ID&lt;/strong&gt;&lt;/td&gt; &lt;td valign="top"&gt;&lt;nobr&gt;&lt;strong&gt;Account&lt;/strong&gt;&lt;/nobr&gt;&lt;/td&gt; &lt;td valign="top" width="319"&gt;&lt;strong&gt;More Info&lt;/strong&gt;&lt;/td&gt; &lt;td valign="top" width="199"&gt;&lt;strong&gt;Fill out the information here&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top"&gt;PWSNBN&lt;/td&gt; &lt;td valign="top"&gt;Primary Web Server's Net Bios name&lt;/td&gt; &lt;td valign="top" width="319"&gt;Get this from the "My Computer" properties (Computer Name tab and look beside the "Full Computer Name" heading - will look like servername.companyname.internal - write down the servername part, not the whole lot)&lt;/td&gt; &lt;td valign="top" width="199"&gt;PWS Machine NetBIOS name:&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top"&gt;PWSDNSN&lt;/td&gt; &lt;td valign="top"&gt;Primary Web Server's DNS Name&lt;/td&gt; &lt;td valign="top" width="319"&gt;The name set up in DNS that allows access to the site using a name and normally the default port 80 (this site would normally have a host header mapping in IIS and a matching Alternate Access Mapping in MOSS if set up correctly) eg &lt;a href="http://ExcelSite"&gt;http://ExcelSite&lt;/a&gt;&lt;/td&gt; &lt;td valign="top" width="199"&gt;PWS DNS Name:&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top"&gt;IDN&lt;/td&gt; &lt;td valign="top"&gt;Internal Domain Name&lt;/td&gt; &lt;td valign="top" width="319"&gt;Get this from the "My Computer" properties (Computer Name tab and look beside the Domain heading)&lt;/td&gt; &lt;td valign="top" width="199"&gt;eg companyname.internal&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top"&gt;PWSID&lt;/td&gt; &lt;td valign="top"&gt;&lt;nobr&gt;Primary Web Site &lt;br&gt;application Pool Identity&lt;/nobr&gt;&lt;/td&gt; &lt;td valign="top" width="319"&gt;Open up IIS Admin console, expand primary web site, view properties and look on the "Home" tab. These's a Web Application field listed and it's the identity of this app pool we are after&lt;/td&gt; &lt;td valign="top" width="199"&gt;domain\username&lt;/td&gt;&lt;/tr&gt;&lt;!--&lt;br /&gt;&lt;tr&gt;&lt;br /&gt;&lt;td valign="top"&gt;FAID&lt;/td&gt;&lt;br /&gt;&lt;td valign="top"&gt;Server Farm Identity&lt;/td&gt;&lt;br /&gt;&lt;td valign="top" width="319"&gt;This is the account used to run MOSS - you entered it when you first installed MOSS, and it's the account that has the roles DatabaseCreator and SecurityAdministrator in your SQL environment.&lt;/td&gt;&lt;br /&gt;&lt;td valign="top" width="241"&gt;domain\username&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;--&gt; &lt;tr&gt; &lt;td valign="top"&gt;ECSNBN&lt;/td&gt; &lt;td valign="top"&gt;The ECS Machine's NetBIOS Name&lt;/td&gt; &lt;td valign="top" width="319"&gt;Get this from the "My Computer" properties of the server running ECS, if it is different from the server running the SSP (Go to the Computer Name tab and look beside the "Full Computer Name" heading - will look like servername.companyname.internal - write down the servername part, not the whole lot)&lt;/td&gt; &lt;td valign="top" width="199"&gt;ECS Machine NetBIOS Name:&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top"&gt;SSPNBN&lt;/td&gt; &lt;td valign="top"&gt;SSP Machine's NetBIOS Name&lt;/td&gt; &lt;td valign="top" width="319"&gt;Get this from the "My Computer" properties (Computer Name tab and look beside the "Full Computer Name" heading - will look like servername.companyname.internal - write down the servername part, not the whole lot)&lt;/td&gt; &lt;td valign="top" width="199"&gt;SSP Machine's NetBIOS Name:&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top"&gt;SSPID&lt;/td&gt; &lt;td valign="top"&gt;SSP &lt;nobr&gt;application Pool Identity&lt;/nobr&gt; &lt;/td&gt; &lt;td valign="top" width="319"&gt;The application pool identity for the Shared Services Management site&lt;/td&gt; &lt;td valign="top" width="199"&gt;domain\username&lt;br&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top"&gt;SSPNAME&lt;/td&gt; &lt;td valign="top"&gt;The SSP Name&lt;/td&gt; &lt;td valign="top" width="319"&gt;The name you have assigned the SSP attached to your web application&lt;/td&gt; &lt;td valign="top" width="199"&gt;SharedServices1&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top"&gt;MYSITEDNS&lt;/td&gt; &lt;td valign="top"&gt;The My Site DNS name (If defined)&lt;/td&gt; &lt;td valign="top" width="319"&gt;This is the DNS name you have assigned to My Sites (eg mysite.intranet) - only required if you are planning on running My Sites under Kerberos&lt;/td&gt; &lt;td valign="top" width="199"&gt;mysite.intranet&lt;/td&gt;&lt;/tr&gt;&lt;!--&lt;br /&gt;&lt;tr&gt;&lt;br /&gt;&lt;td valign="top"&gt;SSASID&lt;/td&gt;&lt;br /&gt;&lt;td valign="top"&gt;Analysis Services Service Identity&lt;/td&gt;&lt;br /&gt;&lt;td valign="top" width="319"&gt;The account that runs Analysis Services on your SQL server&lt;/td&gt;&lt;br /&gt;&lt;td valign="top" width="241"&gt;domain\username&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;br /&gt;&lt;td valign="top"&gt;SSASDNS&lt;/td&gt;&lt;br /&gt;&lt;td valign="top"&gt;Analysis Services Server name&lt;/td&gt;&lt;br /&gt;&lt;td valign="top" width="319"&gt;The name used to connect to Analysis Services using the SQL Management application&lt;/td&gt;&lt;br /&gt;&lt;td valign="top" width="241"&gt;SSAS Server Name:&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;br /&gt;&lt;td valign="top"&gt;SSASIN&lt;/td&gt;&lt;br /&gt;&lt;td valign="top"&gt;Analysis Services Instance Name&lt;/td&gt;&lt;br /&gt;&lt;td valign="top" width="319"&gt;The instance name running SSAS&lt;/td&gt;&lt;br /&gt;&lt;td valign="top" width="241"&gt;SSAS Instance Name:&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;--&gt;&lt;/tbody&gt;&lt;/table&gt; &lt;p&gt;Now we need to create the SPN’s attached to the Accounts used to run the site’s app pool. You need an SPN for the machine’s NetBIOS name, the FQDN and any DNS names you have set up. So, using the table above you need to run the following lines (without the square braces[], replacing the ID's from the table you have just created):&lt;/p&gt;&lt;/blockquote&gt; &lt;blockquote&gt; &lt;p&gt;setspn -a [PWSNBN] [PWSID]&lt;br&gt;setspn -a [PWSNBN].[IDN] [PWSID]&lt;br&gt;*setspn -a [PWSDNSN] [PWSID]&lt;br&gt;*setspn -a [PWSDNSN].[IDN] [PWSID]&lt;br&gt;setspn -a [ECSNBN] [SSPID]&lt;br&gt;setspn -a [ECSNBN].[IDN] [SSPID]&lt;br&gt;&lt;/p&gt;setspn -a [SSPNBN] [SSPID]&lt;br&gt;setspn -a [SSPNBN].[IDN] [SSPID]&lt;br&gt;^setspn -a [MYSITEDNS] [SSPID]&lt;br&gt;^setspn -a [MYSITEDNS].[IDN] [SSPID]&lt;br&gt; &lt;p&gt;&lt;br&gt;* - Note there may be more than one pair of these to do if you have multiple DNS / Host names set up for the main site.&lt;br&gt;^ - You only need to set these up if you plan for users to access MySites under a different DNS name using Kerberos&lt;/p&gt; &lt;p&gt;Example:&lt;/p&gt; &lt;p&gt;if you ran a site called&amp;nbsp; &lt;a href="http://mymossWFE:1234"&gt;http://mymossWFE:1234&lt;/a&gt; with a host header mapping to &lt;a href="http://myintranet"&gt;http://myintranet&lt;/a&gt; and the web service ran under the Application pool account SVC_MOSS_WEB, you would need the following SPN’s created.&lt;br&gt;&lt;a href="http://myintranet"&gt;http://myintranet&lt;/a&gt; domainName\SVC_MOSS_WEB&lt;br&gt;&lt;a href="http://myintranet.companyname.internal"&gt;http://myintranet.companyname.internal&lt;/a&gt; domainName\SVC_MOSS_WEB&lt;br&gt;*&lt;a href="http://mymossWFE"&gt;http://mymossWFE&lt;/a&gt; domainName\SVC_MOSS_WEB&lt;br&gt;*&lt;a href="http://mymossWFE"&gt;http://mymossWFE&lt;/a&gt; domainName\SVC_MOSS_WEB&lt;/p&gt; &lt;p&gt;The Shared Services account being used by the Excel site – building on the previous example, if the SSP used by the myintranet site was running on the site &lt;a href="http://ecsserver:10070"&gt;http://ecsserver:10070&lt;/a&gt; under the user SRVC_MOSS_SSP, you would also need the following SPN’s:&lt;br&gt;&lt;a href="http://ecsserver"&gt;http://ecsserver&lt;/a&gt; domain\SRVC_MOSS_SSP&lt;br&gt;&lt;a href="http://ecsserver.companyname.internal"&gt;http://ecsserver.companyname.internal&lt;/a&gt; domain\SRVC_MOSS_SSP  &lt;p&gt;* Note - If the ECS Server and the WFE server are the same, do not create these SPN's (as you will be mapping the same SPN's to 2 different user ID's)  &lt;p&gt;For all of the user accounts you have just created SPN’s for, set them up in Active Directory so they can use delegation - 'Trust this user for delegation to any service (Kerberos)* - and ensure that the account is not marked 'Sensitive (Cannot be delegated)'&lt;/p&gt; &lt;p&gt;*Note - Microsoft recommend using constrained delegation - where you nominate the servers you are delegating user credentials to (on the same tab in AD Users &amp;amp; Computers). I think that's a great idea as part of a process to lock down the production environment once you have everything up and running - but make it work first, that way when you make changes locking it down, you know what breaks the system as soon as it breaks.&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt; &lt;hr color="blue"&gt;  &lt;p&gt;&lt;/p&gt; &lt;p&gt;This ends the work that the AD Administrator needs to complete &lt;/p&gt; &lt;p&gt;Next, Enable Kerberos on your web applications (this section is direct from Martin's Blog):  &lt;hr color="blue"&gt;  &lt;blockquote&gt; &lt;ul&gt; &lt;li&gt;Open Central Administration  &lt;li&gt;Navigation to Application Management &amp;gt; Authentication Providers  &lt;li&gt;For each web application that you need to change, based on the SPN's you have just created:  &lt;ul&gt; &lt;li&gt;Choose the web applications you wish to configure for Kerberos from the drop-down in the top right corner  &lt;li&gt;Click on 'Default'  &lt;li&gt;Set the authentication to Negotiate (Kerberos)  &lt;li&gt;Click OK&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;IISRESET when complete&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Enable Kerberos on your SSP (The machine hosting your Admin Site):  &lt;ul&gt; &lt;li&gt;Open a Command Prompt and navigate to your '12\Bin' directory (normally c:\program files\common files\microsoft shared\web server extensions\12\bin)&amp;nbsp; &lt;li&gt;Run 'STSADM.exe -o SetSharedWebServiceAuthn -negotiate' &lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Configure Component Services on all web servers:  &lt;ul&gt; &lt;li&gt;Open Component Services on the MOSS server  &lt;li&gt;Navigation to Component Services &amp;gt; Computers &amp;gt; My Computer  &lt;li&gt;Click on Properties (for My Computer) &amp;gt; Default Properties &amp;gt; Default Impersonation Level = Delegate (see &lt;a href="https://mail.livepoint.com.au/exchweb/bin/redir.asp?URL=http://support.microsoft.com/kb/917409"&gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;http://support.microsoft.com/kb/917409&lt;/u&gt;&lt;/a&gt;)  &lt;li&gt;Navigate to Component Services &amp;gt; Computers &amp;gt; My Computer &amp;gt; DCOM Config &amp;gt; IIS WAMREG Admin Service  &lt;li&gt;Click on Properties (for IIS WAMREG Admin Service) and navigate to the Security tab  &lt;li&gt;Edit Launch and Activate Permissions  &lt;li&gt;Grant all of your application pool accounts 'Local Activation' permissions (see &lt;a href="https://mail.livepoint.com.au/exchweb/bin/redir.asp?URL=http://support.microsoft.com/kb/920783"&gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;http://support.microsoft.com/kb/920783&lt;/u&gt;&lt;/a&gt;). In our example, these accounts would be domain\MySiteAppPool, domain\SSPAdminAppPool, domain\PortalAppPool &lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Configure Excel Calculation Services for Delegation:  &lt;ul&gt; &lt;li&gt;On your SharePoint server running ECS, Run the following command where [SSPNAME] is the name of your Shared Service Provider:  &lt;li&gt;stsadm.exe -o set-ecssecurity -ssp [SSPNAME] -accessmodel delegation  &lt;li&gt;Now run the following command:  &lt;li&gt;stsadm.exe -o execadmsvcjobs  &lt;li&gt;IISRESET &lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;hr color="blue"&gt; Excel Services is now ready to run &amp;amp; publish spreadsheets... but for those settings, I'll come back another night.  &lt;p&gt;&lt;/p&gt; &lt;p&gt;Still to come:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Configuring ECS &amp;amp; Moss to display Spreadsheets  &lt;li&gt;Kerberos Troubleshooting - What to do when it turns to poo  &lt;li&gt;How to run multi-tier ECS without Kerberos or SSO (and what you miss out on)&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Hopefully this article has been of use to you. Thanks for dropping by!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-6406146446919866454?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/6406146446919866454/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=6406146446919866454' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/6406146446919866454'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/6406146446919866454'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2007/09/kerberos-authentication-excel-services_16.html' title='Kerberos Authentication &amp;amp; Excel Services'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-6242314624803434654</id><published>2007-09-16T23:24:00.001+10:00</published><updated>2007-09-16T23:24:05.929+10:00</updated><title type='text'>Quickstart user guides for SharePoint</title><content type='html'>&lt;p&gt;Hi all.&lt;/p&gt; &lt;p&gt;Lawrence from the MS MOSS team has recently posted an article linking to some content released by the MS Internal IT group designed to help MS employees quickly come to grips with basic SharePoint functionality (eg creating a site, Web parts, meeting &amp;amp; document workspaces, etc...).&lt;/p&gt; &lt;p&gt;You can check out the SharePoint-specific list here - &lt;a title="Customizable Everyday Productivity Education (EPE) content developed by Microsoft IT for end use" href="http://blogs.msdn.com/sharepoint/archive/2007/09/07/customizable-everyday-productivity-education-epe-content-developed-by-microsoft-it-for-end-user-training.aspx" target="_blank"&gt;Everyday Productivity Education (EPE) content for SharePoint&lt;/a&gt; - or the full list for all office products here - &lt;a title="bb687781.aspx" href="http://technet.microsoft.com/en-us/library/bb687781.aspx" target="_blank"&gt;http://technet.microsoft.com/en-us/library/bb687781.aspx&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;I've had a look through some of them, and if you are the one stuck producing this for a client or an internal IT team, then it will be a big help and probably halve your workload.&lt;/p&gt; &lt;p&gt;Cheers!&lt;/p&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-6242314624803434654?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/6242314624803434654/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=6242314624803434654' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/6242314624803434654'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/6242314624803434654'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2007/09/quickstart-user-guides-for-sharepoint.html' title='Quickstart user guides for SharePoint'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-5775181358056238761</id><published>2007-09-16T01:44:00.001+10:00</published><updated>2007-09-16T01:46:31.676+10:00</updated><title type='text'>Kerberos Authentication &amp; Excel Services</title><content type='html'>&lt;p&gt;After battling with setting this up for 3 days before it finally started to authenticate, I thought I'd add the lessons learned to the configuration processes listed &lt;a href="http://blogs.msdn.com/martinkearn/archive/2007/04/23/configuring-kerberos-for-sharepoint-2007-part-1-base-configuration-for-sharepoint.aspx" target="_blank"&gt;here&lt;/a&gt; including the troubleshooting tools used.&lt;/p&gt; &lt;p&gt;Firstly, Credits and Thanks - Without &lt;a href="http://blogs.msdn.com/martinkearn/archive/2007/04/23/configuring-kerberos-for-sharepoint-2007-part-1-base-configuration-for-sharepoint.aspx" target="_blank"&gt;Martin Kearn's blog entry&lt;/a&gt;, I would have had no hope translating these 2 Technet articles (&lt;a href="http://support.microsoft.com/kb/832769/" target="_blank"&gt;1&lt;/a&gt;, &lt;a href="http://support.microsoft.com/kb/917409" target="_blank"&gt;2&lt;/a&gt;) into the steps in Martin's guide. If I'd needed to configure delegation to the SQL server, I would have also taken advantage of &lt;a href="http://sqljunkies.com/WebLog/mosha/archive/2005/01/25/6905.aspx" target="_blank"&gt;this article from Mosha Pasumansky&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;The major challenge that I had following the steps in Martin's blog is that he does not give an explanation on how to determine what SPN's you need - this makes determining the correct SPN's for configurations different from Martin's configuration difficult - it's my aim to alleviate some of that confusion for others also venturing down this path, especially if your setup is a high-availability one.&lt;/p&gt; &lt;p&gt;Some of the following will be similar to Martin's blog, however I'm also going to build in:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;How to determine the SPN's required  &lt;li&gt;What SPN's are necessary, what are not  &lt;li&gt;Troubleshooting Kerberos issues that may be seen while setting up Excel Services (and which tools to use) - Coming soon...  &lt;li&gt;What can still be achieved without using Kerberos in Excel Services (Yes, you don't NEED Kerberos or SSO to run most ECS functionality... but there are some bits that will refuse to work) - Coming soon...&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;So where does SharePoint need to double-hop credentials anyway? How can you test to see if your issue is caused by a double-hop failure because you are using NTLM authentication? Is a Double-hop something a Kangaroo does? &lt;a href="http://sharepointspot.blogspot.com/2007/09/dreaded-double-hop-dilemma-and-it.html" target="_blank"&gt;Find out here...&lt;/a&gt; :)&lt;/p&gt; &lt;p&gt;Kerberos was created to be more secure and faster than NTLM - and to fill the double-hop void... but by default, it does not allow accounts to impersonate other accounts unless you explicitly allow them to do so. That's probably why you're here - because in order to get the full functionality of Excel Services working with Kerberos authentication, you need to allow the service accounts of the SharePoint application to impersonate the user's account that is currently logged into SharePoint. If you do not need to authenticate users and you don't mind if people who are connected to your network can see your back-end data source then there are instructions coming soon on how to set up ECS without using Kerberos.&lt;/p&gt; &lt;p&gt;In the diagram below, I outline the process that occurs to retrieve data from the SSAS cube via ECS using Kerberos &amp;amp; Delegation.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.echotechnology.com/downloads/blogimages/excel%20calc%20services%20visio.png" target="_blank"&gt;&lt;img height="510" src="http://www.echotechnology.com/downloads/blogimages/excel%20calc%20services%20visio.jpg" width="780" border="0"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;You can see that it's a fairly involved process, and each arrow encapsulates a further series of sub-tasks that occur to achieve the desired outcome (The Visio diagram used to create this image is &lt;a href="http://www.echotechnology.com/downloads/blogimages/excel calc services visio.vsd" target="_blank"&gt;here&lt;/a&gt;). In some cases you may also require delegation (represented by the arrows with the yellow highlights) at the SSAS server, if you are querying live data from the database and you want the figures to be security trimmed.&lt;/p&gt; &lt;p&gt;Based on the diagram above, in the table below I highlight which SPN's are required for Excel to work and which ones can be left alone. I recommend migrating all of the authentication types over at once - mainly because it's easier to manage... however it's not necessary as indicated...&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;table cellspacing="1" cellpadding="4" width="100%" border="1"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="168"&gt;&lt;nobr&gt;&lt;strong&gt;Application Pool&lt;br&gt;Account Description&lt;/strong&gt;&lt;/nobr&gt;&lt;/td&gt; &lt;td valign="top" width="439"&gt;&lt;strong&gt;Used to&lt;/strong&gt;&lt;/td&gt; &lt;td valign="top" width="159"&gt;&lt;strong&gt;Required to be &lt;nobr&gt;Kerberos-enabled &lt;/nobr&gt;for ECS to work&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="168"&gt;MOSS Server Farm account&lt;/td&gt; &lt;td valign="top" width="439"&gt;Run the MOSS Central Admin application pool, SharePoint services and connect to the database to make application changes, create new sites, etc.&lt;/td&gt; &lt;td valign="top" width="159"&gt;No&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="168"&gt;My Sites Application Pool account&lt;/td&gt; &lt;td valign="top" width="439"&gt;Used to run the application pool for the My Sites area of MOSS. Not required unless your users want to use the RSS reader supplied with MOSS to read RSS feeds from the SharePoint application (Or you could use the Smiling Goat RSS Reader which does NTLM Authentication).&lt;/td&gt; &lt;td valign="top" width="159"&gt;No&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="167"&gt;The Web site rendering the Excel pages&lt;/td&gt; &lt;td valign="top" width="439"&gt;Used to run the web site that the user sees and interacts with. Must support Kerberos if you want to put an RSS feed reader on the site that points to another area of the site or another MOSS site. Also required if you want to display figures from Analysis services that are security-trimmed, use Connection files or Analysis Services filters.&lt;/td&gt; &lt;td valign="top" width="159"&gt;Yes&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="167"&gt;Search Service Account&lt;/td&gt; &lt;td valign="top" width="439"&gt;Used to manage the jobs that run on WFE servers, crawling content&lt;/td&gt; &lt;td valign="top" width="159"&gt;No&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="168"&gt;Default Content Access account&lt;/td&gt; &lt;td valign="top" width="439"&gt;Used to crawl content on web sites, file shares, etc&lt;/td&gt; &lt;td valign="top" width="159"&gt;No&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="168"&gt;Content Access account&lt;/td&gt; &lt;td valign="top" width="439"&gt;Used to crawl content that the account is specifically configured to access&lt;/td&gt; &lt;td valign="top" width="159"&gt;No&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="168"&gt;Shared Service Provider (SSP) service account&lt;/td&gt; &lt;td valign="top" width="439"&gt;Used to run the Shared service provider Services, same account as the SSP Application pool account and therefore has the same privileges&lt;/td&gt; &lt;td valign="top" width="159"&gt;Yes&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="168"&gt;SSP Application pool account&lt;/td&gt; &lt;td valign="top" width="439"&gt;Used to manage SSP's, Application servers&lt;/td&gt; &lt;td valign="top" width="159"&gt;Yes&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="168"&gt;ECS Web Service App Pool Account&lt;/td&gt; &lt;td valign="top" width="439"&gt;Used by the Web Site to generate the HTML that renders the Excel Spreadsheet (Normally that same account as the SSP App pool)&lt;/td&gt; &lt;td valign="top" width="159"&gt;Yes&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt; &lt;p&gt;Other accounts that are needed during an installation of SharePoint&lt;br&gt;&lt;/p&gt; &lt;table cellspacing="1" cellpadding="4" width="100%" border="1"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="169"&gt;&lt;nobr&gt;&lt;strong&gt;Account Description&lt;/strong&gt;&lt;/nobr&gt;&lt;/td&gt; &lt;td valign="top" width="441"&gt;&lt;strong&gt;Used to&lt;/strong&gt;&lt;/td&gt; &lt;td valign="top" width="157"&gt;&lt;strong&gt;Required to be &lt;nobr&gt;Kerberos-enabled &lt;/nobr&gt;for ECS to work&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" width="169"&gt;SSAS SQL Server Service Account&lt;/td&gt; &lt;td valign="top" width="441"&gt;Run SQL Server 2005 SSAS&lt;/td&gt; &lt;td valign="top" width="159"&gt;No&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt; &lt;p&gt;Let's get underway. First we'll run through the work that needs to be done by your local friendly Domain Administrator :)&lt;/p&gt; &lt;hr color="blue"&gt;  &lt;blockquote&gt; &lt;p&gt;Create the SPN's: &lt;/p&gt;&lt;/blockquote&gt; &lt;blockquote&gt; &lt;p&gt;Start by filling out the following table - this makes it easier to work out the required SPN's&lt;/p&gt; &lt;table cellspacing="1" cellpadding="4" width="100%" border="1"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top"&gt;&lt;strong&gt;ID&lt;/strong&gt;&lt;/td&gt; &lt;td valign="top"&gt;&lt;nobr&gt;&lt;strong&gt;Account&lt;/strong&gt;&lt;/nobr&gt;&lt;/td&gt; &lt;td valign="top" width="319"&gt;&lt;strong&gt;More Info&lt;/strong&gt;&lt;/td&gt; &lt;td valign="top" width="199"&gt;&lt;strong&gt;Fill out the information here&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top"&gt;PWSNBN&lt;/td&gt; &lt;td valign="top"&gt;Primary Web Server's Net Bios name&lt;/td&gt; &lt;td valign="top" width="319"&gt;Get this from the "My Computer" properties (Computer Name tab and look beside the "Full Computer Name" heading - will look like servername.companyname.internal - write down the servername part, not the whole lot)&lt;/td&gt; &lt;td valign="top" width="199"&gt;PWS Machine NetBIOS name:&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top"&gt;PWSDNSN&lt;/td&gt; &lt;td valign="top"&gt;Primary Web Server's DNS Name&lt;/td&gt; &lt;td valign="top" width="319"&gt;The name set up in DNS that allows access to the site using a name and normally the default port 80 (this site would normally have a host header mapping in IIS and a matching Alternate Access Mapping in MOSS if set up correctly) eg &lt;a href="http://ExcelSite"&gt;http://ExcelSite&lt;/a&gt;&lt;/td&gt; &lt;td valign="top" width="199"&gt;PWS DNS Name:&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top"&gt;IDN&lt;/td&gt; &lt;td valign="top"&gt;Internal Domain Name&lt;/td&gt; &lt;td valign="top" width="319"&gt;Get this from the "My Computer" properties (Computer Name tab and look beside the Domain heading)&lt;/td&gt; &lt;td valign="top" width="199"&gt;eg companyname.internal&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top"&gt;PWSID&lt;/td&gt; &lt;td valign="top"&gt;&lt;nobr&gt;Primary Web Site &lt;br&gt;application Pool Identity&lt;/nobr&gt;&lt;/td&gt; &lt;td valign="top" width="319"&gt;Open up IIS Admin console, expand primary web site, view properties and look on the "Home" tab. These's a Web Application field listed and it's the identity of this app pool we are after&lt;/td&gt; &lt;td valign="top" width="199"&gt;domain\username&lt;/td&gt;&lt;/tr&gt;&lt;!--&lt;br /&gt;&lt;tr&gt;&lt;br /&gt;&lt;td valign="top"&gt;FAID&lt;/td&gt;&lt;br /&gt;&lt;td valign="top"&gt;Server Farm Identity&lt;/td&gt;&lt;br /&gt;&lt;td valign="top" width="319"&gt;This is the account used to run MOSS - you entered it when you first installed MOSS, and it's the account that has the roles DatabaseCreator and SecurityAdministrator in your SQL environment.&lt;/td&gt;&lt;br /&gt;&lt;td valign="top" width="241"&gt;domain\username&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;--&gt; &lt;tr&gt; &lt;td valign="top"&gt;ECSNBN&lt;/td&gt; &lt;td valign="top"&gt;The ECS Machine's NetBIOS Name&lt;/td&gt; &lt;td valign="top" width="319"&gt;Get this from the "My Computer" properties of the server running ECS, if it is different from the server running the SSP (Go to the Computer Name tab and look beside the "Full Computer Name" heading - will look like servername.companyname.internal - write down the servername part, not the whole lot)&lt;/td&gt; &lt;td valign="top" width="199"&gt;ECS Machine NetBIOS Name:&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top"&gt;SSPNBN&lt;/td&gt; &lt;td valign="top"&gt;SSP Machine's NetBIOS Name&lt;/td&gt; &lt;td valign="top" width="319"&gt;Get this from the "My Computer" properties (Computer Name tab and look beside the "Full Computer Name" heading - will look like servername.companyname.internal - write down the servername part, not the whole lot)&lt;/td&gt; &lt;td valign="top" width="199"&gt;SSP Machine's NetBIOS Name:&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top"&gt;SSPID&lt;/td&gt; &lt;td valign="top"&gt;SSP &lt;nobr&gt;application Pool Identity&lt;/nobr&gt; &lt;/td&gt; &lt;td valign="top" width="319"&gt;The application pool identity for the Shared Services Management site&lt;/td&gt; &lt;td valign="top" width="199"&gt;domain\username&lt;br&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top"&gt;SSPNAME&lt;/td&gt; &lt;td valign="top"&gt;The SSP Name&lt;/td&gt; &lt;td valign="top" width="319"&gt;The name you have assigned the SSP attached to your web application&lt;/td&gt; &lt;td valign="top" width="199"&gt;SharedServices1&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td valign="top"&gt;MYSITEDNS&lt;/td&gt; &lt;td valign="top"&gt;The My Site DNS name (If defined)&lt;/td&gt; &lt;td valign="top" width="319"&gt;This is the DNS name you have assigned to My Sites (eg mysite.intranet) - only required if you are planning on running My Sites under Kerberos&lt;/td&gt; &lt;td valign="top" width="199"&gt;mysite.intranet&lt;/td&gt;&lt;/tr&gt;&lt;!--&lt;br /&gt;&lt;tr&gt;&lt;br /&gt;&lt;td valign="top"&gt;SSASID&lt;/td&gt;&lt;br /&gt;&lt;td valign="top"&gt;Analysis Services Service Identity&lt;/td&gt;&lt;br /&gt;&lt;td valign="top" width="319"&gt;The account that runs Analysis Services on your SQL server&lt;/td&gt;&lt;br /&gt;&lt;td valign="top" width="241"&gt;domain\username&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;br /&gt;&lt;td valign="top"&gt;SSASDNS&lt;/td&gt;&lt;br /&gt;&lt;td valign="top"&gt;Analysis Services Server name&lt;/td&gt;&lt;br /&gt;&lt;td valign="top" width="319"&gt;The name used to connect to Analysis Services using the SQL Management application&lt;/td&gt;&lt;br /&gt;&lt;td valign="top" width="241"&gt;SSAS Server Name:&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;br /&gt;&lt;td valign="top"&gt;SSASIN&lt;/td&gt;&lt;br /&gt;&lt;td valign="top"&gt;Analysis Services Instance Name&lt;/td&gt;&lt;br /&gt;&lt;td valign="top" width="319"&gt;The instance name running SSAS&lt;/td&gt;&lt;br /&gt;&lt;td valign="top" width="241"&gt;SSAS Instance Name:&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;--&gt;&lt;/tbody&gt;&lt;/table&gt; &lt;p&gt;Now we need to create the SPN’s attached to the Accounts used to run the site’s app pool. You need an SPN for the machine’s NetBIOS name, the FQDN and any DNS names you have set up. So, using the table above you need to run the following lines (without the square braces[], replacing the ID's from the table you have just created):&lt;/p&gt;&lt;/blockquote&gt; &lt;blockquote&gt; &lt;p&gt;setspn -a [PWSNBN] [PWSID]&lt;br&gt;setspn -a [PWSNBN].[IDN] [PWSID]&lt;br&gt;*setspn -a [PWSDNSN] [PWSID]&lt;br&gt;*setspn -a [PWSDNSN].[IDN] [PWSID]&lt;br&gt;setspn -a [ECSNBN] [SSPID]&lt;br&gt;setspn -a [ECSNBN].[IDN] [SSPID]&lt;br&gt;&lt;/p&gt;setspn -a [SSPNBN] [SSPID]&lt;br&gt;setspn -a [SSPNBN].[IDN] [SSPID]&lt;br&gt;^setspn -a [MYSITEDNS] [SSPID]&lt;br&gt;^setspn -a [MYSITEDNS].[IDN] [SSPID]&lt;br&gt; &lt;p&gt;&lt;br&gt;* - Note there may be more than one pair of these to do if you have multiple DNS / Host names set up for the main site.&lt;br&gt;^ - You only need to set these up if you plan for users to access MySites under a different DNS name using Kerberos&lt;/p&gt; &lt;p&gt;Example:&lt;/p&gt; &lt;p&gt;if you ran a site called&amp;nbsp; &lt;a href="http://mymossWFE:1234"&gt;http://mymossWFE:1234&lt;/a&gt; with a host header mapping to &lt;a href="http://myintranet"&gt;http://myintranet&lt;/a&gt; and the web service ran under the Application pool account SVC_MOSS_WEB, you would need the following SPN’s created.&lt;br&gt;&lt;a href="http://myintranet"&gt;http://myintranet&lt;/a&gt; domainName\SVC_MOSS_WEB&lt;br&gt;&lt;a href="http://myintranet.companyname.internal"&gt;http://myintranet.companyname.internal&lt;/a&gt; domainName\SVC_MOSS_WEB&lt;br&gt;*&lt;a href="http://mymossWFE"&gt;http://mymossWFE&lt;/a&gt; domainName\SVC_MOSS_WEB&lt;br&gt;*&lt;a href="http://mymossWFE"&gt;http://mymossWFE&lt;/a&gt; domainName\SVC_MOSS_WEB&lt;/p&gt; &lt;p&gt;The Shared Services account being used by the Excel site – building on the previous example, if the SSP used by the myintranet site was running on the site &lt;a href="http://ecsserver:10070"&gt;http://ecsserver:10070&lt;/a&gt; under the user SRVC_MOSS_SSP, you would also need the following SPN’s:&lt;br&gt;&lt;a href="http://ecsserver"&gt;http://ecsserver&lt;/a&gt; domain\SRVC_MOSS_SSP&lt;br&gt;&lt;a href="http://ecsserver.companyname.internal"&gt;http://ecsserver.companyname.internal&lt;/a&gt; domain\SRVC_MOSS_SSP  &lt;p&gt;* Note - If the ECS Server and the WFE server are the same, do not create these SPN's (as you will be mapping the same SPN's to 2 different user ID's)  &lt;p&gt;For all of the user accounts you have just created SPN’s for, set them up in Active Directory so they can use delegation - 'Trust this user for delegation to any service (Kerberos)* - and ensure that the account is not marked 'Sensitive (Cannot be delegated)'&lt;/p&gt; &lt;p&gt;*Note - Microsoft recommend using constrained delegation - where you nominate the servers you are delegating user credentials to (on the same tab in AD Users &amp;amp; Computers). I think that's a great idea as part of a process to lock down the production environment once you have everything up and running - but make it work first, that way when you make changes locking it down, you know what breaks the system as soon as it breaks.&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt; &lt;hr color="blue"&gt;  &lt;p&gt;&lt;/p&gt; &lt;p&gt;This ends the work that the AD Administrator needs to complete &lt;/p&gt; &lt;p&gt;Next, Enable Kerberos on your web applications (this section is direct from Martin's Blog):  &lt;hr color="blue"&gt;  &lt;blockquote&gt; &lt;ul&gt; &lt;li&gt;Open Central Administration  &lt;li&gt;Navigation to Application Management &amp;gt; Authentication Providers  &lt;li&gt;For each web application that you need to change, based on the SPN's you have just created:  &lt;ul&gt; &lt;li&gt;Choose the web applications you wish to configure for Kerberos from the drop-down in the top right corner  &lt;li&gt;Click on 'Default'  &lt;li&gt;Set the authentication to Negotiate (Kerberos)  &lt;li&gt;Click OK&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;IISRESET when complete&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Enable Kerberos on your SSP (The machine hosting your Admin Site):  &lt;ul&gt; &lt;li&gt;Open a Command Prompt and navigate to your '12\Bin' directory (normally c:\program files\common files\microsoft shared\web server extensions\12\bin)&amp;nbsp; &lt;li&gt;Run 'STSADM.exe -o SetSharedWebServiceAuthn -negotiate' &lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Configure Component Services on all web servers:  &lt;ul&gt; &lt;li&gt;Open Component Services on the MOSS server  &lt;li&gt;Navigation to Component Services &amp;gt; Computers &amp;gt; My Computer  &lt;li&gt;Click on Properties (for My Computer) &amp;gt; Default Properties &amp;gt; Default Impersonation Level = Delegate (see &lt;a href="https://mail.livepoint.com.au/exchweb/bin/redir.asp?URL=http://support.microsoft.com/kb/917409"&gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;http://support.microsoft.com/kb/917409&lt;/u&gt;&lt;/a&gt;)  &lt;li&gt;Navigate to Component Services &amp;gt; Computers &amp;gt; My Computer &amp;gt; DCOM Config &amp;gt; IIS WAMREG Admin Service  &lt;li&gt;Click on Properties (for IIS WAMREG Admin Service) and navigate to the Security tab  &lt;li&gt;Edit Launch and Activate Permissions  &lt;li&gt;Grant all of your application pool accounts 'Local Activation' permissions (see &lt;a href="https://mail.livepoint.com.au/exchweb/bin/redir.asp?URL=http://support.microsoft.com/kb/920783"&gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;http://support.microsoft.com/kb/920783&lt;/u&gt;&lt;/a&gt;). In our example, these accounts would be domain\MySiteAppPool, domain\SSPAdminAppPool, domain\PortalAppPool &lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Configure Excel Calculation Services for Delegation:  &lt;ul&gt; &lt;li&gt;On your SharePoint server running ECS, Run the following command where [SSPNAME] is the name of your Shared Service Provider:  &lt;li&gt;stsadm.exe -o set-ecssecurity -ssp [SSPNAME] -accessmodel delegation  &lt;li&gt;Now run the following command:  &lt;li&gt;stsadm.exe -o execadmsvcjobs  &lt;li&gt;IISRESET &lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;hr color="blue"&gt; Excel Services is now ready to run &amp;amp; publish spreadsheets... but for those settings, I'll come back another night.  &lt;p&gt;&lt;/p&gt; &lt;p&gt;Still to come:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Configuring ECS &amp;amp; Moss to display Spreadsheets  &lt;li&gt;Kerberos Troubleshooting - What to do when it turns to poo  &lt;li&gt;How to run multi-tier ECS without Kerberos or SSO (and what you miss out on)&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Hopefully this article has been of use to you. Thanks for dropping by!&lt;/p&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-5775181358056238761?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/5775181358056238761/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=5775181358056238761' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/5775181358056238761'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/5775181358056238761'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2007/09/kerberos-authentication-excel-services.html' title='Kerberos Authentication &amp;amp; Excel Services'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-7059288742235354148</id><published>2007-09-16T01:42:00.001+10:00</published><updated>2007-09-16T01:42:21.532+10:00</updated><title type='text'>Kerberos &amp; Load-balanced web sites</title><content type='html'>&lt;p&gt;Traditional restrictions around the way Kerberos works throw up a problem with setting up a load-balanced Kerberos-enabled web site. Basically, if you use port numbers to separate sites with the same DNS name on load-balanced web servers AND the sites run in application pools using different account names, you're stuffed - the server will either not be able to decrypt the SPN using a different AD account key, or you will have 2 or more SPN's created for the same site but 2 different accounts, generating a Duplicate SPN error.&lt;/p&gt; &lt;p&gt;When setting up a load-balanced SharePoint environment using Kerberos or Kerberos delegation, follow these guidelines to minimise hassle:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;For each MOSS site accessed by clients, create a shared DNS name that clients will use to access the site. The name must be uniquely mapped (using Setspn.exe) to one user only  &lt;li&gt;Create Alternate Access Mappings (AAM's) in MOSS for the shared DNS name for each site (Web app)  &lt;li&gt;Update the IIS Site (using the IIS Admin Tool) with the new HOST mappings that reflect the shared DNS name  &lt;li&gt;To manage session transfer:  &lt;ul&gt; &lt;li&gt;Use ASP.NET SQL Session management so all sessions are recorded in a central location OR  &lt;li&gt;Use affinity on the switch so that concurrent requests from a particular IP address within the same session go to the same target server&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;If you are using Kerberos Delegation, follow the steps in my Kerberos SPN mapping blog entry  &lt;li&gt;It is also worth creating unique DNS entries on each MOSS Web Application on each web server (and setting up SPN's for those DNS entries if required for Delegation). This will allow you to quickly navigate to each specific server and determine where a failure exists if you have some users getting errors while others do not (this can be tough to do in a NLB configuration, unless you have this set up before the outage). &lt;/li&gt;&lt;/ul&gt; &lt;p&gt;The diagram below describes how the information flows between servers during a Kerberos authentication request. &lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;a href="http://lh5.google.com/specul8online/Ruv9NY_k0KI/AAAAAAAAACU/Xt9C-_5QHwg/image182.png" target="_blank"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="349" alt="image" src="http://lh5.google.com/specul8online/Ruv9WY_k0LI/AAAAAAAAACc/MgBeUD5aLr4/image18_thumb1.png" width="644" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;I will keep adding to this post with hints &amp;amp; tips as I progress through more of these kerberos-based load-balanced rollouts.&lt;/p&gt; &lt;p&gt;Stay tuned!&lt;/p&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-7059288742235354148?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/7059288742235354148/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=7059288742235354148' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/7059288742235354148'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/7059288742235354148'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2007/09/kerberos-load-balanced-web-sites.html' title='Kerberos &amp;amp; Load-balanced web sites'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-8466344959362802547</id><published>2007-09-16T01:37:00.001+10:00</published><updated>2007-09-16T01:37:47.781+10:00</updated><title type='text'>Online Microsoft Hotfix request form</title><content type='html'>&lt;p&gt;I wanted to capture this as it's a really useful way to get a hotfix that's not immediately needed but still offers some benefits - from &lt;a href="http://blogs.technet.com/stefan_gossner/archive/2007/07/27/eway-to-request-hotfixes-from-microsoft-support.aspx" target="_blank"&gt;Stefan Goßner's blog&lt;/a&gt;, go here - &lt;a href="https://support.microsoft.com/contactus2/emailcontact.aspx?scid=sw;en;1410&amp;amp;WS=hotfix"&gt;https://support.microsoft.com/contactus2/emailcontact.aspx?scid=sw;en;1410&amp;amp;WS=hotfix&lt;/a&gt; - fill out the form and receive the hotfix within 8 business hours (vs spending 10 minutes on the phone answering 20 questions with a MS support staff member).  &lt;p&gt;Brad&lt;/p&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-8466344959362802547?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/8466344959362802547/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=8466344959362802547' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/8466344959362802547'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/8466344959362802547'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2007/09/online-microsoft-hotfix-request-form.html' title='Online Microsoft Hotfix request form'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-9055545111597456344</id><published>2007-09-16T01:36:00.001+10:00</published><updated>2007-09-16T01:36:25.659+10:00</updated><title type='text'>The Australian Partner Conference @ Hamilton Island</title><content type='html'>&lt;p&gt;Just got back from the Australian Partner Conference at Hamilton Island with the wife &amp;amp; kids - had a great time up there and got to meet some amazing people, like Ian Palangio (an Office Solution Specialist from MS), Robin Young (SharePoint Product Manager), Colin Timm (MS Director, Enterprise Customers), Emy (our PAM's Manager and someone who really looks after livePoint) and a whole stack of partners (Brett, Brian and co from OBS, Correct Solutions, Simon from Inspire IT, Craig - my old boss - from Dataract - some of which we will be working closely with in the very near future for both internal &amp;amp; client-facing projects).  &lt;p&gt;&lt;strong&gt;Best work-oriented experience&lt;/strong&gt;: To see what networking is all about. I mean, I'm a tech dude. What do I need to know about all this Salesy stuff, right? Some of our biggest deals this year will probably end up being made based on the outcomes of a discussion at a pub on Hamilton Island.  &lt;p&gt;&lt;strong&gt;Best Drink&lt;/strong&gt;: Vodka Red-bulls. I've had them once before. My mind was a bit messed up from the Vodka, but I did not blink for hours at a time.  &lt;p&gt;&lt;strong&gt;Best Recreational Experience&lt;/strong&gt;: Hmmm. There were 3 things that I probably will not get the chance to do again, but only one that can be done around that part of Australia - Snorkeled at the Great Barrier Reef off Hayman Island. Unforgettable.&lt;br&gt;I was a "Grinder" on a yacht (one of the guys who spins the handles really fast to move the sails around) and also went to a Shooting range (learning that "Skill in First person shooter &amp;lt;&amp;gt; Skill with real guns"). Pull!  &lt;p&gt;&lt;strong&gt;Most embarrassing moment&lt;/strong&gt;: When my son started to snorkel after about 2 minutes of practice while dear old dad sits in knee-deep water trying not to hyperventilate for 15 minutes (I got out to look at the reef eventually, then it was all over too soon &lt;img title="Smile" style="vertical-align: middle" alt="Smile" src="http://shared.live.com/QGncRMHLLpIcOfCh--4aMA/emoticons/smile_regular.gif"&gt; )  &lt;p&gt;&lt;strong&gt;Biggest disappointment&lt;/strong&gt;: Not enough photos or time with the family (I only really got to spend Saturday with them... but I was there to work after all).  &lt;p&gt;&lt;strong&gt;Most Entertaining Moment&lt;/strong&gt;: Well, livePoint got to present a 15-minute talk as part of Robin's presentation on MOSS 07 CRM about the company, some of the solutions we've done (For BT, Nutrimetics and Qantas) and how Echo for SharePoint allowed us to roll out these large MOSS applications with a lot less effort than might have otherwise been required (&lt;a href="http://www.echotechnology.com/" target="_blank"&gt;public beta coming soon&lt;/a&gt;) - the entertaining part was when the boss walked on his hands at the end of the presentation - I kid you not, there was one of the company owners, doing handstands in front of 100 partners. He had people coming up to him for the rest of the conference saying how entertaining the presentation was, so I guess it helped to keep livePoint in people's minds.  &lt;p&gt;If you are a partner and are looking at aligning your business strategy with Microsoft, or want to see what others are doing then get along to next year's conference - you will not regret it.  &lt;p&gt;Brad&lt;/p&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-9055545111597456344?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/9055545111597456344/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=9055545111597456344' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/9055545111597456344'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/9055545111597456344'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2007/09/australian-partner-conference-hamilton.html' title='The Australian Partner Conference @ Hamilton Island'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-2002783330315708341</id><published>2007-09-16T01:35:00.001+10:00</published><updated>2007-09-16T01:35:38.721+10:00</updated><title type='text'>Top support calls for MOSS 07 / WSS 3</title><content type='html'>&lt;p&gt;Hi all.&lt;/p&gt; &lt;p&gt;Just noticed that &lt;a href="http://blogs.msdn.com/joelo/archive/2007/08/29/tips-from-top-support-calls.aspx" target="_blank"&gt;Joel has released a list of the top 17 support calls&lt;/a&gt; for the latest version of SharePoint products - well worth a look and could be an effective "List of things to check when reviewing a Client's site for the first time" type of list. Some timely reminders in there of basic things that can trip up a SharePoint deployment, especially around permissions. What's the first one at the top of the list?&lt;/p&gt; &lt;p&gt;Backups!&lt;br&gt;Backups!&lt;br&gt;Backups!&lt;br&gt;Backups!&lt;br&gt;Backups!&lt;br&gt;Backups!&lt;br&gt;...&lt;br&gt;Developers!&lt;br&gt;Developers!&lt;br&gt;Developers!&lt;/p&gt; &lt;p&gt;Oops - sorry, different speech. The point is, make sure your backup plan is running and can be restored before you start making wholesale changes to the environments or investing months of development time into a custom SharePoint app.&lt;/p&gt; &lt;p&gt;The list...&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Do you know your backup frequency and last successful backup?&amp;nbsp; You would be surprised how many customers call support with catastrophic failure and have no backup to recover with.  &lt;li&gt;Are you monitoring all your disks?&amp;nbsp; If you did a simple/basic all in one install is it all on one drive that you are watching?&amp;nbsp; Disk space available on WFE and SQL, common support issue is Basic install running out of drive space for SQL  &lt;li&gt;When you enumerate your site collections in your farm are the URLs correct?&amp;nbsp; Are you using localhost or servernames?&amp;nbsp; If you are are you using alternate access mappings.&amp;nbsp; AAM not set or misconfigured is common.&amp;nbsp; This is a top support issue and one to watch out for.&amp;nbsp; If you are confused about these check out the SharePoint blog which has 3 posts on what every administrator needs to know about alternate access mappings. &lt;a href="http://blogs.msdn.com/sharepoint/archive/2007/03/06/what-every-sharepoint-administrator-needs-to-know-about-alternate-access-mappings-part-1.aspx"&gt;http://blogs.msdn.com/sharepoint/archive/2007/03/06/what-every-sharepoint-administrator-needs-to-know-about-alternate-access-mappings-part-1.aspx&lt;/a&gt;  &lt;li&gt;Changing permissions behind the back of SharePoint on the installation directories, home directories, where the app pool doesn't have appropriate permissions can and will break the farm silently (browse/read access often will look good) without you realizing it - Permissions check, do all of the managed directories owned by WSS/MOSS have default or expected permissions configured  &lt;li&gt;Ensure that each content database in the manage web application manage databases has a server assigned for indexing - Search, are content databases assigned to an indexer (WSS Search top support issue)  &lt;li&gt;Kerberos more secure right?&amp;nbsp; It is more complex, no question, but it can be worth it.&amp;nbsp; If Kerberos is enabled does customer have an SPN configured, &lt;a href="http://support.microsoft.com/kb/832769"&gt;http://support.microsoft.com/kb/832769&lt;/a&gt;  &lt;li&gt;One of the more common problems I've seen... Status of service accounts, are any service account passwords expired or otherwise broken, &lt;a href="http://support.microsoft.com/kb/934838"&gt;http://support.microsoft.com/kb/934838&lt;/a&gt;  &lt;li&gt;If large file support is enable are the myriad of configuration settings to make this work configured, &lt;a href="http://support.microsoft.com/?id=925083"&gt;http://support.microsoft.com/?id=925083&lt;/a&gt;  &lt;li&gt;Scan the SharePoint farm and report if any of our capacity limits are exceeded, &lt;a href="http://technet2.microsoft.com/WindowsServer/WSS/en/library/2aa12954-2ea7-475c-9dce-663f543820811033.mspx"&gt;http://technet2.microsoft.com/WindowsServer/WSS/en/library/2aa12954-2ea7-475c-9dce-663f543820811033.mspx&lt;/a&gt;  &lt;li&gt;SMTP relay or anonymous relay - Ensure outgoing email server settings set correctly and can we relay through specified SMTP server (you can verify by using telnet to the SMTP server and if we get 220 then it's successful)  &lt;li&gt;Is Client Integration turned on even though we don’t support it with Forms Auth (warning/caution)  &lt;li&gt;SQL and OS versions - Is SharePoint deployed on a supported OS.&amp;nbsp; Common problem is for MOSS customer dose not have SQL 2005 SP 2 installed and Search breaks, WSS 3.0/MOSS 2007 is not supported on Windows 2000/NT 4.0  &lt;li&gt;Does web server administrator have admin permissions on SQL server to run stsadm?&amp;nbsp; Stsadm runs in context of logged in user and must have service account level permissions on SQL to run commands.&amp;nbsp; Also ensure app pool account when switching has appropriate access.  &lt;li&gt;Remember, remember to install prerequisite service packs and run prescan as successful before upgrade.  &lt;li&gt;Ensure that a domain account is used to connect to the databases prior to upgrade  &lt;li&gt;Check if /3GB switch is enabled in boot.ini, WSS does not support /3GB switch &lt;a href="http://support.microsoft.com/kb/933560"&gt;http://support.microsoft.com/kb/933560&lt;/a&gt; &lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Cya!&lt;/p&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-2002783330315708341?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/2002783330315708341/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=2002783330315708341' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/2002783330315708341'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/2002783330315708341'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2007/09/top-support-calls-for-moss-07-wss-3.html' title='Top support calls for MOSS 07 / WSS 3'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-5024421181120294611</id><published>2007-09-16T01:34:00.001+10:00</published><updated>2007-09-16T01:34:38.211+10:00</updated><title type='text'>How to change user accounts that run MOSS Services &amp; App Pools</title><content type='html'>&lt;p&gt;As part of implementing some improvements to a client's MOSS Enterprise site that I'd recently recommended they undertake, I had to change the accounts that were being used in their environments to ones that were independent from each environment. I've been caught too many times by a developer doing some development who manages to miss-key the AD User's password into a config file / registry key. The app being developed is then fired up and promptly locks the account out. At the same time, another unrelated system in another part of the building stops working. Why? Because the same AD Account was used in critical aspects of both systems. &lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;em&gt;Never Ever Use The Same Accounts to Run Your Development And Production Environments!!!&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;Anyway, they got me back to make this change because it can be tricky. Sure enough, it was. The biggest challenge when making wholesale changes to the service / app pool accounts is that if the farm account update fails to work properly, you then struggle to perform the rest of the changes because the security decryption keys MOSS uses to keep a track of passwords is corrupted. Oh man!&lt;/p&gt; &lt;p&gt;So I fired off the first change and waited... and waited... the WWW Publishing service failed to shut down properly, so after 20 minutes I figured I'd reboot the server and try it again (looking back, I may have saved some time by using pskill to terminate the process instead of rebooting, but it would have resulted in the same issue). Then in the event log, I started to see a proliferation of these error messages - "Error during encryption or decryption. System error code 997" and "An unhandled exception occurred in the user interface.Exception Information: Unable to connect to the remote server"&lt;/p&gt; &lt;p&gt;Once in this precarious position, Microsoft's recommended solution - for the closest example of something that comes close to the error message - is to rebuild the config database (&lt;a href="http://support.microsoft.com/kb/927156"&gt;http://support.microsoft.com/kb/927156&lt;/a&gt;) - but it's not much help onsite at a client's place... luckily there are some alternatives. Once the Farm account is half-changed, you cannot successfully change the rest of the accounts through the UI... but stsadm is the answer. Joel has the information on this page - &lt;a title="http://blogs.msdn.com/joelo/archive/2006/08/22/712945.aspx" href="http://blogs.msdn.com/joelo/archive/2006/08/22/712945.aspx"&gt;http://blogs.msdn.com/joelo/archive/2006/08/22/712945.aspx&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Just like using a sledgehammer to swat a fly, stsadm is not encumbered by a user interface or any of those nice-to-have things - it seems to be built around the premise "If it doesn't work, force it. If it breaks, it needed reinstalling anyway!" :)&lt;/p&gt; &lt;p&gt;So with stsadm, I went through the following steps:&lt;/p&gt; &lt;h4&gt;First, to fix the central admin account's decryption key used to drive the app pools, complete the following on the server running the Admin site - &lt;/h4&gt; &lt;ul&gt; &lt;li&gt;From the bin directory, run &lt;font face="courier new"&gt;&lt;font size="2"&gt;Stsadm –o updatefarmcredentials –userlogin &amp;lt;domain\name&amp;gt; -password &amp;lt;password&amp;gt;&lt;/font&gt;&lt;/font&gt;  &lt;li&gt;You may need to then run&lt;font face="courier new" size="2"&gt; iisreset /noforce&lt;/font&gt;.  &lt;li&gt;You will have to remove the "Administration Application Pool Credential Deployment" job that gets created using the timer job definitions page (otherwise it will prevent you from progressing through the next steps).  &lt;li&gt;Then to update the other moss site app pools -  &lt;ul&gt; &lt;li&gt;&lt;font face="courier new" size="2"&gt;Stsadm –o updateaccountpassword –userlogin &amp;lt;domain\name&amp;gt; -password &amp;lt;password&amp;gt;&lt;/font&gt; &lt;/li&gt;&lt;/ul&gt; &lt;li&gt;If you happen to use the same account to drive the admin site and the web site(s) (naughty) then you will need the noadmin switch eg  &lt;ul&gt; &lt;li&gt;&lt;font face="Courier New" size="2"&gt;Stsadm –o updateaccountpassword –userlogin &amp;lt;domain\name&amp;gt; -password &amp;lt;password&amp;gt; [-noadmin]&lt;/font&gt; &lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt; &lt;h4&gt;On each other server in the farm, you will need to perform the following steps - &lt;/h4&gt; &lt;ul&gt; &lt;li&gt;As each server stores an encrypted version of the admin account password, you will also need to execute the following command for the account used to run the admin app pool -  &lt;ul&gt; &lt;li&gt;&amp;nbsp;&lt;font face="Courier New" size="2"&gt;stsadm –o updatefarmcredentials –userlogin &amp;lt;domain\name&amp;gt; -password &amp;lt;newpassword&amp;gt; -local&lt;/font&gt;&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;The Web site app pools for the non-admin sites should take care of themselves, but if not then just use the "UpdateAccountPassword" feature on the server to resolve the issue.&lt;/li&gt;&lt;/ul&gt; &lt;h4&gt;Then you will need to fix the SSP's...&lt;/h4&gt; &lt;ul&gt; &lt;li&gt;From the server running the SSP you need to run the following command for each SSP that uses credentials to operate (like ECS and FS), except for the search services (they're next) -  &lt;ul&gt; &lt;li&gt;&lt;font face="Courier New" size="2"&gt;stsadm -o editssp -title &amp;lt;ssp name from the farm's Shared Services page&amp;gt; -ssplogin &amp;lt;domain\name&amp;gt; -ssppassword &amp;lt;password&amp;gt;&lt;/font&gt; &lt;/li&gt;&lt;/ul&gt; &lt;li&gt;You then run the following commands for the search services  &lt;ul&gt; &lt;li&gt;&lt;font face="Courier New" size="2"&gt;stsadm -o osearch -farmserviceaccount &amp;lt;OSS searchserviceaccount&amp;gt; -farmservicepassword &amp;lt;OSS password&amp;gt;&lt;/font&gt;&lt;br&gt;and...  &lt;li&gt;&lt;font face="Courier New" size="2"&gt;stsadm -o spsearch -farmserviceaccount &amp;lt;WSS searchserviceaccount&amp;gt; -farmservicepassword &amp;lt;WSS password&amp;gt;&lt;/font&gt;&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;You may now need to go into the search service section of the UI and change the indexing and crawling accounts if required.  &lt;li&gt;Lastly, the SSO Service has to be changed using the Services Applet in the Administration Control section of the server it runs on.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;At this point, an IISReset is probably a good idea (a reboot is an even better idea) - once this is done, attempt to access each affected area of the farm and verify that they are all now functioning correctly. If you still see some issues, use the relevant part of this guide to try and reset the credential information. Eventually (after 4 attempts) I moved past the first set of steps to change the Admin site app pool account - the rest was plain sailing from there.&lt;/p&gt; &lt;p&gt;Hope this is of help to someone one day :)&lt;/p&gt; &lt;p&gt;Brad&lt;/p&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-5024421181120294611?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/5024421181120294611/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=5024421181120294611' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/5024421181120294611'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/5024421181120294611'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2007/09/how-to-change-user-accounts-that-run.html' title='How to change user accounts that run MOSS Services &amp;amp; App Pools'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-6266908711174617829</id><published>2007-09-16T01:33:00.001+10:00</published><updated>2007-09-16T01:33:40.164+10:00</updated><title type='text'>Sydney SharePoint User Group Presentation - 21st August</title><content type='html'>&lt;p&gt;Hi to everyone who attended the &lt;a href="http://sps.uniqueworld.net/Sydney/default.aspx" target="_blank"&gt;Sydney SharePoint user group in August&lt;/a&gt; - it was great to be able to present and share information with people interested in the "application development" side of SharePoint 2007, particularly in the Business Data Catalog. For those of you that missed it, I have the Slide deck &lt;a href="http://www.echotechnology.com/downloads/SharePoint%20user%20group%20-%20BDC.pptx" target="_blank"&gt;here&lt;/a&gt;. I'll be up at the Australian Partner Conference this week, so if you are there as well, give me a call and we'll have a chat over a beer or 2.&lt;/p&gt; &lt;p&gt;While thinking through the demonstrations of the BDC I've seen in the past, I feel that I've seen too many BDC demos connecting to a SQL Adventureworks database and present information on Bicycle sales. I believe that that while this is a way of accessing data, the ability to extract and present data from a SQL database thru a system that runs on a SQL database is not much of a stretch... and there aren't many people who have made their fortunes selling bikes. When doing a technology demonstration I always try to build a plausible scenario that has applications in most businesses... so I went with a:&lt;/p&gt; &lt;p&gt;VPC running 2003 Server, SQL 2005 standard, MOSS 2007 Enterprise, Office 2007 Pro Plus and a HR database on an Oracle Database server (yes and with all that stuff on a VPC it still went reasonably quick).&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.bdcmetaman.com/" target="_blank"&gt;Using BDC Meta Man&lt;/a&gt; (an excellent program which is sure to save you the cost of the application in time even if you use it once!) I queried the Oracle HR database and pulled out information that allowed me to look at the company's departments that were located in a particular geographic location and the staff members for each department (like 3-stage drill-down). &lt;br&gt;The night before, I'd also built a staff member view that displayed their personnel information, the department they work for, their current job role, job history within the company and their manager's details. That took about an hour to do (at 1am, so during normal business hours I would probably have done it faster ;) ). &lt;br&gt;I linked to this "profile page" from any list that displayed an employee's name, allowing the user of the system to drill down into a staff member profile from any high-level company attribute (eg from a job description or from a geographic location or from a department or from "reporting to" style queries).&lt;br&gt;I also created an action that allowed the HR assistant the ability to search Seek.com.au for the job role she was interested in looking up - so that she could use other company's recruitment pitches to add value to her own seek.com.au ads.&lt;/p&gt; &lt;p&gt;As part of the presentation I also highlighted that you could add metadata from the BDC into lists (say, writing invoices for a customer, you just pick the customer name and add all customer information to the document as metadata - and with some InfoPath forms designer work on the document information panel you can even link the BDC metadata into the word document) as well as search on it, build in custom security access controls as part of the BDC's extensibility, supplement data into your MOSS user profiles and a few other nifty things it can do but may not be immediately apparent.&lt;/p&gt; &lt;p&gt;Anyway, if you came along and you are interested in hearing more about a particular aspect of the BDC please contact me. If you have some ideas for other presentations relating to MOSS at the SharePoint user group, please let me know. At this stage I'll either do 2005 mirroring failover (and look at automation of the failover process) or InfoPath forms tricks &amp;amp; tips. If you are interested in the tools I used during the demonstration (or that I talked about here) you can find more information at:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://www.bdcmetaman.com/default.aspx" target="_blank"&gt;BDC MetaMan&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.oracle.com/technology/software/products/database/xe/htdocs/102xewinsoft.html" target="_blank"&gt;Oracle Database server &amp;amp; Sample HR Database&lt;/a&gt;  &lt;li&gt;&lt;a href="http://office.microsoft.com/products" target="_blank"&gt;Office 2007&lt;/a&gt;  &lt;li&gt;&lt;a href="http://office.microsoft.com/en-us/sharepointserver/FX100492001033.aspx" target="_blank"&gt;SharePoint Server 2007 Enterprise&lt;/a&gt;  &lt;li&gt;&lt;a href="https://msdn2.microsoft.com/en-us/library/ms546541.aspx" target="_blank"&gt;BDC Overview&lt;/a&gt; &amp;amp; the &lt;a href="http://msdn2.microsoft.com/en-us/office/bb251754.aspx" target="_blank"&gt;BDC Information Centre&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;***BDC Meta Man Update*** - it looks like Microsoft have released an application that also builds BDC application definition files as part of the SDK for free - however, it is lacking some key features such as the ability to create App def files that include the XML to write data back to the data source, an easy to use drag &amp;amp; drop UI or Support for SQL Stored Procedures. &lt;a href="http://sharepointnick.com/default.aspx" target="_blank"&gt;Nick (Tha man for BDC Meta Man)&lt;/a&gt; sums the release of this Microsoft product &lt;a href="http://sharepointnick.com/blog/default.aspx" target="_blank"&gt;up in his blog&lt;/a&gt;. Lastly, having first-hand experienced the support that comes with BDC Meta Man (support for how to hook up Oracle databases to the BDC that is, not even on his own product) vs what you'll get support-wise for a free sdk mini-app... I'll be surprised if he sees any significant shift in sales.&lt;/p&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-6266908711174617829?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/6266908711174617829/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=6266908711174617829' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/6266908711174617829'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/6266908711174617829'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2007/09/sydney-sharepoint-user-group.html' title='Sydney SharePoint User Group Presentation - 21st August'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-570665711970877644</id><published>2007-09-16T01:32:00.003+10:00</published><updated>2007-09-16T01:32:59.061+10:00</updated><title type='text'>Virtual Server 2005 &amp; Virtual PC Management Scripts</title><content type='html'>&lt;p&gt;Microsoft have released some VB scripts that allow administrators to manage virtual servers using batch files / scheduled tasks. This would come in handy if (for example) you had a demo site on a virtual server that you wanted to reset every 48 hours - or if you were running some online training environments, you could use it and interact with it using asp or .NET.&lt;/p&gt; &lt;p&gt;The scripts cover:&lt;/p&gt; &lt;p&gt;Access rights &amp;amp; Security, including:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/access/vsacvb01.mspx"&gt;List Current User Virtual Server Access Rights&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/access/vsacvb02.mspx"&gt;List Virtual Server Access Rights&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/access/vsacvb03.mspx"&gt;Search for a Virtual Server Security Entry&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/access/vsacvb04.mspx"&gt;Search for Virtual Server Access Rights&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Virtual Machine &amp;amp; Virtual Server properties, including:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/admin/vsadvb15.mspx"&gt;Create a Virtual Machine&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/admin/vsadvb16.mspx"&gt;Delete a Virtual Machine&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/admin/vsadvb17.mspx"&gt;Discard the Saved State of a Virtual Machine&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/admin/vsadvb18.mspx"&gt;Install Virtual Machine Additions&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/admin/vsadvb01.mspx"&gt;List Guest Operating System Information for a Virtual Machine&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/admin/vsadvb02.mspx"&gt;List Basic Virtual Machine Information&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/admin/vsadvb03.mspx"&gt;List Virtual Machine Keyboard Information&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/admin/vsadvb04.mspx"&gt;List Virtual Machine Mouse Information&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/admin/vsadvb05.mspx"&gt;List Virtual Machine Parallel Port Information&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/admin/vsadvb06.mspx"&gt;List Virtual Machine Serial Port Information&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/admin/vsadvb07.mspx"&gt;List Virtual Server Accountant Information&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/admin/vsadvb08.mspx"&gt;List Virtual Server Display Information&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/admin/vsadvb09.mspx"&gt;List Virtual Server Host Information&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/admin/vsadvb10.mspx"&gt;List Virtual Server Properties&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/admin/vsadvb11.mspx"&gt;List Virtual Server Security Information&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/admin/vsadvb12.mspx"&gt;List Virtual Server Support Driver Information&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/admin/vsadvb19.mspx"&gt;List Virtual Server Tasks&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/admin/vsadvb13.mspx"&gt;Modify a Virtual Machine Property&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/admin/vsadvb20.mspx"&gt;Modify Virtual Machine Scheduling Parameters&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/admin/vsadvb14.mspx"&gt;Modify Virtual Server Display Dimensions&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/admin/vsadvb21.mspx"&gt;Pause a Virtual Machine&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/admin/vsadvb22.mspx"&gt;Register a Virtual Machine&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/admin/vsadvb23.mspx"&gt;Resume a Virtual Machine&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/admin/vsadvb24.mspx"&gt;Return Virtual Machine Mouse Button Status&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/admin/vsadvb25.mspx"&gt;Save the Virtual Machine State&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/admin/vsadvb26.mspx"&gt;Search for a Virtual Machine&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/admin/vsadvb27.mspx"&gt;Shut Down the Guest Operating System on a Virtual Machine&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/admin/vsadvb28.mspx"&gt;Start a Virtual Machine&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/admin/vsadvb29.mspx"&gt;Turn Off a Virtual Machine&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/admin/vsadvb30.mspx"&gt;Unregister a Virtual Machine&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Virtual Server Client Information, including:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/client/vsclvb01.mspx"&gt;Click a Mouse Button in a Virtual Machine&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/client/vsclvb02.mspx"&gt;Click a Mouse Button in a Virtual Machine&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/client/vsclvb03.mspx"&gt;Display the Client Control About Box&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/client/vsclvb04.mspx"&gt;List Virtual Server Client Control Connection Information&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/client/vsclvb05.mspx"&gt;List Virtual Server Client Control Properties&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/client/vsclvb06.mspx"&gt;List Virtual Server VMRC Authenticators&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/client/vsclvb07.mspx"&gt;Press a Key in a Virtual Machine&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/client/vsclvb08.mspx"&gt;Type ASCII Text in a Virtual Machine&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Virtual Disk Drive Management, including:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/disks/vsdsvb26.mspx"&gt;Add a DVD Drive to a Virtual Machine&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/disks/vsdsvb01.mspx"&gt;Add a Hard Disk Connection to a Virtual Machine&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/disks/vsdsvb02.mspx"&gt;Add a SCSI Controller to a Virtual Machine&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/disks/vsdsvb03.mspx"&gt;Attach a DVD Host Drive to all Virtual Machines&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/disks/vsdsvb04.mspx"&gt;Attach a DVD Image to all Virtual Machines&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/disks/vsdsvb05.mspx"&gt;Attach a Floppy Drive to All Virtual Machines&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/disks/vsdsvb06.mspx"&gt;Attach a Floppy Image to All Virtual Machines&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/disks/vsdsvb07.mspx"&gt;Compact a Virtual Hard Disk&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/disks/vsdsvb08.mspx"&gt;Create a Floppy Image&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/disks/vsdsvb09.mspx"&gt;Create a Virtual Server Dynamic Hard Disk&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/disks/vsdsvb10.mspx"&gt;Create a Virtual Server Fixed Hard Disk&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/disks/vsdsvb11.mspx"&gt;Discard Virtual Server Undo Disks&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/disks/vsdsvb12.mspx"&gt;List Virtual Machine DVD Information&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/disks/vsdsvb13.mspx"&gt;List Virtual Machine Floppy Drive Information&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/disks/vsdsvb14.mspx"&gt;List Virtual Machine SCSI Controller Information&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/disks/vsdsvb15.mspx"&gt;List Virtual Server Floppy Image Type&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/disks/vsdsvb16.mspx"&gt;List Virtual Server Hard Disk Connection Information&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/disks/vsdsvb17.mspx"&gt;List Virtual Server Hard Disk Information&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/disks/vsdsvb18.mspx"&gt;Merge Virtual Machine Undo Disks&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/disks/vsdsvb19.mspx"&gt;Release a Virtual Machine DVD Image&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/disks/vsdsvb20.mspx"&gt;Release a Virtual Machine Floppy Drive&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/disks/vsdsvb21.mspx"&gt;Release a Virtual Machine Floppy Image&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/disks/vsdsvb22.mspx"&gt;Release a Virtual Machine Host Drive&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/disks/vsdsvb23.mspx"&gt;Remove a Virtual Machine DVD Drive&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/disks/vsdsvb24.mspx"&gt;Remove a Virtual Machine SCSI Controller&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/disks/vsdsvb25.mspx"&gt;Remove a Virtual Server Hard Disk Connection&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;and Virtual Network management:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/network/vsnwvb01.mspx"&gt;Add a Network Adapter to a Virtual Machines&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/network/vsnwvb02.mspx"&gt;Attach a Virtual Network to a Virtual Network Adapter&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/network/vsnwvb03.mspx"&gt;Create a Virtual Network&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/network/vsnwvb04.mspx"&gt;Delete a Virtual Network&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/network/vsnwvb05.mspx"&gt;Delete All Virtual Machine Network Adapters&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/network/vsnwvb06.mspx"&gt;Detach a Network Adapter from a Virtual Machine&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/network/vsnwvb07.mspx"&gt;List All Virtual Networks&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/network/vsnwvb08.mspx"&gt;List Network Adapter Information for All Virtual Machines&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/network/vsnwvb09.mspx"&gt;List Virtual DHCP Server Information&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/network/vsnwvb10.mspx"&gt;Modify a Virtual Network Property&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/network/vsnwvb11.mspx"&gt;Modify Virtual Server DHCP Lease Times&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/network/vsnwvb12.mspx"&gt;Register a Virtual Network&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/network/vsnwvb13.mspx"&gt;Search for a Virtual Network&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/technet/scriptcenter/scripts/vs/network/vsnwvb14.mspx"&gt;Unregister a Virtual Network&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-570665711970877644?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/570665711970877644/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=570665711970877644' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/570665711970877644'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/570665711970877644'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2007/09/virtual-server-2005-virtual-pc.html' title='Virtual Server 2005 &amp;amp; Virtual PC Management Scripts'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-4833460968911554806</id><published>2007-09-16T01:32:00.001+10:00</published><updated>2007-09-16T01:32:16.706+10:00</updated><title type='text'>w00t! File Storage Outside SQL!</title><content type='html'>&lt;p&gt;I have lost count of the amount of people from enterprise customers that ask me "is there a way to store the files outside SQL and only store the metadata and site logic inside sql? The answer used to be:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Try HP StorageWorks RISS servers... or  &lt;li&gt;Yes if you use EMC's&amp;nbsp; Senterra product.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Well, goodbye 3rd party products and hello Microsoft Supported API for storing files outside SQL! Yes, it's finally here - there is a hotfix that can be &lt;a href="http://support.microsoft.com/kb/937901/" target="_blank"&gt;requested from here&lt;/a&gt; which &lt;a href="http://support.microsoft.com/kb/938499/" target="_blank"&gt;provides minimal details&lt;/a&gt;, but if you're not keen on a hotfix to implement added functionality then you'll have to wait for the first service pack to come along. But at least you now know it's on its way, right!&lt;/p&gt; &lt;p&gt;The hotfix came out at the end of May, so it's been around for a little while. If someone has had a shot at using it, feel free to post a comment on how you found the API featureset. I imagine that an API .chm file or some online help will venture out around the same time as the service pack is released.&lt;/p&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-4833460968911554806?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/4833460968911554806/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=4833460968911554806' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/4833460968911554806'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/4833460968911554806'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2007/09/w00t-file-storage-outside-sql.html' title='w00t! File Storage Outside SQL!'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-6984735818836076938</id><published>2007-09-16T01:26:00.003+10:00</published><updated>2007-09-16T01:26:35.425+10:00</updated><title type='text'>Bad Request (Request Header too long)</title><content type='html'>&lt;p&gt;Saw this error pop up irregularly at a client's site recently. It appeared as though something in Excel Calculation Services (ECS) was causing the Internet Explorer Request header to grow to a size that was larger than what the Web Front End server was prepared to handle. &lt;/p&gt; &lt;p&gt;I did not get an opportunity to investigate the root cause (deadlines were looming) but I believe the error was Kerberos-related (as it appeared after we enabled Kerberos) and that it had something to do with the 20-odd windows open to related ECS pages from the same site (perhaps the Kerberos ticket grew to a size that stopped it from working). The problem went away by using a new browser window, so the issue was session-based as well.&lt;/p&gt; &lt;p&gt;After adjusting both of these registry values from 32767 to 65534 (FFFE) the problem went away.&lt;/p&gt; &lt;p&gt;The 2 registry keys to fix this issue are:&lt;/p&gt; &lt;p&gt;HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\HTTP\Parameters\  &lt;p&gt;MaxFieldLength&lt;br&gt;16384&lt;br&gt;64 - 65534 (64kb) bytes&lt;br&gt;Sets an upper limit for each header. See MaxRequestBytes. This limit translates to approximately 32k characters for a URL.  &lt;p&gt;MaxRequestBytes&lt;br&gt;16384&lt;br&gt;256 - 16777216 (16MB) bytes&lt;br&gt;Determines the upper limit for the total size of the Request line and the headers. &lt;br&gt;Its default setting is 16KB. If this value is lower than MaxFieldLength, the MaxFieldLength value is adjusted.  &lt;p&gt;Have a great weekend!&lt;/p&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-6984735818836076938?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/6984735818836076938/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=6984735818836076938' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/6984735818836076938'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/6984735818836076938'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2007/09/bad-request-request-header-too-long.html' title='Bad Request (Request Header too long)'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-5168234043249880333</id><published>2007-09-16T01:26:00.001+10:00</published><updated>2007-09-16T01:26:07.713+10:00</updated><title type='text'>Why do repeated full Crawls using WSS / MOSS?</title><content type='html'>&lt;p&gt;I just saw a good article from Mike Taghizadeh describing reasons to do a full crawl at regular intervals. Good article, as I knew about the first 2 reasons and the second last one, but the third one really caught my eye - The crawler does not detect updates in SharePoint ASPX pages - so update a page's content or change a view, and these changes will only get picked up during a full crawl.&lt;/p&gt; &lt;p&gt;When planning your search &amp;amp; indexing schedule, take this into account and you will probably have to set up daily full indexes for SharePoint sites (after hours, of course).&lt;/p&gt; &lt;p&gt;From &lt;a href="http://feeds.feedburner.com/~r/sharepointmsblogs/~3/134295959/reasons-for-a-full-crawl.aspx" target="_blank"&gt;Mike's article&lt;/a&gt; (&lt;a href="http://feeds.feedburner.com/~r/sharepointmsblogs/~3/134295959/reasons-for-a-full-crawl.aspx" target="_blank"&gt;http://feeds.feedburner.com/~r/sharepointmsblogs/~3/134295959/reasons-for-a-full-crawl.aspx&lt;/a&gt;):&lt;br&gt;____________________________________________________________________&lt;/p&gt; &lt;p&gt;I have been asked few times, the reasons why MOSS Search would need to do a full crawl. The following information has been taken out from one the whitepapers on TechNet and does a good job of explaining this:&lt;/p&gt; &lt;p&gt;&lt;b&gt;Reasons for an SSP administrator to do a full crawl include:&lt;/b&gt;  &lt;ul&gt; &lt;li&gt;One or more QFE or service pack was installed on servers in the farm. See the instructions for the hotfix or service pack for more information.  &lt;li&gt;An SSP administrator added a new managed property.  &lt;li&gt;To re-index ASPX pages on Windows SharePoint Services 3.0 or Office SharePoint Server 2007 sites.  &lt;p&gt;Note: The crawler cannot discover when ASPX pages on Windows SharePoint Services 3.0 or Office SharePoint Server 2007 sites have changed. Because of this, incremental crawls do not re-index views or home pages when individual list items are deleted. We recommend that you periodically do full crawls of sites that contain ASPX files to ensure that these pages are re-indexed.&lt;/p&gt; &lt;li&gt;To resolve consecutive incremental crawl failures. In rare cases, if an incremental crawl fails one hundred consecutive times at any level in a repository, the index server removes the affected content from the index.  &lt;li&gt;One or more crawl rules have been added or modified  &lt;li&gt;To repair a corrupted index&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;The system does a full crawl even when an incremental crawl is requested under the following circumstances:  &lt;ul&gt; &lt;li&gt;An SSP administrator stopped the previous crawl.  &lt;li&gt;A content database was restored.  &lt;li&gt;A full crawl of the site has never been done.  &lt;li&gt;To repair a corrupted index. Depending upon the severity of the corruption, the system might attempt to perform a full crawl if corruption is detected in the index&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;__________________________________________________________________&lt;/p&gt; &lt;p&gt;There's also a comment at the bottom of the article that indicates that you also need to do a Full Index in order to pull down the new ACL's of a file if the access list was changed but the file was not - otherwise it's possible that a user would see a search result linking to a file they do not have access to view (so the security trimming fails).&lt;/p&gt; &lt;p&gt;Bye :)&lt;/p&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-5168234043249880333?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/5168234043249880333/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=5168234043249880333' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/5168234043249880333'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/5168234043249880333'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2007/09/why-do-repeated-full-crawls-using-wss.html' title='Why do repeated full Crawls using WSS / MOSS?'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-3630255015356868792</id><published>2007-09-16T01:25:00.001+10:00</published><updated>2007-09-16T01:25:12.485+10:00</updated><title type='text'>The Dreaded Double-hop dilemma and it's dynamic destroyer, Kerberos</title><content type='html'>&lt;p&gt;The "Double-hop" issue: Back in the good old days, Microsoft developed a way of authenticating clients (users) against a common database of User Name / Password pairs. They called it NTLM (for NT Lan Manager, as it managed authentication across a Lan... and they were prefixing everything back in those days with the letters NT... like NTFS, NTDS, NTCR, NTLDR and NTLM... something about corporate branding I suppose.) Back in those days, multi-tiered environments normally used either "process" accounts or an alternate form of authenticating between the first software tier and the second software tier (like a SQL account). Too easy.&lt;/p&gt; &lt;p&gt;Unfortunately, it wasn't long before developers wanted to start passing through the user's authentication details to a back-end system so that the data was secure as well as the interface to the data (Kind of makes sense - if an account is compromised, you only have the rights of the compromised account on the target system, rather than a god account *cough* sa, blank pwd *cough*). However, security restrictions on the ability for accounts to impersonate other accounts (or perhaps an architectural oversight ) meant that the NTLM authentication system was not secure enough to allow this sort of caper - so once you authenticate to a server, you need to use another account (programmatically) to get to the back-end data.&lt;/p&gt; &lt;p&gt;So how do you tell you're suffering from double-hop madness? There's a couple of dead giveaways. &lt;/p&gt; &lt;ul&gt; &lt;li&gt;First, the web application works the way you intended it to when you access it from the web server, where your access is either user or power user - but from your local machine you get access denied (Because you are already on the Web server, the first "Hop" is to the back end database. When you're on your workstation, your first "Hop" is to the front end web server).  &lt;li&gt;Second, you open up the web application page successfully but the back-end part of the application keeps getting requests for anonymous access in the security event logs every time you refresh the page.  &lt;li&gt;You are constantly getting prompted to log in when accessing a site, even though you are entering valid credentials (although this can mean other things as well).&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Kerberos was created to be more secure and faster than NTLM - and to fill the double-hop void... but by default, even it does not allow accounts to impersonate other accounts unless you explicitly force them to do so. That's why you need to allow the service accounts of the web application to impersonate the user's account that is currently logged into it.&lt;/p&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-3630255015356868792?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/3630255015356868792/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=3630255015356868792' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/3630255015356868792'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/3630255015356868792'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2007/09/dreaded-double-hop-dilemma-and-it.html' title='The Dreaded Double-hop dilemma and it&amp;#39;s dynamic destroyer, Kerberos'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-2235693466154923156</id><published>2007-09-16T01:24:00.001+10:00</published><updated>2007-09-16T01:24:29.520+10:00</updated><title type='text'>So you've Decided to use the Content Query Web Part... Now What?</title><content type='html'>&lt;p&gt;Here are some articles on how to use the Content Query Web Part - probably the most underutilized web part in MOSS Standard Edition (OF course the most underutilized parts in MOSS Enterprise are probably Excel Services and the mighty BDC :) )&lt;/p&gt; &lt;p&gt;&lt;a href="http://blogs.msdn.com/ecm/archive/2006/10/25/configuring-and-customizing-the-content-query-web-part.aspx"&gt;Configuring and Customizing The Content By Query Web Part&lt;/a&gt;&lt;br&gt;&lt;a href="http://blogs.msdn.com/ecm/archive/2006/12/09/customizing-content-query-rss-feeds.aspx"&gt;Customizing Content Query RSS Feeds&lt;/a&gt;&lt;br&gt;&lt;a href="http://heathersolomon.com/blog/articles/CustomItemStyle.aspx"&gt;Customizing the Content Query Web Part and Custom Item Styles &lt;/a&gt;&lt;br&gt;&lt;a href="http://www.microsoft.com/belux/msdn/nl/community/columns/stevenvandecraen/contentquerywebpart.mspx"&gt;Customizing the Content Query Web Part XSL&lt;/a&gt;&lt;br&gt;&lt;a href="http://msdn2.microsoft.com/en-us/library/ms497457.aspx"&gt;How to: Display Custom Fields in a Content Query Web Part&lt;/a&gt;  &lt;p&gt;Cheers!&lt;br&gt;Brad&lt;/p&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-2235693466154923156?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/2235693466154923156/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=2235693466154923156' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/2235693466154923156'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/2235693466154923156'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2007/09/so-you-decided-to-use-content-query-web.html' title='So you&amp;#39;ve Decided to use the Content Query Web Part... Now What?'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-8255064658054566644</id><published>2007-06-25T22:31:00.001+10:00</published><updated>2007-06-25T22:31:59.661+10:00</updated><title type='text'>Assign Metadata to your indexed information - on Google</title><content type='html'>&lt;p&gt;Google labs has come out with a new feature called "Google Base" - it allows you to submit information in a spreadsheet form (or online) and associate metadata with it.&lt;/p&gt; &lt;p&gt;2 cool things: &lt;/p&gt; &lt;ol&gt; &lt;li&gt;If the data you are submitting does not already exist online, Google will automatically provision a site for the information to reside and upload the data to it or free  &lt;li&gt;Assign Attributes to the data you are uploading&lt;/li&gt;&lt;/ol&gt; &lt;p&gt;An example for the benefits of assigning attributes to information is recipes - Your recipe for Mango Chicken might need mangoes and chickens, but you are much more likely to get results on Supermarkets searching those items. It would be easier to search for:&lt;/p&gt; &lt;p&gt;Attrib - Recipe&lt;br&gt;containing&lt;br&gt;Attrib - Mangoes&lt;br&gt;and&lt;br&gt;Attrib - Chicken&lt;br&gt;that serves &lt;br&gt;Attrib - 4 people&lt;/p&gt; &lt;p&gt;and this resultset would be far more likely to return you exactly what you are looking for.&lt;/p&gt; &lt;p&gt;&lt;a title="http://base.google.com/base" href="http://base.google.com/base"&gt;http://base.google.com/base&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-8255064658054566644?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/8255064658054566644/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=8255064658054566644' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/8255064658054566644'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/8255064658054566644'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2007/06/assign-metadata-to-your-indexed.html' title='Assign Metadata to your indexed information - on Google'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-6678045059198890822</id><published>2007-06-25T22:27:00.001+10:00</published><updated>2007-06-25T22:29:01.014+10:00</updated><title type='text'>SharePoint 2007 hard limitations</title><content type='html'>&lt;p&gt;From Harsh's blog - &lt;a title="SharePoint 2007 Maximum Limitations" href="http://sharepoint.microsoft.com/blogs/harshc/Lists/Posts/Post.aspx?ID=4"&gt;SharePoint 2007 Maximum Limitations&lt;/a&gt;&lt;/p&gt; &lt;p&gt;These are hard limits. We hit the Site URL limit while doing a migration from 03 to 07 - when you upgrade sites, it assumes (correctly) that you do not want to keep the URL numbering system implemented by SPS and replaces it (that part of the URL) with the site name. If you have a deep tree or long site names in an upgrade that results in a URL longer than 255 characters, this will make some functionality crap out (e.g. "Open Document" works, but "Open in Word" does not from the website JavaScript menu).&lt;/p&gt; &lt;p&gt; &lt;table style="display: inline; font-size: 1em; width: 316px; border-collapse: collapse; height: 181px" border="1" unselectable="on"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td class="ms-rtetablecells" style="vertical-align: top"&gt; &lt;div&gt;&lt;strong&gt;Entity&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/strong&gt;&lt;/div&gt;&lt;/td&gt; &lt;td class="ms-rtetablecells" style="vertical-align: top"&gt; &lt;div&gt;&lt;strong&gt;Max permissible size&lt;/strong&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="ms-rtetablecells" style="vertical-align: top"&gt; &lt;div&gt;Site Name&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;/td&gt; &lt;td class="ms-rtetablecells" style="vertical-align: top"&gt; &lt;div&gt;128 characters&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="ms-rtetablecells" style="vertical-align: top"&gt; &lt;div&gt;Site URL&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;/td&gt; &lt;td class="ms-rtetablecells" style="vertical-align: top"&gt; &lt;div&gt;255 characters&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="ms-rtetablecells" style="vertical-align: top"&gt; &lt;div&gt;Display name&lt;/div&gt;&lt;/td&gt; &lt;td class="ms-rtetablecells" style="vertical-align: top"&gt; &lt;div&gt;128 characters&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="ms-rtetablecells" style="vertical-align: top"&gt; &lt;div&gt;Connection string&lt;/div&gt;&lt;/td&gt; &lt;td class="ms-rtetablecells" style="vertical-align: top"&gt; &lt;div&gt;384 characters&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="ms-rtetablecells" style="vertical-align: top"&gt; &lt;div&gt;Email address&lt;/div&gt;&lt;/td&gt; &lt;td class="ms-rtetablecells" style="vertical-align: top"&gt; &lt;div&gt;128 characters&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="ms-rtetablecells" style="vertical-align: top"&gt; &lt;div&gt;Version numbers&lt;/div&gt;&lt;/td&gt; &lt;td class="ms-rtetablecells" style="vertical-align: top"&gt; &lt;div&gt;064 characters&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="ms-rtetablecells" style="vertical-align: top"&gt; &lt;div&gt;Virtual Server Friendly Name&lt;/div&gt;&lt;/td&gt; &lt;td class="ms-rtetablecells" style="vertical-align: top"&gt; &lt;div&gt;064 characters&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="ms-rtetablecells" style="vertical-align: top"&gt; &lt;div&gt;SQL Database Name&amp;nbsp;&lt;/div&gt;&lt;/td&gt; &lt;td class="ms-rtetablecells" style="vertical-align: top"&gt; &lt;div&gt;123 characters&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="ms-rtetablecells" style="vertical-align: top"&gt; &lt;div&gt;SQL Database Column&lt;/div&gt;&lt;/td&gt; &lt;td class="ms-rtetablecells" style="vertical-align: top"&gt; &lt;div&gt;128 characters&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="ms-rtetablecells" style="vertical-align: top"&gt;SQL Database Table Name&lt;/td&gt; &lt;td class="ms-rtetablecells" style="vertical-align: top"&gt;128 characters&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="ms-rtetablecells" style="vertical-align: top"&gt;SQL Role Name&lt;/td&gt; &lt;td class="ms-rtetablecells" style="vertical-align: top"&gt;128 characters&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="ms-rtetablecells" style="vertical-align: top"&gt;Server Name&lt;/td&gt; &lt;td class="ms-rtetablecells" style="vertical-align: top"&gt;128 characters&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="ms-rtetablecells" style="vertical-align: top"&gt;Windows User Name&lt;/td&gt; &lt;td class="ms-rtetablecells" style="vertical-align: top"&gt;300 characters&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="ms-rtetablecells" style="vertical-align: top"&gt;Windows Password&lt;/td&gt; &lt;td class="ms-rtetablecells" style="vertical-align: top"&gt;300 characters&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="ms-rtetablecells" style="vertical-align: top"&gt;Dependencies per object&lt;/td&gt; &lt;td class="ms-rtetablecells" style="vertical-align: top"&gt;032 objects&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="ms-rtetablecells" style="vertical-align: top"&gt;Zone enumeration value&amp;nbsp;&lt;/td&gt; &lt;td class="ms-rtetablecells" style="vertical-align: top"&gt;004 zones&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="ms-rtetablecells" style="vertical-align: top"&gt;Default SQL command timeout&lt;/td&gt; &lt;td class="ms-rtetablecells" style="vertical-align: top"&gt;300 seconds&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="ms-rtetablecells" style="vertical-align: top"&gt;Number of simultaneous&lt;br&gt;workflows that can be run &lt;/td&gt; &lt;td class="ms-rtetablecells" style="vertical-align: top"&gt;015 &lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt; &lt;p&gt;There are also the following limitations where performance degrades after reaching these numbers (From &lt;a href="http://technet2.microsoft.com/Office/en-us/library/6a13cd9f-4b44-40d6-85aa-c70a8e5c34fe1033.mspx?mfr=true" target="_blank"&gt;Technet&lt;/a&gt;)...&lt;/p&gt; &lt;table class="dataTable" dir="ltr" cellspacing="0" cellpadding="0" border="1" unselectable="on"&gt; &lt;thead class="stdHeader"&gt; &lt;tr&gt; &lt;td class="stdHeader"&gt;&lt;strong&gt;Site object&lt;/strong&gt;&lt;/td&gt; &lt;td class="stdHeader"&gt;&lt;strong&gt;Guidelines for acceptable performance&lt;/strong&gt;&lt;/td&gt; &lt;td class="stdHeader"&gt;&lt;strong&gt;Notes&lt;/strong&gt;&lt;/td&gt; &lt;td class="stdHeader"&gt;&lt;strong&gt;Scope of impact when performance degrades&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/thead&gt; &lt;tbody&gt; &lt;tr valign="top" bgcolor="#ffffff"&gt; &lt;td&gt; &lt;p&gt;Site collection &lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;50,000 per Web application&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;Total farm throughput degrades as the number of site collections increases.&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;Farm&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr class="record" valign="top"&gt; &lt;td&gt; &lt;p&gt;Web site&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;250,000 per site collection&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;You can create a very large total number of Web sites by nesting the subsites. For example, 100 sites, each with 1000 subsites, is 100,000 Web sites. The maximum recommended number of sites and subsites is 125 sites with 2,000 subsites each, for a total of 250,000 sites.&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;Site collection&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr valign="top" bgcolor="#ffffff"&gt; &lt;td&gt; &lt;p&gt;Subsite&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;2,000 per Web site&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;The interface for enumerating subsites of a given Web site does not perform well as the number of subsites surpasses 2,000.&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;Site view&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr class="record" valign="top"&gt; &lt;td&gt; &lt;p&gt;Document&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;5 million per library&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;You can create very large document libraries by nesting folders, using standard views and site hierarchy. This value may vary depending on how documents and folders are organized, and by the type and size of documents stored.&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;Library&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr valign="top" bgcolor="#ffffff"&gt; &lt;td&gt; &lt;p&gt;Item&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;2,000 per view&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;Testing indicates a reduction in performance beyond two thousand items. Using indexing on a flat folder view can improve performance.&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;List view&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr class="record" valign="top"&gt; &lt;td&gt; &lt;p&gt;Document file size&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;50MB (2GB max*)&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;File save performance is proportional to the size of the file. The default maximum is 50 MB. This maximum is enforced by the system, but you can change it to any value up to 2 GB.&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;Library, file save performance&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr valign="top" bgcolor="#ffffff"&gt; &lt;td&gt; &lt;p&gt;List&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;2,000 per Web site&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;Testing indicates a reduction in list view performance beyond two thousand entries.&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;List view&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr class="record" valign="top"&gt; &lt;td&gt; &lt;p&gt;Field type&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;256 per list&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;This is not a hard limit, but you might experience list view performance degradation as the number of field types in a list increases.&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;List view&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr valign="top" bgcolor="#ffffff"&gt; &lt;td&gt; &lt;p&gt;Column&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;2,000 per document library&lt;/p&gt; &lt;p&gt;4,096 per list&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;This is not a hard limit, but you might experience library and list view performance degradation as the number of columns in a document library or list increases.&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;Library and list view&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr class="record" valign="top"&gt; &lt;td&gt; &lt;p&gt;Web Part&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;50 per page&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;This figure is an estimate based on simple Web Parts. The complexity of the Web Parts dictates how many Web Parts can be used on a page before performance is affected.&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;Page&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt; &lt;p&gt;The following table lists the recommended guidelines for people objects.&lt;/p&gt; &lt;table class="dataTable" dir="ltr" cellspacing="0" cellpadding="0" border="1" unselectable="on"&gt; &lt;thead class="stdHeader"&gt; &lt;tr&gt; &lt;td class="stdHeader"&gt;&lt;strong&gt;People object&lt;/strong&gt;&lt;/td&gt; &lt;td class="stdHeader"&gt;&lt;strong&gt;Guidelines for acceptable performance&lt;/strong&gt;&lt;/td&gt; &lt;td class="stdHeader"&gt;&lt;strong&gt;Notes&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/thead&gt; &lt;tbody&gt; &lt;tr valign="top" bgcolor="#ffffff"&gt; &lt;td&gt; &lt;p&gt;Users in groups &lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;2 million per Web site&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;You can add millions of people to your Web site by using Microsoft Windows security groups to manage security instead of using individual users.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr class="record" valign="top"&gt; &lt;td&gt; &lt;p&gt;User profile&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;5 million per farm&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;This number represents the number of profiles which can be imported from a directory service, such as Active Directory, into the people profile store.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr valign="top" bgcolor="#ffffff"&gt; &lt;td&gt; &lt;p&gt;Security principal&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;2,000 per Web site&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;The size of the access control list is limited to a few thousand security principals (users and groups in the Web site).&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt; &lt;p&gt;The following table lists the recommended guidelines for search objects.&lt;/p&gt; &lt;table class="dataTable" dir="ltr" cellspacing="0" cellpadding="0" border="1" unselectable="on"&gt; &lt;thead class="stdHeader"&gt; &lt;tr&gt; &lt;td class="stdHeader"&gt;&lt;strong&gt;Search object&lt;/strong&gt;&lt;/td&gt; &lt;td class="stdHeader"&gt;&lt;strong&gt;Guidelines for acceptable performance &lt;/strong&gt;&lt;/td&gt; &lt;td class="stdHeader"&gt;&lt;strong&gt;Notes&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/thead&gt; &lt;tbody&gt; &lt;tr valign="top" bgcolor="#ffffff"&gt; &lt;td&gt; &lt;p&gt;Search indexes&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;One per SSP&lt;/p&gt; &lt;p&gt;Maximum of 20 per farm&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;Office SharePoint Server 2007 supports one content index per SSP. Given that we recommend a maximum of 20 SSPs per farm, a maximum of 20 content indexes is supported. &lt;/p&gt; &lt;p&gt;Note that an SSP can be associated with only one index server and one content index. However, an index server can be associated with multiple SSPs and have a content index for each SSP.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr class="record" valign="top"&gt; &lt;td&gt; &lt;p&gt;Indexed documents &lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;50,000,000 per content index&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;Office SharePoint Server 2007 supports 50 million documents per index server. This could be divided up into multiple content indexes based on the number of SSPs associated with an index server.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr valign="top" bgcolor="#ffffff"&gt; &lt;td&gt; &lt;p&gt;Content sources &lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;500 per SSP*&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;This is a hard limit enforced by the system. &lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr class="record" valign="top"&gt; &lt;td&gt; &lt;p&gt;Start Addresses &lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;500 per content source*&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;This is a hard limit enforced by the system.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr valign="top" bgcolor="#ffffff"&gt; &lt;td&gt; &lt;p&gt;Alerts &lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;1,000,000 per SSP&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;This is the tested limit.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr class="record" valign="top"&gt; &lt;td&gt; &lt;p&gt;Scopes &lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;200 per site&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;This is a recommended limit per site. We recommend a maximum of 100 scope rules per scope. &lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr valign="top" bgcolor="#ffffff"&gt; &lt;td&gt; &lt;p&gt;Display groups &lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;25 per site&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;These are used for a grouped display of scopes through the user interface. &lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr class="record" valign="top"&gt; &lt;td&gt; &lt;p&gt;Crawl rules &lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;10,000 per SSP&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;We recommend a maximum 10,000 crawl rules irrespective of type.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr valign="top" bgcolor="#ffffff"&gt; &lt;td&gt; &lt;p&gt;Keywords&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;15,000 per site&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;We recommend a maximum of 10 Best Bets and five synonyms per keyword.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr class="record" valign="top"&gt; &lt;td&gt; &lt;p&gt;Crawled properties &lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;500,000 per SSP&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;These are properties that are discovered during a crawl.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr valign="top" bgcolor="#ffffff"&gt; &lt;td&gt; &lt;p&gt;Managed properties &lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;100,000 per SSP&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;These are properties used by the search system in queries. Crawled properties are mapped to managed properties. We recommend a maximum of 100 mappings per managed property.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr class="record" valign="top"&gt; &lt;td&gt; &lt;p&gt;Authoritative pages&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;200 per relevance level&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;This is the maximum number of sites in each of the four relevance levels.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr valign="top" bgcolor="#ffffff"&gt; &lt;td&gt; &lt;p&gt;Results removal&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;100 &lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;This is the maximum recommended number of URLs that should be removed from the system in one operation.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr class="record" valign="top"&gt; &lt;td&gt; &lt;p&gt;Crawl logs&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;50,000,000&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;Number of individual log entries in the crawl log.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt; &lt;p&gt;The following table lists the recommended guidelines for logical architecture objects.&lt;/p&gt; &lt;table class="dataTable" dir="ltr" cellspacing="0" cellpadding="0" border="1" unselectable="on"&gt; &lt;thead class="stdHeader"&gt; &lt;tr&gt; &lt;td class="stdHeader"&gt;&lt;strong&gt;Logical architecture object&lt;/strong&gt;&lt;/td&gt; &lt;td class="stdHeader"&gt;&lt;strong&gt;Guidelines for acceptable performance&lt;/strong&gt;&lt;/td&gt; &lt;td class="stdHeader"&gt;&lt;strong&gt;Notes&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/thead&gt; &lt;tbody&gt; &lt;tr valign="top" bgcolor="#ffffff"&gt; &lt;td&gt; &lt;p&gt;Shared Services Provider (SSP)&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;3 per farm (20 per farm maximum)&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr class="record" valign="top"&gt; &lt;td&gt; &lt;p&gt;Zone&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;5* per farm&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;The number of zones defined for a farm is hard coded to 5.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr valign="top" bgcolor="#ffffff"&gt; &lt;td&gt; &lt;p&gt;Web application&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;99 per SSP&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;This limit includes the number of Web applications on child farms consuming resources on this SSP.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr class="record" valign="top"&gt; &lt;td&gt; &lt;p&gt;Internet Information Services (IIS) application pool&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;8 per Web server&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;Maximum number is determined by hardware capabilities.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr valign="top" bgcolor="#ffffff"&gt; &lt;td&gt; &lt;p&gt;Site collection&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;50,000 per Web application&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr class="record" valign="top"&gt; &lt;td&gt; &lt;p&gt;Content database&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;100 per Web application&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr valign="top" bgcolor="#ffffff"&gt; &lt;td&gt; &lt;p&gt;Site collection&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;50,000 per database&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt; &lt;p&gt;The following table lists the recommended guidelines for physical objects.&lt;/p&gt; &lt;table class="dataTable" dir="ltr" cellspacing="0" cellpadding="0" border="1" unselectable="on"&gt; &lt;thead class="stdHeader"&gt; &lt;tr&gt; &lt;td class="stdHeader"&gt;&lt;strong&gt;Physical object&lt;/strong&gt;&lt;/td&gt; &lt;td class="stdHeader"&gt;&lt;strong&gt;Guidelines for acceptable performance&lt;/strong&gt;&lt;/td&gt; &lt;td class="stdHeader"&gt;&lt;strong&gt;Notes&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/thead&gt; &lt;tbody&gt; &lt;tr valign="top" bgcolor="#ffffff"&gt; &lt;td&gt; &lt;p&gt;Index servers&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;1 per SSP*&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr class="record" valign="top"&gt; &lt;td&gt; &lt;p&gt;Application servers running Excel Calculation Services&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;No limit&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr valign="top" bgcolor="#ffffff"&gt; &lt;td&gt; &lt;p&gt;Query servers&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;No limit&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;Because 100 content databases are supported for each query server, the number of query servers required per farm is based on the number of content databases in the farm. For example, if there are 500 content databases in your farm, you will need at least 5 query servers.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr class="record" valign="top"&gt; &lt;td&gt; &lt;p&gt;Web server/database server ratio&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;8 Web servers per database server&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;The scale out factor is dependent upon the mix of operations.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr valign="top" bgcolor="#ffffff"&gt; &lt;td&gt; &lt;p&gt;Web server/domain controller ratio&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;3 Web servers per domain controller&lt;/p&gt;&lt;/td&gt; &lt;td&gt; &lt;p&gt;Depending on how much authentication traffic is generated, your environment may support a greater number of Web servers per domain controller.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-6678045059198890822?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/6678045059198890822/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=6678045059198890822' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/6678045059198890822'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/6678045059198890822'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2007/06/sharepoint-2007-hard-limitations.html' title='SharePoint 2007 hard limitations'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-5229808943724685792</id><published>2007-06-24T21:16:00.001+10:00</published><updated>2007-06-24T21:16:44.335+10:00</updated><title type='text'>Questions to ask your SharePoint Hosting Provider</title><content type='html'>&lt;p&gt;&lt;a href="http://mindsharpblogs.com/kathy/archive/2007/06/22/1914.aspx" target="_blank"&gt;Here's an article&lt;/a&gt; from Kathy Hughes about some of the relevant questions that organisations need&amp;nbsp;to ask their hosting provider&amp;nbsp;if they are looking to host their SharePoint solution with a third party.&lt;/p&gt; &lt;p&gt; &lt;hr&gt;  &lt;p&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;General cost / plan structure&lt;/strong&gt;  &lt;p&gt;Does the host support MOSS platform or do they only support WSS platform?&lt;br&gt;Does the host offer both standard and enterprise MOSS licensing (enterprise covers things like BDC and Forms Services)?&lt;br&gt;Is cost based per SSP (Shared Services Provider) and if so then how many Web applications does that include, i.e. are there additional costs (including monthly costs) for each additional Web application?&lt;br&gt;Is the number of site collections under each Web application unlimited and cost-free?&lt;br&gt;Lock in period, i.e. 12 months or 24 months?&lt;br&gt;Initial setup cost?&lt;br&gt;CAL (client access license) cost/user – monthly cost?&lt;br&gt;Content storage per plan and bandwidth allowances/limitations?  &lt;p&gt;&lt;strong&gt;Administration&lt;/strong&gt;  &lt;p&gt;What degree of Administrative rights will you have, i.e. access to a Central Administration site, ability to upload custom applications and Web parts, including DLLs and solution files, able to modify the web.config file, standard access for things like SharePoint Designer 2007 customizations, ability for e-mail enabled lists and creation of DL’s within SharePoint sites? If you are limited on accessing things like the 12 Hive (for instance on a non-dedicated server and where you are sharing the server with other customers) does the host have the ability to do that on your behalf, i.e. a technical person and/or team that can help deploy custom solutions?  &lt;p&gt;&lt;strong&gt;User management&lt;/strong&gt;  &lt;p&gt;How does the host handle user accounts and user access, for instance, using a shared AD? Do they allow different authentication providers? Do they have a password reminder Web part/system in place? If you choose to use AD for authentication, what are their AD policies (if any), such as changing passwords every 2-3 months and is there extra cost involved for managing user accounts? Do they offer any ADFS for intranet users, for instance, the client’s existing AD accounts and where the client doesn’t want to have multiple logons and/or user accounts for internal users?  &lt;p&gt;&lt;strong&gt;Post-deployment plan upgrades&lt;/strong&gt;  &lt;p&gt;What are the implications (if any) of you upgrading your plan after the initial deployment, for example, from a MOSS standard license to a MOSS enterprise license? Are there any add-on costs? What if you want an additional SSP, say for geographically dispersed deployments, what will the additional cost be – the same as the first SSP cost?  &lt;p&gt;&lt;strong&gt;Backups and restores&lt;/strong&gt;  &lt;p&gt;What is their backup and restore/redundancy strategy? Are they able to restore individual files and do they have offsite file storage? What are the associated costs for data restoration?  &lt;p&gt;&lt;strong&gt;Technical support and expertise&lt;/strong&gt;  &lt;p&gt;What is the host’s knowledge of both MOSS and WSS like? Do they have a technical team to help deploy any custom solutions (on the proviso they allow custom solutions and don’t allow direct server administrative access, say to a dedicated server)? Do they have a SLA?  &lt;p&gt;&lt;strong&gt;Customization&lt;/strong&gt;  &lt;p&gt;Does the host offer any customization services and if so what are the costs? Does the host offer any additional site templates, such as the Microsoft SharePoint templates? Are there any issues with you editing sites using SharePoint Designer 2007?&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-5229808943724685792?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/5229808943724685792/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=5229808943724685792' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/5229808943724685792'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/5229808943724685792'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2007/06/questions-to-ask-your-sharepoint.html' title='Questions to ask your SharePoint Hosting Provider'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-2559333766639280426</id><published>2007-06-13T01:04:00.001+10:00</published><updated>2007-06-13T06:42:51.098+10:00</updated><title type='text'>What's cool about the new Windows Live Writer Beta?</title><content type='html'>&lt;p&gt;If you are submitting to Live Spaces or a SharePoint blog, you can cut and paste screen shots directly into the edit pane of the application and it will &lt;/p&gt;&lt;p&gt;a) create Thumbnails in your blog post&lt;/p&gt;&lt;p&gt;b) upload the original screen shots and the thumbnails&lt;/p&gt;&lt;p&gt;c) link the thumbnails in your blog post to the large images automagically. &lt;/p&gt;&lt;p&gt;That's pretty cool... and means no more excuses for not having screen shots in a technical blog. It's also the first blogging tool outside Word 2007 that supports WSS 3 Blogs - It does not support the uploading of images to Blogger though.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4720673639166721776-2559333766639280426?l=sharepointspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sharepointspot.blogspot.com/feeds/2559333766639280426/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4720673639166721776&amp;postID=2559333766639280426' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/2559333766639280426'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4720673639166721776/posts/default/2559333766639280426'/><link rel='alternate' type='text/html' href='http://sharepointspot.blogspot.com/2007/06/what-cool-about-new-windows-live-writer.html' title='What&amp;#39;s cool about the new Windows Live Writer Beta?'/><author><name>Brad Saide</name><uri>http://www.blogger.com/profile/17524267694153000790</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4720673639166721776.post-2406678448773037210</id><published>2007-06-12T23:30:00.001+10:00</published><updated>2007-06-12T23:30:46.913+10:00</updated><title type='text'>Diff'rent Strokes for Diff'rent Folks... (Keeping your users separate in WSS 3 &amp; MOSS 07)</title><content type='html'>&lt;p&gt;As part of implementing a new site for a new client onto a shared environment, there are some things that need to be done to keep
