<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:copyright="http://blogs.law.harvard.edu/tech/rss" xmlns:image="http://purl.org/rss/1.0/modules/image/">
    <channel>
        <title>Clara's Notes on Technology</title>
        <link>http://geekswithblogs.net/claraoscura/Default.aspx</link>
        <description>Notes to me and the world</description>
        <language>en</language>
        <copyright>Clara Oscura</copyright>
        <managingEditor>clara.bouzas@gmail.com</managingEditor>
        <generator>Subtext Version 0.0.0.0</generator>
        <image>
            <title>Clara's Notes on Technology</title>
            <url>http://geekswithblogs.net/images/RSS2Image.gif</url>
            <link>http://geekswithblogs.net/claraoscura/Default.aspx</link>
            <width>77</width>
            <height>60</height>
        </image>
        <item>
            <title>Attempted to use an object that has ceased to exist</title>
            <category>SharePoint</category>
            <link>http://geekswithblogs.net/claraoscura/archive/2011/04/13/144842.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/claraoscura/archive/2011/04/13/144842.aspx'&gt;http://geekswithblogs.net/claraoscura/archive/2011/04/13/144842.aspx&lt;/a&gt;&lt;/p&gt;&lt;p&gt;In one of the pages of my SharePoint application, I added a Links web part (web part that shows the contents of the a links list). Pretty simple. Then, I se tthe "XSL Link" property so that the results were customised in a certain style. Then I got this really strange error:&lt;/p&gt;
&lt;pre&gt;
Attempted to use an object that has ceased to exist. (Exception from HRESULT: 0x80030102 (STG_E_REVERTED)) &lt;/pre&gt;
&lt;p&gt;After some searching I understood it meant that the current SPContext could not be accessed. I then realised that another (custom) web part in the page was destroying the SPContext object after use, so when the Links web part (OOTB) tried to use it, it couldn't.&lt;/p&gt;
&lt;p&gt;Look for anything like&lt;/p&gt;
&lt;p&gt;&lt;font color="#2b91af" size="2" face="Consolas"&gt;&lt;font color="#2b91af" size="2" face="Consolas"&gt;&lt;font color="#2b91af" size="2" face="Consolas"&gt;&lt;font color="#0000ff"&gt;&lt;font size="2" face="Consolas"&gt;&lt;font color="#000000" size="2" face="Consolas"&gt;(&lt;/font&gt;&lt;/font&gt;&lt;font color="#2b91af" size="2" face="Consolas"&gt;&lt;font color="#2b91af" size="2" face="Consolas"&gt;&lt;font color="#2b91af" size="2" face="Consolas"&gt;SPWeb&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font size="2" face="Consolas"&gt;&lt;font size="2" face="Consolas"&gt;&lt;font color="#000000"&gt; site &lt;font size="2" face="Consolas"&gt;&lt;font size="2" face="Consolas"&gt;= &lt;/font&gt;&lt;/font&gt;&lt;font color="#2b91af" size="2" face="Consolas"&gt;&lt;font color="#2b91af" size="2" face="Consolas"&gt;&lt;font color="#2b91af" size="2" face="Consolas"&gt;SPContext&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font size="2" face="Consolas"&gt;&lt;font size="2" face="Consolas"&gt;.Current.Site) {...}&lt;/font&gt;&lt;/font&gt;&lt;/font&gt; &lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;
&lt;/p&gt;&lt;p&gt; &lt;/p&gt;
&lt;p&gt;in your custom web part code. This is wrong. You must not dispose the current site object. Instead you can use something like:&lt;/p&gt;
&lt;p&gt;&lt;font color="#0000ff" size="2" face="Consolas"&gt;&lt;font color="#0000ff" size="2" face="Consolas"&gt;&lt;font color="#0000ff" size="2" face="Consolas"&gt;using&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font size="2" face="Consolas"&gt;&lt;font size="2" face="Consolas"&gt; (&lt;/font&gt;&lt;/font&gt;&lt;font color="#2b91af" size="2" face="Consolas"&gt;&lt;font color="#2b91af" size="2" face="Consolas"&gt;&lt;font color="#2b91af" size="2" face="Consolas"&gt;SPWeb&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font size="2" face="Consolas"&gt;&lt;font size="2" face="Consolas"&gt; elevatedSite = elevatedsiteColl.OpenWeb(siteID)) { ... }&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;Guid &lt;font size="2" face="Consolas"&gt;&lt;font size="2" face="Consolas"&gt;siteID = &lt;/font&gt;&lt;/font&gt;&lt;font color="#2b91af" size="2" face="Consolas"&gt;&lt;font color="#2b91af" size="2" face="Consolas"&gt;&lt;font color="#2b91af" size="2" face="Consolas"&gt;SPContext&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;font size="2" face="Consolas"&gt;&lt;font size="2" face="Consolas"&gt;.Current.Web.ID;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Links that help me:&lt;br /&gt;
&lt;a href="http://markanthonyparker.blogspot.com/2010/07/attempted-to-use-object-that-has-ceased.html"&gt;http://markanthonyparker.blogspot.com/2010/07/attempted-to-use-object-that-has-ceased.html&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://junooni.wordpress.com/2011/02/25/attempted-to-use-an-object-that-has-ceased-to-exist-exception-from-hresult-0x80030102-stg_e_reverted/"&gt;http://junooni.wordpress.com/2011/02/25/attempted-to-use-an-object-that-has-ceased-to-exist-exception-from-hresult-0x80030102-stg_e_reverted/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;using&lt;/p&gt; &lt;img src="http://geekswithblogs.net/claraoscura/aggbug/144842.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Clara Oscura</dc:creator>
            <guid>http://geekswithblogs.net/claraoscura/archive/2011/04/13/144842.aspx</guid>
            <pubDate>Wed, 13 Apr 2011 12:53:09 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/claraoscura/comments/144842.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/claraoscura/archive/2011/04/13/144842.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/claraoscura/comments/commentRss/144842.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/claraoscura/services/trackbacks/144842.aspx</trackback:ping>
        </item>
        <item>
            <title>"Required permissions cannot be acquired" after 3rd party feature uninstalled</title>
            <category>SharePoint</category>
            <link>http://geekswithblogs.net/claraoscura/archive/2011/04/13/144841.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/claraoscura/archive/2011/04/13/144841.aspx'&gt;http://geekswithblogs.net/claraoscura/archive/2011/04/13/144841.aspx&lt;/a&gt;&lt;/p&gt;&lt;p&gt;I was looking for a web part that would provide me some sort of navigation inside wiki pages, and I installed a 3rd party farm feature. It didn't really do what I was looking for and I uninstalled it. Afterwards, any page in my site collection gave this error:&lt;/p&gt;
&lt;pre&gt;
[PolicyException: Required permissions cannot be acquired.]
   System.Security.SecurityManager.ResolvePolicy(Evidence evidence, PermissionSet reqdPset, PermissionSet optPset, PermissionSet denyPset, PermissionSet&amp;amp; denied, Boolean checkExecutionPermission) +10237966
   System.Security.SecurityManager.ResolvePolicy(Evidence evidence, PermissionSet reqdPset, PermissionSet optPset, PermissionSet denyPset, PermissionSet&amp;amp; denied, Int32&amp;amp; securitySpecialFlags, Boolean checkExecutionPermission) +97

[FileLoadException: Could not load file or assembly 'RH.WikiNavigation, Version=1.0.0.0, Culture=neutral, PublicKeyToken=bdb92ef53612be7b' or one of its dependencies. Failed to grant minimum permission requests. (Exception from HRESULT: 0x80131417)]
   System.Reflection.Assembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, Assembly locationHint, StackCrawlMark&amp;amp; stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection) +0
   System.Reflection.Assembly.InternalLoad(AssemblyName assemblyRef, Evidence assemblySecurity, StackCrawlMark&amp;amp; stackMark, Boolean forIntrospection) +416
   System.Reflection.Assembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark&amp;amp; stackMark, Boolean forIntrospection) +166
   System.Reflection.Assembly.Load(String assemblyString) +35
   System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective) +190&lt;/pre&gt;
&lt;p&gt;I tried deleting the site collection and recreating it. Same thing. Aaahh! I spent hours looking at config file searching for a reference to the 3rd party assembly.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Solution&lt;/strong&gt;: A .dll was left behind in C:\inetpub\wwwroot\wss\VirtualDirectories\80\bin. I deleted it and everything was okay again!&lt;br /&gt;
 &lt;/p&gt;
&lt;p&gt; &lt;/p&gt; &lt;img src="http://geekswithblogs.net/claraoscura/aggbug/144841.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Clara Oscura</dc:creator>
            <guid>http://geekswithblogs.net/claraoscura/archive/2011/04/13/144841.aspx</guid>
            <pubDate>Wed, 13 Apr 2011 12:37:31 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/claraoscura/comments/144841.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/claraoscura/archive/2011/04/13/144841.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/claraoscura/comments/commentRss/144841.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/claraoscura/services/trackbacks/144841.aspx</trackback:ping>
        </item>
        <item>
            <title>SharePoint Search Problem: The crawler could not communicate with the server.</title>
            <category>Search</category>
            <category>SharePoint</category>
            <link>http://geekswithblogs.net/claraoscura/archive/2011/02/07/143849.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/claraoscura/archive/2011/02/07/143849.aspx'&gt;http://geekswithblogs.net/claraoscura/archive/2011/02/07/143849.aspx&lt;/a&gt;&lt;/p&gt;&lt;p&gt;This one was not easy to solve ...&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Error&lt;/strong&gt;: The crawler could not communicate with the server. Check that the server is available and that the firewall access is configured.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Context&lt;/strong&gt;: Some pages were not crawled (giving the above error) and, what is worse, all the sub content of that site was not crawled either! (the pages were the homepages of the site)&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Solution&lt;/strong&gt;:The pages that could not be crawled due to this error contained a custom web part. This web part used default credentials for a given action. During crawling, the SP_Search account tried to perform this action but did not have the appropriate rights. This gave an error that stopped the crawling for the whole site.&lt;/p&gt;
&lt;p&gt;This blog helped me: &lt;a href="http://patricklamber.blogspot.com/2010/04/why-might-moss-crawler-not-working.html"&gt;http://patricklamber.blogspot.com/2010/04/why-might-moss-crawler-not-working.html&lt;/a&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt; &lt;img src="http://geekswithblogs.net/claraoscura/aggbug/143849.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Clara Oscura</dc:creator>
            <guid>http://geekswithblogs.net/claraoscura/archive/2011/02/07/143849.aspx</guid>
            <pubDate>Mon, 07 Feb 2011 16:08:41 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/claraoscura/comments/143849.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/claraoscura/archive/2011/02/07/143849.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/claraoscura/comments/commentRss/143849.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/claraoscura/services/trackbacks/143849.aspx</trackback:ping>
        </item>
        <item>
            <title>SharePoint Search Problem: The start address sps3://server cannot be crawled.</title>
            <category>SharePoint</category>
            <category>Search</category>
            <link>http://geekswithblogs.net/claraoscura/archive/2011/02/07/143848.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/claraoscura/archive/2011/02/07/143848.aspx'&gt;http://geekswithblogs.net/claraoscura/archive/2011/02/07/143848.aspx&lt;/a&gt;&lt;/p&gt;&lt;p&gt;With this post, I'm going to start a series on problems I have encountered with SharePoint search.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Error&lt;/strong&gt;: The start address sps3://luapp105 cannot be crawled.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Context&lt;/strong&gt;: Application 'Search_Service_Application', Catalog 'Portal_Content'&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Details&lt;/strong&gt;:&lt;br /&gt;
 Access is denied. Verify that either the Default Content Access Account has access to this repository, or add a crawl rule to crawl this repository. If the repository being crawled is a SharePoint repository, verify that the account you are using has "Full Read" permissions on the SharePoint Web Application being crawled.   (0x80041205)&lt;/p&gt;
&lt;p&gt;(Event ID: 14, Task Category: Gatherer)&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Solution&lt;/strong&gt;: give appropriate permissions to User Profile Synchronisation Service&lt;br /&gt;
&lt;a href="http://social.technet.microsoft.com/Forums/en-US/sharepoint2010setup/thread/64cdf879-f01e-4595-bc52-15975fefd18d"&gt;http://social.technet.microsoft.com/Forums/en-US/sharepoint2010setup/thread/64cdf879-f01e-4595-bc52-15975fefd18d&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://www.dotnetmafia.com/blogs/dotnettipoftheday/archive/2010/03/29/how-to-set-up-people-search-in-sharepoint-2010.aspx"&gt;http://www.dotnetmafia.com/blogs/dotnettipoftheday/archive/2010/03/29/how-to-set-up-people-search-in-sharepoint-2010.aspx&lt;/a&gt;&lt;/p&gt; &lt;img src="http://geekswithblogs.net/claraoscura/aggbug/143848.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Clara Oscura</dc:creator>
            <guid>http://geekswithblogs.net/claraoscura/archive/2011/02/07/143848.aspx</guid>
            <pubDate>Mon, 07 Feb 2011 16:02:54 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/claraoscura/comments/143848.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/claraoscura/archive/2011/02/07/143848.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/claraoscura/comments/commentRss/143848.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/claraoscura/services/trackbacks/143848.aspx</trackback:ping>
        </item>
        <item>
            <title>Default calculated value for datetime field in xml</title>
            <category>SharePoint</category>
            <link>http://geekswithblogs.net/claraoscura/archive/2011/01/21/143570.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/claraoscura/archive/2011/01/21/143570.aspx'&gt;http://geekswithblogs.net/claraoscura/archive/2011/01/21/143570.aspx&lt;/a&gt;&lt;/p&gt;&lt;p&gt;How to specify a calculated value for a SharePoint custom field in its XML schema?&lt;/p&gt;
&lt;p&gt;Like this:&lt;br /&gt;
 &amp;lt;Field&lt;br /&gt;
    Type="DateTime"&lt;br /&gt;
    Format="DateOnly"&lt;br /&gt;
    DisplayName="ExpiryDate"&lt;br /&gt;
    Required="FALSE"&lt;br /&gt;
    EnforceUniqueValues="FALSE"&lt;br /&gt;
    Group="My Group"&lt;br /&gt;
    ID="{99668BDC-5DED-46d0-A4EC-360237966F52}"&lt;br /&gt;
    StaticName="ExpiryDate"&lt;br /&gt;
    Name="ExpiryDate"&amp;gt;&lt;br /&gt;
    &amp;lt;DefaultFormula&amp;gt;[today]+60&amp;lt;/DefaultFormula&amp;gt;&lt;br /&gt;
  &amp;lt;/Field&amp;gt;&lt;br /&gt;
 &lt;/p&gt; &lt;img src="http://geekswithblogs.net/claraoscura/aggbug/143570.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Clara Oscura</dc:creator>
            <guid>http://geekswithblogs.net/claraoscura/archive/2011/01/21/143570.aspx</guid>
            <pubDate>Fri, 21 Jan 2011 04:38:10 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/claraoscura/comments/143570.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/claraoscura/archive/2011/01/21/143570.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/claraoscura/comments/commentRss/143570.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/claraoscura/services/trackbacks/143570.aspx</trackback:ping>
        </item>
        <item>
            <title>"Value does not fall within the expected range" with managed metadata fields</title>
            <category>Managed Metadata</category>
            <category>SharePoint</category>
            <link>http://geekswithblogs.net/claraoscura/archive/2011/01/21/143569.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/claraoscura/archive/2011/01/21/143569.aspx'&gt;http://geekswithblogs.net/claraoscura/archive/2011/01/21/143569.aspx&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;The problem&lt;/strong&gt;: I have an item adding event receiver associated with a custom content type that accesses several managed metadata fields using the syntax "PublishingPage.ListItem["fieldname"]". Suddenly, I started getting the "Value does not fall within the expected range" when accessing one of the managed metadata fields. I had nothing else except the message and, more annoyingly and off-setting, it only happened with some users. It worked for users who were local administrators of the SharePoint server. This really sent me in the wrong direction.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The solution&lt;/strong&gt;: Check the "List View Lookup Threshold" for the web application (in CA, under the web application general settings). The default is 8. Managed metadata fields in a list are actually lookup fields, so if you have more than 8, error. What I don't know is why I didn't get this error with local adminstrators (maybe the threshold doesn't apply to them?). The reason I had more than 8 managed metadata fields in my list is that, after each new deploy of my content type, the field kept duplicating itself. I think I now solved this problem too by adding Overwrite="TRUE" OverwriteInChildScopes="TRUE" to the field definition.&lt;/p&gt;
&lt;p&gt;Solution source: &lt;a href="http://social.technet.microsoft.com/Forums/en-US/sharepoint2010programming/thread/65e04367-e926-404b-b355-825a52f4ce69/"&gt;http://social.technet.microsoft.com/Forums/en-US/sharepoint2010programming/thread/65e04367-e926-404b-b355-825a52f4ce69/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt; Technorati Tags: &lt;a href="http://technorati.com/tags/SharePoint"&gt;SharePoint&lt;/a&gt;&lt;/p&gt; &lt;img src="http://geekswithblogs.net/claraoscura/aggbug/143569.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Clara Oscura</dc:creator>
            <guid>http://geekswithblogs.net/claraoscura/archive/2011/01/21/143569.aspx</guid>
            <pubDate>Fri, 21 Jan 2011 04:33:44 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/claraoscura/comments/143569.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/claraoscura/archive/2011/01/21/143569.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/claraoscura/comments/commentRss/143569.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/claraoscura/services/trackbacks/143569.aspx</trackback:ping>
        </item>
        <item>
            <title>Powershell: Change Title of PublishingPage</title>
            <category>SharePoint</category>
            <category>Powershell</category>
            <link>http://geekswithblogs.net/claraoscura/archive/2010/11/25/142866.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/claraoscura/archive/2010/11/25/142866.aspx'&gt;http://geekswithblogs.net/claraoscura/archive/2010/11/25/142866.aspx&lt;/a&gt;&lt;/p&gt;&lt;p&gt;Today I had to change the title of several pages in several publishing sites. You can find the powershell script below.&lt;/p&gt;
&lt;p&gt;Notice that you have to access the pages as PublishingPage and not SPListItem,otherwise you will not be able to modify the Title field ("Title" is ReadOnly). Also, you have to go through the same procedure as in the UI: checkout, change property, checkin and publish (and maybe approve if the library requires it).&lt;/p&gt;
&lt;p style="margin: 0in 10pt; font-family: Lucida Console; font-size: 10pt"&gt;&lt;span style="color: #0000ff"&gt;Add-PSSnapin&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #8b0000"&gt;"Microsoft.SharePoint.PowerShell"&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #000080"&gt;-ErrorAction&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #8a2be2"&gt;SilentlyContinue&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: #006400"&gt;#read list &lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: #ff4500"&gt;$lines&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #0000ff"&gt;Get-Content&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #8b0000"&gt;"C:\SharePoint2010\PowerShell\sites.txt"&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #006400"&gt;#| Sort-Object&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: #00008b"&gt;foreach&lt;/span&gt;&lt;span style="color: #000000"&gt;(&lt;/span&gt;&lt;span style="color: #ff4500"&gt;$l&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #00008b"&gt;in&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #ff4500"&gt;$lines&lt;/span&gt;&lt;span style="color: #000000"&gt;)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #000000"&gt;{&lt;/span&gt;&lt;span style="color: #000000"&gt;       &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #000000"&gt;    &lt;/span&gt;&lt;span style="color: #00008b"&gt;try&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #000000"&gt;    &lt;/span&gt;&lt;span style="color: #000000"&gt;{&lt;/span&gt;&lt;span style="color: #000000"&gt;          &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #000000"&gt;        &lt;/span&gt;&lt;span style="color: #ff4500"&gt;$a&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #ff4500"&gt;$l&lt;/span&gt;&lt;span style="color: #a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color: #000000"&gt;split&lt;/span&gt;&lt;span style="color: #000000"&gt;(&lt;/span&gt;&lt;span style="color: #8b0000"&gt;";"&lt;/span&gt;&lt;span style="color: #000000"&gt;)&lt;/span&gt;&lt;span style="color: #000000"&gt;;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #000000"&gt;        &lt;/span&gt;&lt;span style="color: #ff4500"&gt;$url&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #ff4500"&gt;$a&lt;/span&gt;&lt;span style="color: #a9a9a9"&gt;[&lt;/span&gt;&lt;span style="color: #800080"&gt;0&lt;/span&gt;&lt;span style="color: #a9a9a9"&gt;]&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #000000"&gt;        &lt;/span&gt;&lt;span style="color: #ff4500"&gt;$title&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #ff4500"&gt;$a&lt;/span&gt;&lt;span style="color: #a9a9a9"&gt;[&lt;/span&gt;&lt;span style="color: #800080"&gt;1&lt;/span&gt;&lt;span style="color: #a9a9a9"&gt;]&lt;/span&gt;&lt;span style="color: #000000"&gt;               &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #000000"&gt;     &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #000000"&gt;        &lt;/span&gt;&lt;span style="color: #ff4500"&gt;$spWeb&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #0000ff"&gt;Get-SPWeb&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #000080"&gt;-Identity&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #ff4500"&gt;$url&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #000000"&gt;        &lt;/span&gt;&lt;span style="color: #00008b"&gt;if&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #000000"&gt;(&lt;/span&gt;&lt;span style="color: #008080"&gt;[Microsoft.SharePoint.Publishing.PublishingWeb]&lt;/span&gt;&lt;span style="color: #a9a9a9"&gt;::&lt;/span&gt;&lt;span style="color: #000000"&gt;IsPublishingWeb&lt;/span&gt;&lt;span style="color: #000000"&gt;(&lt;/span&gt;&lt;span style="color: #ff4500"&gt;$spWeb&lt;/span&gt;&lt;span style="color: #000000"&gt;)&lt;/span&gt;&lt;span style="color: #000000"&gt;)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #000000"&gt;        &lt;/span&gt;&lt;span style="color: #000000"&gt;{&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #000000"&gt;            &lt;/span&gt;&lt;span style="color: #ff4500"&gt;$spPubWeb&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #008080"&gt;[Microsoft.SharePoint.Publishing.PublishingWeb]&lt;/span&gt;&lt;span style="color: #a9a9a9"&gt;::&lt;/span&gt;&lt;span style="color: #000000"&gt;GetPublishingWeb&lt;/span&gt;&lt;span style="color: #000000"&gt;(&lt;/span&gt;&lt;span style="color: #ff4500"&gt;$spWeb&lt;/span&gt;&lt;span style="color: #000000"&gt;)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #000000"&gt;            &lt;/span&gt;&lt;span style="color: #ff4500"&gt;$pages&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #ff4500"&gt;$spPubWeb&lt;/span&gt;&lt;span style="color: #a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color: #000000"&gt;PagesList&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #000000"&gt;            &lt;/span&gt;&lt;span style="color: #00008b"&gt;foreach&lt;/span&gt;&lt;span style="color: #000000"&gt;(&lt;/span&gt;&lt;span style="color: #ff4500"&gt;$item&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #00008b"&gt;in&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #ff4500"&gt;$pages&lt;/span&gt;&lt;span style="color: #a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color: #000000"&gt;Items&lt;/span&gt;&lt;span style="color: #000000"&gt;)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #000000"&gt;            &lt;/span&gt;&lt;span style="color: #000000"&gt;{&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #000000"&gt;                &lt;/span&gt;&lt;span style="color: #ff4500"&gt;$pubPage&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #008080"&gt;[Microsoft.SharePoint.Publishing.PublishingPage]&lt;/span&gt;&lt;span style="color: #a9a9a9"&gt;::&lt;/span&gt;&lt;span style="color: #000000"&gt;GetPublishingPage&lt;/span&gt;&lt;span style="color: #000000"&gt;(&lt;/span&gt;&lt;span style="color: #ff4500"&gt;$item&lt;/span&gt;&lt;span style="color: #000000"&gt;)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #000000"&gt;                &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #000000"&gt;                &lt;/span&gt;&lt;span style="color: #00008b"&gt;if&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #000000"&gt;(&lt;/span&gt;&lt;span style="color: #ff4500"&gt;$pubPage&lt;/span&gt;&lt;span style="color: #a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color: #000000"&gt;Title&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #a9a9a9"&gt;-eq&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #8b0000"&gt;"wrong title"&lt;/span&gt;&lt;span style="color: #000000"&gt;)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #000000"&gt;                &lt;/span&gt;&lt;span style="color: #000000"&gt;{&lt;/span&gt;&lt;span style="color: #000000"&gt;            &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #000000"&gt;                    &lt;/span&gt;&lt;span style="color: #ff4500"&gt;$pubPage&lt;/span&gt;&lt;span style="color: #a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color: #000000"&gt;CheckOut&lt;/span&gt;&lt;span style="color: #000000"&gt;(&lt;/span&gt;&lt;span style="color: #000000"&gt;)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #000000"&gt;                    &lt;/span&gt;&lt;span style="color: #ff4500"&gt;$pubPage&lt;/span&gt;&lt;span style="color: #a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color: #000000"&gt;Title&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #ff4500"&gt;$title&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #000000"&gt;                    &lt;/span&gt;&lt;span style="color: #ff4500"&gt;$pubPage&lt;/span&gt;&lt;span style="color: #a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color: #000000"&gt;Update&lt;/span&gt;&lt;span style="color: #000000"&gt;(&lt;/span&gt;&lt;span style="color: #000000"&gt;)&lt;/span&gt;&lt;span style="color: #000000"&gt;;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #000000"&gt;                    &lt;/span&gt;&lt;span style="color: #ff4500"&gt;$pubPage&lt;/span&gt;&lt;span style="color: #a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color: #000000"&gt;CheckIn&lt;/span&gt;&lt;span style="color: #000000"&gt;(&lt;/span&gt;&lt;span style="color: #8b0000"&gt;""&lt;/span&gt;&lt;span style="color: #000000"&gt;)&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #000000"&gt;                    &lt;/span&gt;&lt;span style="color: #ff4500"&gt;$pageFile&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #a9a9a9"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #ff4500"&gt;$pubPage&lt;/span&gt;&lt;span style="color: #a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color: #000000"&gt;ListItem&lt;/span&gt;&lt;span style="color: #a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color: #000000"&gt;File&lt;/span&gt;&lt;span style="color: #000000"&gt;;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #000000"&gt;                    &lt;/span&gt;&lt;span style="color: #ff4500"&gt;$pageFile&lt;/span&gt;&lt;span style="color: #a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color: #000000"&gt;Publish&lt;/span&gt;&lt;span style="color: #000000"&gt;(&lt;/span&gt;&lt;span style="color: #8b0000"&gt;""&lt;/span&gt;&lt;span style="color: #000000"&gt;)&lt;/span&gt;&lt;span style="color: #000000"&gt;;&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #000000"&gt;                    &lt;/span&gt;&lt;span style="color: #006400"&gt;#pageFile.Approve(checkInComment); &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #000000"&gt;                 &lt;/span&gt;&lt;span style="color: #000000"&gt;}&lt;/span&gt;&lt;span style="color: #000000"&gt;                      &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #000000"&gt;            &lt;/span&gt;&lt;span style="color: #000000"&gt;}&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #000000"&gt;        &lt;/span&gt;&lt;span style="color: #000000"&gt;}&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #000000"&gt;        &lt;/span&gt;&lt;span style="color: #ff4500"&gt;$spWeb&lt;/span&gt;&lt;span style="color: #a9a9a9"&gt;.&lt;/span&gt;&lt;span style="color: #000000"&gt;Dispose&lt;/span&gt;&lt;span style="color: #000000"&gt;(&lt;/span&gt;&lt;span style="color: #000000"&gt;)&lt;/span&gt;&lt;span style="color: #000000"&gt;                   &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #000000"&gt;        &lt;/span&gt;&lt;span style="color: #0000ff"&gt;Write-Host&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #000080"&gt;-BackgroundColor&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #8a2be2"&gt;DarkGreen&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #000080"&gt;-ForegroundColor&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #8a2be2"&gt;White&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #000000"&gt;(&lt;/span&gt;&lt;span style="color: #8b0000"&gt;"Done: "&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #a9a9a9"&gt;+&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #ff4500"&gt;$url&lt;/span&gt;&lt;span style="color: #000000"&gt;)&lt;/span&gt;&lt;span style="color: #000000"&gt;;&lt;/span&gt;&lt;span style="color: #000000"&gt;      &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #000000"&gt;    &lt;/span&gt;&lt;span style="color: #000000"&gt;}&lt;/span&gt;&lt;span style="color: #000000"&gt;    &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #000000"&gt;    &lt;/span&gt;&lt;span style="color: #00008b"&gt;catch&lt;/span&gt;&lt;span style="color: #000000"&gt;      &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #000000"&gt;    &lt;/span&gt;&lt;span style="color: #000000"&gt;{&lt;/span&gt;&lt;span style="color: #000000"&gt;            &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #000000"&gt;        &lt;/span&gt;&lt;span style="color: #0000ff"&gt;Write-Host&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #000080"&gt;-BackgroundColor&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #8a2be2"&gt;DarkRed&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #000080"&gt;-ForegroundColor&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #8a2be2"&gt;White&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #000000"&gt;(&lt;/span&gt;&lt;span style="color: #8b0000"&gt;"Failed:"&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #a9a9a9"&gt;+&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #ff4500"&gt;$url&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #a9a9a9"&gt;+&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #8b0000"&gt;". Error details : "&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #a9a9a9"&gt;+&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #ff4500"&gt;$_&lt;/span&gt;&lt;span style="color: #000000"&gt;)&lt;/span&gt;&lt;span style="color: #000000"&gt;      &lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #000000"&gt;    &lt;/span&gt;&lt;span style="color: #000000"&gt;}&lt;/span&gt;&lt;br /&gt;
&lt;span style="color: #000000"&gt;}&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The input file contains the url of the site and the title of the page, separated by a semicolon. Like this:&lt;br /&gt;
 &lt;/p&gt;
&lt;p style="margin: 0in 10pt; font-family: Lucida Console; font-size: 10pt"&gt;http://&amp;lt;servername&amp;gt;/home/site1/site2;Correct Title for page&lt;/p&gt;
&lt;p style="margin: 0in 10pt; font-family: Lucida Console; font-size: 10pt"&gt; &lt;/p&gt;
&lt;p style="margin: 0in 10pt; font-family: Lucida Console; font-size: 10pt"&gt; &lt;/p&gt;
&lt;p style="margin: 0in 10pt; font-family: Lucida Console; font-size: 10pt"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/PowerShell"&gt;PowerShell&lt;/a&gt;, &lt;a href="http://technorati.com/tags/SharePoint"&gt;SharePoint&lt;/a&gt;&lt;br /&gt;
 &lt;/p&gt; &lt;img src="http://geekswithblogs.net/claraoscura/aggbug/142866.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Clara Oscura</dc:creator>
            <guid>http://geekswithblogs.net/claraoscura/archive/2010/11/25/142866.aspx</guid>
            <pubDate>Thu, 25 Nov 2010 04:17:09 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/claraoscura/comments/142866.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/claraoscura/archive/2010/11/25/142866.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/claraoscura/comments/commentRss/142866.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/claraoscura/services/trackbacks/142866.aspx</trackback:ping>
        </item>
        <item>
            <title>SharePoint 2010 Connections &amp;ndash; Cascais</title>
            <link>http://geekswithblogs.net/claraoscura/archive/2010/10/01/142070.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/claraoscura/archive/2010/10/01/142070.aspx'&gt;http://geekswithblogs.net/claraoscura/archive/2010/10/01/142070.aspx&lt;/a&gt;&lt;/p&gt;&lt;p&gt; &lt;/p&gt;  &lt;p&gt;I’m at the &lt;a href="http://www.regonline.co.uk/builder/site/Default.aspx?eventid=878939"&gt;SharePoint 2010 Connections&lt;/a&gt; at Cascais, next to Lisbon. The setting is amazing. I really like the talk by &lt;a href="http://intelliem.com/about-intelliem/dan-holme/"&gt;Dan Holme&lt;/a&gt;. I always knew I was an IT Pro at heart.&lt;/p&gt;  &lt;p&gt;Anybody else out there is here?&lt;/p&gt; &lt;img src="http://geekswithblogs.net/claraoscura/aggbug/142070.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Clara Oscura</dc:creator>
            <guid>http://geekswithblogs.net/claraoscura/archive/2010/10/01/142070.aspx</guid>
            <pubDate>Fri, 01 Oct 2010 13:00:26 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/claraoscura/comments/142070.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/claraoscura/archive/2010/10/01/142070.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/claraoscura/comments/commentRss/142070.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/claraoscura/services/trackbacks/142070.aspx</trackback:ping>
        </item>
        <item>
            <title>TFS 2008 to TFS 2010 Migration</title>
            <link>http://geekswithblogs.net/claraoscura/archive/2010/10/01/142069.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/claraoscura/archive/2010/10/01/142069.aspx'&gt;http://geekswithblogs.net/claraoscura/archive/2010/10/01/142069.aspx&lt;/a&gt;&lt;/p&gt;&lt;p&gt; &lt;/p&gt;  &lt;p&gt;Here’s how we migrated our TFS 2008 to TFS 2010. This is not an in-place migration.&lt;/p&gt;  &lt;p&gt;What is generally recommended as upgrade path is to backup the TFS 2008 DBs, restore them in the new TFS data tier and then install TFS 2010. This will migrate all the projects at once. However, we wanted to keep the TFS 2008 environment running for a while, so this path did not do.&lt;/p&gt;  &lt;p&gt;We first set up a new machine (and a new domain, but that is a whole other story) with TFS 2010 and WSS 3.0. The database tier was on yet another machine (SQL Server 2008, of course). And then we proceed with migration of the TFS content.&lt;/p&gt;  &lt;h1&gt;Migration of Version Control and Work Items&lt;/h1&gt;  &lt;p&gt;Just use the command below:&lt;/p&gt;  &lt;p&gt;&lt;font face="Courier New"&gt;tfsconfig import /collectionName:Imported /sqlinstance:sql2008 /confirmed&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;Source code and work items were migrated fine, version control history was maintained (even timestamps). The process templates were not migrated but the old projects retained their template (their old work item structure, queries, etc.). That is exactly what we wanted: old projects should remain as they were, and not to be upgraded to the new process templates.&lt;/p&gt;  &lt;p&gt;All the migrated projects went to a new project collection:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://tfsserver:8080/tfs/Imported"&gt;http://tfsserver:8080/tfs/Imported&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;While new projects will go to the default collection:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://tfsserver:8080/tfs/DefaultCollection"&gt;http://tfsserver:8080/tfs/DefaultCollection&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;As explained by the &lt;a href="http://msdn.microsoft.com/en-us/library/ff407080.aspx"&gt;documentation&lt;/a&gt;, tfsconfig import does not move reports, builds or portals.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Be careful&lt;/strong&gt;: tfsconfig is a destructive command! It means it will destroy the TFS2008 DBs. What I did was take a backup of the DBs and restore them in the new SQL server used for TFS 2010. The tfsconfig command points to the restored databases (so my old environment was safe).  &lt;/p&gt;  &lt;p&gt;I found information on this step from the following blogs (thanks guys!):&lt;/p&gt;  &lt;p&gt;· &lt;a href="http://blog.mediawhole.com/2010/04/how-to-do-test-tfs-2008-migration-to.html"&gt;http://blog.mediawhole.com/2010/04/how-to-do-test-tfs-2008-migration-to.html&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;· &lt;a href="http://blogs.msdn.com/b/bharry/archive/2009/10/21/upgrading-from-tfs-2005-2008-to-tfs-2010.aspx"&gt;http://blogs.msdn.com/b/bharry/archive/2009/10/21/upgrading-from-tfs-2005-2008-to-tfs-2010.aspx&lt;/a&gt;&lt;/p&gt;  &lt;h2&gt;Mapping old users&lt;/h2&gt;  &lt;p&gt;Since we also changed domains, I had to map the old users to the new users in work items. There used to be a TF power tool to do this (TFSUsers), but it does not exist anymore. TFS 2010 is intelligent enough to synchronize on its own with AD. So if a user changes name in the AD, it also changes in TFS 2010 work items. So, I came up with a &lt;a href="http://geekswithblogs.net/claraoscura/archive/2010/06/09/140297.aspx"&gt;workaround&lt;/a&gt; with excel.&lt;/p&gt;  &lt;h2&gt;Workspaces&lt;/h2&gt;  &lt;p&gt;When the users log into the new TFS 2010 server and try to get the latest version of their code, they will need to specify to local folder (mapping). After that, they usually get an error saying the workspace already exists.&lt;/p&gt;  &lt;p&gt;You need to delete your old workspaces or create new ones. &lt;a href="http://geekswithblogs.net/claraoscura/archive/2010/06/08/140279.aspx"&gt;http://geekswithblogs.net/claraoscura/archive/2010/06/08/140279.aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;It is important to delete the workspaces client cache too! Otherwise, your users will keep getting the annoying message: &lt;/p&gt;  &lt;p&gt;&lt;font face="Courier New"&gt;tf workspaces /remove:* /server:tfsserver&lt;/font&gt;&lt;/p&gt;  &lt;h1&gt;Migration of the WSS 2.0 Team Portals&lt;/h1&gt;  &lt;p&gt;This is where the hard work started. The process is well explained &lt;a href="http://support.microsoft.com/kb/2025593"&gt;here&lt;/a&gt;. Basically, it entails taking a backup of the WSS 2.0 content DB, restore it in the new data tier and attach it to a WSS 3.0 web application. A few problems we encountered:&lt;/p&gt;  &lt;p&gt;- You need to run prescan tool on the WSS 2.0 server and the prescan log has to give no errors. In our case, we had one orphan site and it took me forever to get rid of it.&lt;/p&gt;  &lt;p&gt;- Also very important: before attaching the old content DBs to the new WSS server, create a different web application to hold the old data. Otherwise, it will overwrite the existing web application (containing team sites for new projects, for example).&lt;/p&gt;  &lt;p&gt;The final result is that the migrated team portals go into one web application:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://tfsserver:11823/sites/oldprojectname"&gt;http://tfsserver:11823/sites/oldprojectname&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;While new projects go into the initial web application&lt;/p&gt;  &lt;p&gt;&lt;a href="http://tfsserver/newproject"&gt;http://tfsserver/newproject&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;- You might need to reset user rights on the old portals. We had to do it because of our change of domain.&lt;/p&gt;  &lt;p&gt;Once the old portals are migrated to WSS 3.0, you need to enable team portal on the projects. You can do it from Team Explorer: right click on the project and choose team portal settings. (Does anyone know how to automatise this? I had to do it manually for 53 projects?).&lt;/p&gt;  &lt;h1&gt;Migration of the Reports&lt;/h1&gt;  &lt;p&gt;There are different options for this step:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Modify them to work with TFS 2010 warehouse (too complicated) &lt;/li&gt;    &lt;li&gt;Keep them      &lt;ol&gt;       &lt;li&gt;as static content (e.g. export in excel, pdf, etc.) &lt;/li&gt;        &lt;li&gt;with old warehouse (this means that you need to move the TFS 2008 Warehouse db and cube to the new SQL Server, even if new data will not go to this warehouse) &lt;/li&gt;     &lt;/ol&gt;   &lt;/li&gt;    &lt;li&gt;Get  the new reports to work with old projects (???) &lt;/li&gt; &lt;/ol&gt;  &lt;h4&gt; &lt;/h4&gt;  &lt;h1&gt;Migration of Builds&lt;/h1&gt;  &lt;p&gt;We don't currently use TFS builds, so I don't have any info on that! Sorry.&lt;/p&gt;  &lt;p&gt;Good luck with your own migrations!&lt;/p&gt;  &lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:a3d7c328-c1bf-4059-9b4d-5823e38c5e92" class="wlWriterEditableSmartContent"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/TFS" rel="tag"&gt;TFS&lt;/a&gt;,&lt;a href="http://technorati.com/tags/Migration" rel="tag"&gt;Migration&lt;/a&gt;,&lt;a href="http://technorati.com/tags/tfsconfig" rel="tag"&gt;tfsconfig&lt;/a&gt;,&lt;a href="http://technorati.com/tags/TFS+2008" rel="tag"&gt;TFS 2008&lt;/a&gt;,&lt;a href="http://technorati.com/tags/TFS+2010" rel="tag"&gt;TFS 2010&lt;/a&gt;&lt;/div&gt; &lt;img src="http://geekswithblogs.net/claraoscura/aggbug/142069.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Clara Oscura</dc:creator>
            <guid>http://geekswithblogs.net/claraoscura/archive/2010/10/01/142069.aspx</guid>
            <pubDate>Fri, 01 Oct 2010 12:49:29 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/claraoscura/comments/142069.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/claraoscura/archive/2010/10/01/142069.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/claraoscura/comments/commentRss/142069.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/claraoscura/services/trackbacks/142069.aspx</trackback:ping>
        </item>
        <item>
            <title>Accounts in Work Items after migration to TFS 2010 and to new domain</title>
            <link>http://geekswithblogs.net/claraoscura/archive/2010/06/09/140297.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/claraoscura/archive/2010/06/09/140297.aspx'&gt;http://geekswithblogs.net/claraoscura/archive/2010/06/09/140297.aspx&lt;/a&gt;&lt;/p&gt;&lt;p&gt; &lt;/p&gt;  &lt;p&gt;Lately I’ve been doing some tests on migrating our TFS 2008 installation to TFS 2010, coupled with a machine and domain change. One particular topic that was tricky is user accounts.&lt;/p&gt;  &lt;p&gt;We installed first a new machine with TFS 2010 and then migrated the projects in the old server. The work items were migrated with the projects. Great, but if I try to edit one of the old work items I cannot save it anymore because some fields contain old user names (ex. OLDDOMAIN\user) which are not known in the new domain (it should be NEWDOMAIN\user).&lt;/p&gt;  &lt;p&gt;The errors look like this:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://gwb.blob.core.windows.net/claraoscura/WindowsLiveWriter/AccountsinWorkItemsaftermigrationtoTFS20_C431/AssignedToError_2.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="AssignedToError" border="0" alt="AssignedToError" src="http://gwb.blob.core.windows.net/claraoscura/WindowsLiveWriter/AccountsinWorkItemsaftermigrationtoTFS20_C431/AssignedToError_thumb_2.png" width="335" height="30" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;When I correct the ‘Assigned To’ field value, I get another error regarding another field:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://gwb.blob.core.windows.net/claraoscura/WindowsLiveWriter/AccountsinWorkItemsaftermigrationtoTFS20_C431/ActivatedByError_1.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="ActivatedByError" border="0" alt="ActivatedByError" src="http://gwb.blob.core.windows.net/claraoscura/WindowsLiveWriter/AccountsinWorkItemsaftermigrationtoTFS20_C431/ActivatedByError_thumb_1.png" width="337" height="31" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Before TFS 2010, we had TFSUsers power tool. It allow you to map an old user name to a new user name. This is not available anymore because WI fields with user accounts are now synchronized with AD display names changes (explained &lt;a href="http://www.edsquared.com/2009/11/09/User+Display+Name+Changes+And+New+Attribute+For+Work+Item+Type+Definitions+In+TFS+2010.aspx"&gt;here&lt;/a&gt;).&lt;/p&gt;  &lt;p&gt;The correct way to go about this in TFS 2010 is to use &lt;a href="http://msdn.microsoft.com/en-us/library/ms253054.aspx"&gt;TFSConfig Identities&lt;/a&gt; &lt;strong&gt;before&lt;/strong&gt; adding the new domain accounts into the TFS groups (documented &lt;a href="http://blogs.msdn.com/b/vasu_sankaran/archive/2010/05/11/guidance-for-upgrading-to-tfs-2010-along-with-domain-move.aspx"&gt;here&lt;/a&gt;). So, too late for us.&lt;/p&gt;  &lt;p&gt;I’ve found a (tedious) workaround to change those old account in work items in order to allow people to keep working with them.&lt;/p&gt;  &lt;p&gt;1. Install TFS 2010 power tools&lt;/p&gt;  &lt;p&gt;2. Export WIT from your project (VS | Tools | Process Editor | Work Item Types). Save the definition, for example: Original_MyProject_Task.xml&lt;/p&gt;  &lt;p&gt;3. Copy the xml (NoReadOnly_MyProject_Task.xml) and edit it. From the field definition of ‘Activated By’, ‘Closed By’ and ‘Resolved By’, remove the following:&lt;/p&gt;  &lt;p&gt;       &amp;lt;WHENNOTCHANGED field="System.State"&amp;gt;    &lt;br /&gt;          &amp;lt;READONLY /&amp;gt;     &lt;br /&gt;        &amp;lt;/WHENNOTCHANGED&amp;gt;&lt;/p&gt;  &lt;p&gt;4. Import WIT in VS. Choose the new file (NoReadOnly_MyProject_Task.xml) and import it in MyProject&lt;/p&gt;  &lt;p&gt;5. Open all tasks in Excel (flat list). Display the following columns:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Asssigned To &lt;/li&gt;    &lt;li&gt;Activated By &lt;/li&gt;    &lt;li&gt;Closed By &lt;/li&gt;    &lt;li&gt;Resolved By &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Change the user accounts to the new ones (I usually sort each column alphabetically to make it easier).&lt;/p&gt;  &lt;p&gt;6. Publish.&lt;/p&gt;  &lt;p&gt;If you get a conflict on a field, tough luck. You will have to manually choose “Local version” for each work item. I told you it was a tedious process.&lt;/p&gt;  &lt;p&gt;7. Import original WIT (Original_MyProject_Task.xml) in MyProject. We only changed the WI definition so that we could change some fields. The original definition should be put back.&lt;/p&gt;  &lt;p&gt;And what about these other fields?&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Created By &lt;/li&gt;    &lt;li&gt;Authorized As &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;font face="Tahoma"&gt;These fields are not editable by definition (VS | Tools | Process Editor | Work Item Fields Explorer), even if they are not marked as read-only in the WIT. You can leave the old values. It doesn’t seem to matter to TFS.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Tahoma"&gt;The other four fields are editable by definition, so only the WIT readonly rule prevents us from changing them.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://gwb.blob.core.windows.net/claraoscura/WindowsLiveWriter/AccountsinWorkItemsaftermigrationtoTFS20_C431/widefiniton_2.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="widefiniton" border="0" alt="widefiniton" src="http://gwb.blob.core.windows.net/claraoscura/WindowsLiveWriter/AccountsinWorkItemsaftermigrationtoTFS20_C431/widefiniton_thumb.png" width="368" height="238" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;font face="Tahoma"&gt;&lt;/font&gt;&lt;/p&gt;  &lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:df084877-5b4f-4d07-b930-399eee630afd" class="wlWriterEditableSmartContent"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/TFS" rel="tag"&gt;TFS&lt;/a&gt;,&lt;a href="http://technorati.com/tags/Team+Foundation+Server+2010" rel="tag"&gt;Team Foundation Server 2010&lt;/a&gt;,&lt;a href="http://technorati.com/tags/Work+Item" rel="tag"&gt;Work Item&lt;/a&gt;,&lt;a href="http://technorati.com/tags/Domain+change" rel="tag"&gt;Domain change&lt;/a&gt;&lt;/div&gt; &lt;img src="http://geekswithblogs.net/claraoscura/aggbug/140297.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Clara Oscura</dc:creator>
            <guid>http://geekswithblogs.net/claraoscura/archive/2010/06/09/140297.aspx</guid>
            <pubDate>Wed, 09 Jun 2010 04:58:51 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/claraoscura/comments/140297.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/claraoscura/archive/2010/06/09/140297.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/claraoscura/comments/commentRss/140297.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/claraoscura/services/trackbacks/140297.aspx</trackback:ping>
        </item>
        <item>
            <title>Do you have to recreate workspaces after upgrading a TFS 2008 server to TFS 2010?</title>
            <link>http://geekswithblogs.net/claraoscura/archive/2010/06/08/140279.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/claraoscura/archive/2010/06/08/140279.aspx'&gt;http://geekswithblogs.net/claraoscura/archive/2010/06/08/140279.aspx&lt;/a&gt;&lt;/p&gt;&lt;p&gt; &lt;/p&gt;  &lt;p&gt;I am just reposting this thread from a MSDN forum since it seems to be unavailable. It was very useful when I was having trouble with my folder mappings after migrating to TFS 2010. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Question:&lt;/strong&gt;    &lt;br /&gt;I opened VS2008 and connected it to the upgraded 2010 TFS server.  Upon clicking any of our Team Projects in source control explorer I get    &lt;br /&gt;"Team Foundation Error - The workspace MYWORKSPACE;DOMAIN\MYUsername already exists on computer MYPCNAME." &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Answer:&lt;/strong&gt;    &lt;br /&gt;The same local paths on your machine are mapped to 2 different workspaces, one on the preupgrade server and one on the postupgrade server.  It's not safe to have multiple workspaces on different servers mapped to the same local paths b/c you could pend some changes while connected to one server, and the other server would have no idea what you did.  You should either delete your conflicting workspaces from one of the servers (if you don't need them on both), or test the new TFS instance from a new workspace (on different machine). &lt;/p&gt;  &lt;p&gt;If you want to test an existing production workspace on both servers, then yes, you will have to mess around with the workspace cache. &lt;/p&gt;  &lt;p&gt;You don’t have to delete the entire cache, you just need to run "tf workspaces /remove:* /server:&amp;lt;serverurl&amp;gt;" to clear the cached workspaces from a server (the command won't delete the workspaces), and possibly "tf workspaces /server:&amp;lt;server&amp;gt;" to refresh the workspace cache for a given server.  You will also have to do back up and restore the workspace before switching servers or your local files could be inconsistent. &lt;/p&gt;  &lt;p&gt;From the “Microsoft Visual Studio Team Foundation Server 2010 Beta 1” forum (not available anymore?)&lt;/p&gt;  &lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:47293d1a-2a11-4362-ad71-0d8a2e4dfe16" class="wlWriterEditableSmartContent"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/TFS+2010" rel="tag"&gt;TFS 2010&lt;/a&gt;,&lt;a href="http://technorati.com/tags/TFS+Workspaces" rel="tag"&gt;TFS Workspaces&lt;/a&gt;,&lt;a href="http://technorati.com/tags/Team+System" rel="tag"&gt;Team System&lt;/a&gt;,&lt;a href="http://technorati.com/tags/Team+Foundation+Server+2010" rel="tag"&gt;Team Foundation Server 2010&lt;/a&gt;&lt;/div&gt; &lt;img src="http://geekswithblogs.net/claraoscura/aggbug/140279.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Clara Oscura</dc:creator>
            <guid>http://geekswithblogs.net/claraoscura/archive/2010/06/08/140279.aspx</guid>
            <pubDate>Tue, 08 Jun 2010 06:49:16 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/claraoscura/comments/140279.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/claraoscura/archive/2010/06/08/140279.aspx#feedback</comments>
            <slash:comments>4</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/claraoscura/comments/commentRss/140279.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/claraoscura/services/trackbacks/140279.aspx</trackback:ping>
        </item>
        <item>
            <title>Change Excel connection to a team project</title>
            <category>Team System</category>
            <link>http://geekswithblogs.net/claraoscura/archive/2009/06/16/132838.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/claraoscura/archive/2009/06/16/132838.aspx'&gt;http://geekswithblogs.net/claraoscura/archive/2009/06/16/132838.aspx&lt;/a&gt;&lt;/p&gt;&lt;p&gt;Once you have imported a list of work items in excel from a team project in TFS, the excel file always proposes work items from the same team project. It does not seem possible to obtain the "connect to TFS" popup window again, where you choose the team project. This is because the connection is stored as a custom property in the excel file.&lt;/p&gt;
&lt;p&gt;The answer is to delete all custom properties from the file. Go to the main menu and then: P&lt;font face="Arial"&gt;repare / Properties / Document Properties / Advanced Properties / Custom. Delete all "&lt;font face="Arial"&gt;VS Team System Data DO NOT EDIT" properties (the content is encrypted). Do NOT save the file. If you save it, the properties are created again! Just go to the Team menu and choose "New List": you will now be prompted to choose a team project.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;If you need to save the file (you want to keep it without the TFS connection in it), follow the instruction given by Buck Hodges &lt;a href="http://blogs.msdn.com/buckh/archive/2006/07/19/remove-tfs-project-excel.aspx"&gt;here&lt;/a&gt;. Before removing the properites, you have to deactivate the TFS excel add-in.&lt;/p&gt; &lt;img src="http://geekswithblogs.net/claraoscura/aggbug/132838.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Clara Oscura</dc:creator>
            <guid>http://geekswithblogs.net/claraoscura/archive/2009/06/16/132838.aspx</guid>
            <pubDate>Tue, 16 Jun 2009 01:14:56 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/claraoscura/comments/132838.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/claraoscura/archive/2009/06/16/132838.aspx#feedback</comments>
            <slash:comments>4</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/claraoscura/comments/commentRss/132838.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/claraoscura/services/trackbacks/132838.aspx</trackback:ping>
        </item>
        <item>
            <title>Developing for Mobile (1): On Vista</title>
            <link>http://geekswithblogs.net/claraoscura/archive/2009/05/07/131871.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/claraoscura/archive/2009/05/07/131871.aspx'&gt;http://geekswithblogs.net/claraoscura/archive/2009/05/07/131871.aspx&lt;/a&gt;&lt;/p&gt;&lt;p&gt;I might have to develop an application for a mobile scanning device and I have been playing around with the .NET mobile components in preparation. Not easy at all: the documentation is not very clear and there are lots of different components/versions. Here are some of the problems I encountered and how I solved them.&lt;/p&gt;
&lt;p&gt;My constraints:&lt;/p&gt;
&lt;p&gt;a) My development environment is Windows Vista + VS 2008 Team System.&lt;/p&gt;
&lt;p&gt;b) The device will probably be Datalogic Memor which runs Windows CE 5.0. This means I need to install Windows Mobile 5.0 SDK - the documentation says that it only supports VisualStudio 2005 and Windows XP and that it requires ActiveSync 4.0.&lt;/p&gt;
&lt;p&gt;c) I want to develop with the .NET Compact Framework 3.5 in order to use WCF. This was installed already on my machine.&lt;/p&gt;
&lt;p&gt;So, will all of this work toghether on Vista? Well, it did (unexpectedly).&lt;/p&gt;
&lt;p&gt;The only quirk is that you cannot run ActiveSync 4.0 on Vista. You have to install Windows Mobile Device Center instead.&lt;/p&gt;
&lt;div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:94808bef-9757-4a6e-be25-81c6a9d6ba5c" style="PADDING-RIGHT: 0px; DISPLAY: inline; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px"&gt;Technorati Tags: &lt;a rel="tag" href="http://technorati.com/tags/Windows%20Mobile"&gt;Windows Mobile&lt;/a&gt;,&lt;a rel="tag" href="http://technorati.com/tags/Pocket%20PC"&gt;Pocket PC&lt;/a&gt;,&lt;a rel="tag" href="http://technorati.com/tags/Windows%20CE"&gt;Windows CE&lt;/a&gt;,&lt;a rel="tag" href="http://technorati.com/tags/Windows%20Vista"&gt;Windows Vista&lt;/a&gt;&lt;/div&gt;
&lt;p&gt; &lt;/p&gt; &lt;img src="http://geekswithblogs.net/claraoscura/aggbug/131871.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Clara Oscura</dc:creator>
            <guid>http://geekswithblogs.net/claraoscura/archive/2009/05/07/131871.aspx</guid>
            <pubDate>Thu, 07 May 2009 08:26:55 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/claraoscura/comments/131871.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/claraoscura/archive/2009/05/07/131871.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/claraoscura/comments/commentRss/131871.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/claraoscura/services/trackbacks/131871.aspx</trackback:ping>
        </item>
        <item>
            <title>TFS Warehouse/Cube Processing</title>
            <link>http://geekswithblogs.net/claraoscura/archive/2008/05/28/122447.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/claraoscura/archive/2008/05/28/122447.aspx'&gt;http://geekswithblogs.net/claraoscura/archive/2008/05/28/122447.aspx&lt;/a&gt;&lt;/p&gt;&lt;p&gt;Just to clarify the different tools that you can use to update/recreate the Team Foundation Server warehouse (relational database and OLAP cube).&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Warehouse Web Service&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;You can browse and invoke it here (always locally from TFS): &lt;a href="http://localhost:8080/Warehouse/v1.0/warehousecontroller.asmx"&gt;http://localhost:8080/Warehouse/v1.0/warehousecontroller.asmx&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;The Run operation will launch processing of the warehouse (you can check the status of the warehouse with the GetWarehouseStatus operation: it goes from ProcessingAdapters, ProcessingOlap and finally Idle). Processing of the warehouse means (1) pulling data from the operational stores (source control, work items, builds) to the data warehouse relational database, and (2) processing the cube to aggregate the data from the relational database.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;TFSServerScheduler&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Windows service that signals the warehouse web service to go aggregate data and process the cube. This windows service calls the above warehouse run operation at regular intervals.&lt;/p&gt;  &lt;p&gt;To find out when was the last time the scheduler called the warehouse to process, browse to %ProgramFiles%\Microsoft Team Foundation Server 2005\TfsServerScheduler. The xml file in that directory will contain the last time warehouse processing was attempted.&lt;/p&gt;  &lt;p&gt;In Team Foundation2008, the scheduler is called "Visual Studio Team Foundation ServerTask Scheduler".&lt;/p&gt;  &lt;p&gt;Documentation: &lt;a title="http://msdn.microsoft.com/en-us/library/ms252450(VS.80).aspx" href="http://msdn.microsoft.com/en-us/library/ms252450(VS.80).aspx"&gt;http://msdn.microsoft.com/en-us/library/ms252450(VS.80).aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Cube processing&lt;/strong&gt; &lt;/p&gt;  &lt;p&gt;You can also process the cube manually from the SQL Server Management Studio. This will only perform the second step above, so if new data has not been transfered from the operational stores to the data warehouse relational database, you will not see any changes.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Setupwarehouse.exe&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;You can find this tool here: %ProgramFiles%\Microsoft Team Foundation Server 2005\Tools&lt;/p&gt;  &lt;p&gt;It is used to rebuild the OLAP schema and cube or the relational database. This means that it will delete all the data in the TfsWarehouse database and cube. You will neeed to run the warehouse web service afterwards in order to recover&lt;/p&gt;  &lt;p&gt;Documentation: &lt;a title="http://msdn.microsoft.com/en-us/library/ms400783(VS.80).aspx" href="http://msdn.microsoft.com/en-us/library/ms400783(VS.80).aspx"&gt;http://msdn.microsoft.com/en-us/library/ms400783(VS.80).aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;p&gt;I have noticed that af'ter running Setupwarehouse.exe to rebuild the relational database, some fields are missing. This concerns the Microsoft_VSTS_* fields in the Current Work Item table, for example. As a consequence, some measures are missing from the Team System cube (Current Work Item | Remaining Work, for example). After running the warehouse web service (that pulls data into the relational database) they reappear ...&lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;div class="wlWriterSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:52bd1577-7c64-49b8-8fe9-886ce84b742d" style="padding-right: 0px; display: inline; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/TFS" rel="tag"&gt;TFS&lt;/a&gt;,&lt;a href="http://technorati.com/tags/TFSServerScheduler" rel="tag"&gt;TFSServerScheduler&lt;/a&gt;,&lt;a href="http://technorati.com/tags/Setupwarehouse" rel="tag"&gt;Setupwarehouse&lt;/a&gt;,&lt;a href="http://technorati.com/tags/Warehouse" rel="tag"&gt;Warehouse&lt;/a&gt;&lt;/div&gt; &lt;img src="http://geekswithblogs.net/claraoscura/aggbug/122447.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Clara Oscura</dc:creator>
            <guid>http://geekswithblogs.net/claraoscura/archive/2008/05/28/122447.aspx</guid>
            <pubDate>Wed, 28 May 2008 16:07:30 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/claraoscura/comments/122447.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/claraoscura/archive/2008/05/28/122447.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/claraoscura/comments/commentRss/122447.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/claraoscura/services/trackbacks/122447.aspx</trackback:ping>
        </item>
        <item>
            <title>Migrating TFS2005 to TFS2008 (Process Templates)</title>
            <link>http://geekswithblogs.net/claraoscura/archive/2008/05/28/122446.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/claraoscura/archive/2008/05/28/122446.aspx'&gt;http://geekswithblogs.net/claraoscura/archive/2008/05/28/122446.aspx&lt;/a&gt;&lt;/p&gt;&lt;p&gt;One of my main tasks now that I'm back at work is to migrate our TFS from 2005 to 2008. Our main concern is with process templates. We went to quite a lot of trouble to create our own process template and we do not want to lose that work. &lt;/p&gt;  &lt;p&gt;I posted a &lt;a href="http://forums.microsoft.com/msdn/ShowPost.aspx?PostID=3341140&amp;amp;SiteID=1"&gt;question on MSDN forums&lt;/a&gt; about customized process templates migration without much success. So, I decided to dive in on our test environment and see what happens. &lt;/p&gt;  &lt;p&gt;Test procedure:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Prepare a test machine with Windows Server 2003, TFS2005, VisualStudio 2008 and WSS 2.0.      &lt;br /&gt;&lt;/li&gt;    &lt;li&gt;Install MyCustomTemplate on TFS2005 in test machine.      &lt;br /&gt;&lt;/li&gt;    &lt;li&gt;Create a team project with MyCustomTemplate.      &lt;br /&gt;&lt;/li&gt;    &lt;li&gt;Used &lt;a href="http://www.codeplex.com/tfstotfsmigration"&gt;TFS to TFS migration tool&lt;/a&gt; to migrate a medium-size project from the production TFS to this test TFS (to the team project created in step 3). The tool did not work very well and only part of the source code was migrated (for work items, it worked fine).       &lt;br /&gt;&lt;/li&gt;    &lt;li&gt;Backup the project portal (see &lt;a href="http://technet.microsoft.com/en-us/library/cc288330.aspx)"&gt;http://technet.microsoft.com/en-us/library/cc288330.aspx)&lt;/a&gt; from our TFS 2005 and restore on test TFS2005.       &lt;br /&gt;&lt;/li&gt;    &lt;li&gt;Updgraded test machine WSS2.0 to WSS3.0. This step is not mentioned in upgrade section of the TFS &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=FF12844F-398C-4FE9-8B0D-9E84181D9923&amp;amp;displaylang=en"&gt;installation guide&lt;/a&gt;! You need to follow the steps under the "Install SharePoint Products and Technologies onWindows Server" section (also explained &lt;a href="http://technet.microsoft.com/en-us/library/cc288753.aspx"&gt;here&lt;/a&gt;). Notice that before running the "Sharepoint Products and Technologies Configuration Wizard", you need to run the prescan tool on all your sites (click help link at the beginning of the wizard for details).       &lt;br /&gt;&lt;/li&gt;    &lt;li&gt;Upgraded test machine to TFS2008. &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;Here is a summary of what happened with process templates:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;On TFS 2005, the out-of-the-box templates (MSF4Agile and MSF4CMMI) are version 4.0. &lt;/li&gt;    &lt;li&gt;On TFS 2008, the out-of-the-box templates (MSF4Agile and MSF4CMMI) are version 4.2. &lt;/li&gt;    &lt;li&gt;After migrating, TFS 2008 contained (besides MSF4Agile and MSF4CMMI v4.2) the process templates available in my TFS 2005 (even those not used, customized or not). &lt;/li&gt;    &lt;li&gt;Since the templates were migrated, there was no loss of work items. &lt;/li&gt;    &lt;li&gt;The source code was migrated correctly, including the version control history. &lt;/li&gt;    &lt;li&gt;The project portal was migrated to WSS 3.0 (all content was kept). Of course, given that the Sharepoint template for the project was customized it still look very "WSS 2.0". There is no need to create a WSS 3.0 template for your custom process template before upgrading. &lt;/li&gt;    &lt;li&gt;The builds were also fine. Besides, when using VisualStudio and Team Explorer 2008, the "New build definiton" is now available (with TFS2005 it was greyed). &lt;/li&gt;    &lt;li&gt;The reports were migrated correctly, except for a custom one that didn't work anymore (there was an error in the report - no fault of the upgrade). &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Good migration y'all!&lt;/p&gt;  &lt;div class="wlWriterSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:46f6b834-502f-4912-b1c7-bdfda90c831e" style="padding-right: 0px; display: inline; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/TFS%202008" rel="tag"&gt;TFS 2008&lt;/a&gt;,&lt;a href="http://technorati.com/tags/TFS" rel="tag"&gt;TFS&lt;/a&gt;,&lt;a href="http://technorati.com/tags/Process%20templates" rel="tag"&gt;Process templates&lt;/a&gt;,&lt;a href="http://technorati.com/tags/upgrade" rel="tag"&gt;upgrade&lt;/a&gt;&lt;/div&gt; &lt;img src="http://geekswithblogs.net/claraoscura/aggbug/122446.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Clara Oscura</dc:creator>
            <guid>http://geekswithblogs.net/claraoscura/archive/2008/05/28/122446.aspx</guid>
            <pubDate>Wed, 28 May 2008 16:06:12 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/claraoscura/comments/122446.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/claraoscura/archive/2008/05/28/122446.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/claraoscura/comments/commentRss/122446.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/claraoscura/services/trackbacks/122446.aspx</trackback:ping>
        </item>
    </channel>
</rss>