<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">
    <channel>
        <title>The Nihlénanizer</title>
        <link>http://www.nnihlen.com/blog/Default.aspx</link>
        <description>Programming, food, life and weird sports</description>
        <language>sv</language>
        <copyright>Niklas Nihlen</copyright>
        <generator>Subtext Version 2.1.0.5</generator>
        <image>
            <title>The Nihlénanizer</title>
            <url>http://www.nnihlen.com/blog/images/RSS2Image.gif</url>
            <link>http://www.nnihlen.com/blog/Default.aspx</link>
            <width>77</width>
            <height>60</height>
        </image>
        <atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/Nihlenanizer" type="application/rss+xml" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><item>
            <title>Neat Trace Writer Trick</title>
            <category>.NET Development</category>
            <category>Computing</category>
            <category>SharePoint</category>
            <category>Productivity</category>
            <link>http://feedproxy.google.com/~r/Nihlenanizer/~3/UKM30Pk_CHk/783.aspx</link>
            <description>&lt;p&gt;This is one that my colleague &lt;a href="http://blogs.msdn.com/mattlind/default.aspx"&gt;Mattias&lt;/a&gt; showed me. When I code SharePoint solutions I’m always to put in some diagnostics logging just so that I can turn it on and se what happens. There is (as always) a couple of options here. Write to the ULS logs, which I guess is the preferred way to do it and then use &lt;a href="http://technet.microsoft.com/en-us/library/cc288649.aspx"&gt;event throttling&lt;/a&gt; to turn it on and off. However sometimes its just a bit to much work. So, here’s the trick.&lt;/p&gt;
&lt;p&gt;Sprinkle Trace.Writer's in your code where it makes sense. So for example i might want do put the following code somewhere:&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;pre class="brush: csharp; ruler: true;"&gt;System.Diagnostics.Trace.Write("Feature myAwsomeFeature is installed");&lt;/pre&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Running normally this don’t generate any output. The way I was aware of before to get at this output was to hook up a &lt;a href="http://msdn.microsoft.com/en-us/library/system.diagnostics.tracelistener.aspx"&gt;Trace Listener in the config file&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Now to the trick, at least in my book since I didn’t know about it.&lt;/p&gt;
&lt;p&gt;Download &lt;a href="http://technet.microsoft.com/en-us/sysinternals/bb896647.aspx"&gt;DebugView&lt;/a&gt; from TechNet. Unpack and fire it up. I had to enable Global Win32 Capturing:&lt;/p&gt;
&lt;p align="center"&gt;&lt;a href="http://www.nnihlen.com/blog/images/www_nnihlen_com/blog/WindowsLiveWriter/NeatTraceWriteTrix_F290/DebugViewCaptureOptions_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="DebugViewCaptureOptions" border="0" alt="DebugViewCaptureOptions" width="244" height="164" src="http://www.nnihlen.com/blog/images/www_nnihlen_com/blog/WindowsLiveWriter/NeatTraceWriteTrix_F290/DebugViewCaptureOptions_thumb.png" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Then it’s just to lean back and watch your eminent Trace Writes roll by:&lt;/p&gt;
&lt;p align="center"&gt;&lt;a href="http://www.nnihlen.com/blog/images/www_nnihlen_com/blog/WindowsLiveWriter/NeatTraceWriteTrix_F290/DebugView_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="DebugView" border="0" alt="DebugView" width="354" height="137" src="http://www.nnihlen.com/blog/images/www_nnihlen_com/blog/WindowsLiveWriter/NeatTraceWriteTrix_F290/DebugView_thumb.png" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;It’s probably like most things in my life. Everybody else already know about it, but I think it is neat! And by the way, this is of course not tied to SharePoint in any way.&lt;/p&gt;&lt;img src="http://www.nnihlen.com/blog/aggbug/783.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/Nihlenanizer/~4/UKM30Pk_CHk" height="1" width="1"/&gt;</description>
            <dc:creator>Niklas Nihlen</dc:creator>
            <guid isPermaLink="false">http://www.nnihlen.com/blog/archive/2009/10/17/783.aspx</guid>
            <pubDate>Sat, 17 Oct 2009 07:39:01 GMT</pubDate>
            <wfw:comment>http://www.nnihlen.com/blog/comments/783.aspx</wfw:comment>
            <comments>http://www.nnihlen.com/blog/archive/2009/10/17/783.aspx#feedback</comments>
            <wfw:commentRss>http://www.nnihlen.com/blog/comments/commentRss/783.aspx</wfw:commentRss>
        <feedburner:origLink>http://www.nnihlen.com/blog/archive/2009/10/17/783.aspx</feedburner:origLink></item>
        <item>
            <title>Multiple Exchange Servers in Outlook 2010</title>
            <category>Computing</category>
            <category>Productivity</category>
            <link>http://feedproxy.google.com/~r/Nihlenanizer/~3/abgbVJmdaTg/multiple-exchange-servers-in-outlook-2010.aspx</link>
            <description>&lt;p&gt;In my role as a consultant I’ve many a times been at a customer for months in a row. What happens then (at least for me) is I get a Exchange account at the customer, I have one at my employer and after a while I’m starting to get skitsofrentic. Either I run one in Outlook and the other in Outlook Web Access and forwarding meetings across to keep the calendars in sync. Another option is to have multiple mail-profiles for outlook to use. Doesn’t matter how you twist and turn it, you’ll always end up with a mess… Until soon.&lt;/p&gt;  &lt;p&gt;It really warmed my heart when I read this &lt;a href="http://blogs.msdn.com/outlook/archive/2009/08/25/multiple-exchange-accounts-in-outlook-2010.aspx"&gt;post&lt;/a&gt; at the &lt;a href="http://blogs.msdn.com/outlook/"&gt;Office Outlook Team blog&lt;/a&gt;. In Outlook 2010 you can have multiple Exchange servers simultaneously!&lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://www.nnihlen.com/blog/images/www_nnihlen_com/blog/WindowsLiveWriter/MultipleExchangeServersinOutlook2010_C98D/MultiExchangeInOutlook_2.gif"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="MultiExchangeInOutlook" border="0" alt="MultiExchangeInOutlook" src="http://www.nnihlen.com/blog/images/www_nnihlen_com/blog/WindowsLiveWriter/MultipleExchangeServersinOutlook2010_C98D/MultiExchangeInOutlook_thumb.gif" width="222" height="414" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p align="left"&gt;Just pure awesomeness!&lt;/p&gt;&lt;img src="http://www.nnihlen.com/blog/aggbug/782.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/Nihlenanizer/~4/abgbVJmdaTg" height="1" width="1"/&gt;</description>
            <dc:creator>Niklas Nihlen</dc:creator>
            <guid isPermaLink="false">http://www.nnihlen.com/blog/archive/2009/09/06/multiple-exchange-servers-in-outlook-2010.aspx</guid>
            <pubDate>Sun, 06 Sep 2009 12:19:59 GMT</pubDate>
            <wfw:comment>http://www.nnihlen.com/blog/comments/782.aspx</wfw:comment>
            <comments>http://www.nnihlen.com/blog/archive/2009/09/06/multiple-exchange-servers-in-outlook-2010.aspx#feedback</comments>
            <wfw:commentRss>http://www.nnihlen.com/blog/comments/commentRss/782.aspx</wfw:commentRss>
        <feedburner:origLink>http://www.nnihlen.com/blog/archive/2009/09/06/multiple-exchange-servers-in-outlook-2010.aspx</feedburner:origLink></item>
        <item>
            <title>Potential Issues Installing SharePoint 2007 Service Pack 2</title>
            <category>Computing</category>
            <category>SharePoint</category>
            <link>http://feedproxy.google.com/~r/Nihlenanizer/~3/ohB_ixsTUDg/potential-issues-installing-sharepoint-2007-service-pack-2.aspx</link>
            <description>&lt;p&gt;A while back Service Pack 2 for SharePoint was released. That’s all good. But unfortunately you might run into some snags installing it. This post is an attempt at doing a write-up of the issues I've seen on blogs, in support kb’s and that myself and my colleagues at Microsoft Services Sweden have encountered, being out there in the field close to the metal. I’ll come back and update the list if necessary.&lt;/p&gt;  &lt;p&gt;Before we get to the lists, be sure to do your homework. Read:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Deploy upgrade instructions for &lt;a href="http://technet.microsoft.com/en-us/library/cc263467.aspx"&gt;MOSS 2007&lt;/a&gt; and &lt;a href="http://technet.microsoft.com/en-us/library/cc288269.aspx"&gt;WSS 3.0&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Check out Stefan Gossner’s &lt;a href="http://blogs.technet.com/stefan_gossner/archive/2009/04/28/moss-2007-and-wss-3-0-service-pack-2-has-been-released.aspx"&gt;blog post&lt;/a&gt; for links to fix-lists and more &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt; &lt;/p&gt;  &lt;p&gt;Here we go:&lt;/p&gt;  &lt;h2&gt;Use the right accounts&lt;/h2&gt;  &lt;p&gt;This is a simple one, just read the docs (link above) and make sure the account running SP2 has permissions such as db_owner on the databases. I ran into this when we tried to rush the installations, which of course resulted in rollback and we had to do it all over again.&lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;h2&gt;Product Key issues&lt;/h2&gt;  &lt;p&gt;This one you probably heard about, it has made its way trough the blogosphere big time. Seems the installer sets the trail period to 180 days for MOSS servers when installing SP2. This does not affect WSS! A hotfix in the works, and a workaround is available. &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&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;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;&lt;em /&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;em&gt;UPDATE 2009-06-29: Product group issued fixes for this, read more at:&lt;/em&gt;&lt;/strong&gt; &lt;a href="http://blogs.msdn.com/sharepoint/archive/2009/06/25/service-pack-2-update.aspx"&gt;http://blogs.msdn.com/sharepoint/archive/2009/06/25/service-pack-2-update.aspx&lt;/a&gt; &lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;p /&gt;  &lt;h2&gt;Disappearing host file&lt;/h2&gt;  &lt;p&gt;It looks like MOSS Search drops the hosts file and recreates it. So if the Service Account is not in the Admin group, it does not have the right to create it.&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a title="http://edinkapic.blogspot.com/2009/05/my-first-moss-2007-sp2-upgrade.html" href="http://edinkapic.blogspot.com/2009/05/my-first-moss-2007-sp2-upgrade.html"&gt;http://edinkapic.blogspot.com/2009/05/my-first-moss-2007-sp2-upgrade.html&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&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;/li&gt; &lt;/ul&gt;  &lt;p&gt; &lt;/p&gt;  &lt;h2&gt;No SharePoint Server 2007 Service Pack 2 .msp files are installed if you have the Stswwsp1.msp file in the Updates folder&lt;/h2&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a title="http://support.microsoft.com/default.aspx?scid=kb;en-us;968283&amp;amp;sd=rss&amp;amp;spid=11373" href="http://support.microsoft.com/default.aspx?scid=kb;en-us;968283&amp;amp;sd=rss&amp;amp;spid=11373"&gt;http://support.microsoft.com/default.aspx?scid=kb;en-us;968283&amp;amp;sd=rss&amp;amp;spid=11373&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt; &lt;/p&gt;  &lt;h2&gt;The Area Service Web service is removed from SharePoint Server 2007 after you install the 2007 Microsoft Office servers Service Pack 2 &lt;/h2&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a title="http://support.microsoft.com/default.aspx?scid=kb;en-us;970358&amp;amp;sd=rss&amp;amp;spid=11373" href="http://support.microsoft.com/default.aspx?scid=kb;en-us;970358&amp;amp;sd=rss&amp;amp;spid=11373"&gt;http://support.microsoft.com/default.aspx?scid=kb;en-us;970358&amp;amp;sd=rss&amp;amp;spid=11373&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt; &lt;/p&gt;  &lt;h2&gt;Changes web.config&lt;/h2&gt;  &lt;p&gt;We’ve seen in some cases that the SP2 installation changes the web.config on the server where Central Admin is hosted. This was also the server which ran the SharePoint Products and Configuration Wizard during the Service Pack install. &lt;/p&gt;  &lt;p&gt;The problem was that SP2 added a second defaultProxy-tag. The duplication of the defaulProxy-tag lead to failures loading the ASP.Net ISAPI filter.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.nnihlen.com/blog/images/www_nnihlen_com/blog/WindowsLiveWriter/IssueswithSP2forSharePoint2007_FE86/WebConfig_DefaultProxy.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="WebConfig_DefaultProxy" border="0" alt="WebConfig_DefaultProxy" src="http://www.nnihlen.com/blog/images/www_nnihlen_com/blog/WindowsLiveWriter/IssueswithSP2forSharePoint2007_FE86/WebConfig_DefaultProxy_thumb.png" width="347" height="114" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;h2&gt;Could not find load balancer service&lt;/h2&gt;  &lt;p&gt;After a Service Pack 2 install one of my colleagues encountered the error “Could not find load balancer service.” in the Event Log. SP2 cleared the LoadBalancerURL and Port values in the registry.  This only happened on the MOSS server with Central Admin. This was also the server on which ran the SharePoint Products and Technologies Wizard as a part of the Service Pack installation.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.nnihlen.com/blog/images/www_nnihlen_com/blog/WindowsLiveWriter/IssueswithSP2forSharePoint2007_FE86/LoadBalancerURL_Regedit.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="LoadBalancerURL_Regedit" border="0" alt="LoadBalancerURL_Regedit" src="http://www.nnihlen.com/blog/images/www_nnihlen_com/blog/WindowsLiveWriter/IssueswithSP2forSharePoint2007_FE86/LoadBalancerURL_Regedit_thumb.png" width="347" height="139" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;em&gt;&lt;font color="#ff0000"&gt;Update 2009-08-17:&lt;/font&gt;&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Two other issues I’ve seen folks stumble across:&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;SharePoint SP2: “The B2B upgrader timer job failed.”&lt;/strong&gt;&lt;/p&gt; &lt;a href="http://blogs.catapultsystems.com/matthew/archive/2009/08/01/sharepoint-sp2-“the-b2b-upgrader-timer-job-failed-”.aspx"&gt;http://blogs.catapultsystems.com/matthew/archive/2009/08/01/sharepoint-sp2-“the-b2b-upgrader-timer-job-failed-”.aspx&lt;/a&gt;  &lt;p&gt;&lt;strong&gt;     &lt;br /&gt;MOSS and WSS SP2 can break PDF searching&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://sharepointsearch.com/cs/blogs/notorioustech/archive/2009/07/28/moss-and-wss-sp2-can-break-pdf-searching.aspx"&gt;http://sharepointsearch.com/cs/blogs/notorioustech/archive/2009/07/28/moss-and-wss-sp2-can-break-pdf-searching.aspx&lt;/a&gt;&lt;/p&gt;&lt;img src="http://www.nnihlen.com/blog/aggbug/781.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/Nihlenanizer/~4/ohB_ixsTUDg" height="1" width="1"/&gt;</description>
            <dc:creator>Niklas Nihlen</dc:creator>
            <guid isPermaLink="false">http://www.nnihlen.com/blog/archive/2009/06/14/potential-issues-installing-sharepoint-2007-service-pack-2.aspx</guid>
            <pubDate>Sun, 14 Jun 2009 15:17:09 GMT</pubDate>
            <wfw:comment>http://www.nnihlen.com/blog/comments/781.aspx</wfw:comment>
            <comments>http://www.nnihlen.com/blog/archive/2009/06/14/potential-issues-installing-sharepoint-2007-service-pack-2.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://www.nnihlen.com/blog/comments/commentRss/781.aspx</wfw:commentRss>
        <feedburner:origLink>http://www.nnihlen.com/blog/archive/2009/06/14/potential-issues-installing-sharepoint-2007-service-pack-2.aspx</feedburner:origLink></item>
        <item>
            <title>Adding outlook tasks fast (using Launchy with a little programming)</title>
            <category>.NET Development</category>
            <category>Productivity</category>
            <link>http://feedproxy.google.com/~r/Nihlenanizer/~3/-LP7z6As2xE/adding-outlook-tasks-fast-using-launchy-with-a-little-programming.aspx</link>
            <description>&lt;p&gt;Being home from work with a stomach bug today I was thinking on how I can be more effective in what I do. One thing that popped to mind is how often in a work day I lose track of what I’m doing just because I remember something else I have to do. When the idea pops up I go off to outlook navigate to the right place, add a task… And boom, my mind is way off track.&lt;/p&gt;  &lt;p&gt;So my thought was “how do I shorten the interruption so that it does not derail my train of thought”?&lt;/p&gt;  &lt;p&gt;I’m a big fan of &lt;a href="http://www.launchy.net/"&gt;Launchy&lt;/a&gt;. It rocks and saves me time every day. So I figured that was the way to go and since I’m a computer nerd I immediately cracked open Visual Studio and got to work (if a hammer is the only tool you have, every problem looks like a nail :)).&lt;/p&gt;  &lt;p&gt;Here is the achieved result:&lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://www.nnihlen.com/blog/images/www_nnihlen_com/blog/WindowsLiveWriter/AddingoutlooktasksfastusingLaunchywithal_133F4/OutLookTask_In_Launchy_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="OutLookTask_In_Launchy" border="0" alt="OutLookTask_In_Launchy" src="http://www.nnihlen.com/blog/images/www_nnihlen_com/blog/WindowsLiveWriter/AddingoutlooktasksfastusingLaunchywithal_133F4/OutLookTask_In_Launchy_thumb.png" width="375" height="107" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Which puts the task in Outlook:&lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://www.nnihlen.com/blog/images/www_nnihlen_com/blog/WindowsLiveWriter/AddingoutlooktasksfastusingLaunchywithal_133F4/TaskInOutlook_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="TaskInOutlook" border="0" alt="TaskInOutlook" src="http://www.nnihlen.com/blog/images/www_nnihlen_com/blog/WindowsLiveWriter/AddingoutlooktasksfastusingLaunchywithal_133F4/TaskInOutlook_thumb.png" width="375" height="183" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;The code I used for this is very simple. Here is the code for opening up Outlook and creating the task.&lt;/p&gt;  &lt;pre class="brush: csharp; ruler: true;"&gt;static void Main(string[] args) 
{ 
    Microsoft.Office.Interop.Outlook.Application olApp; 
    Microsoft.Office.Interop.Outlook.NameSpace ns = null; 
    try 
    { 
        olApp = new Outlook.Application(); 
        ns = olApp.GetNamespace(&amp;amp;quot;mapi&amp;amp;quot;); 

        ns.Logon(&amp;amp;quot;Outlook&amp;amp;quot;, Missing.Value, false, true); 

        Outlook.TaskItem ti = olApp.CreateItem(Outlook.OlItemType.olTaskItem) as Outlook.TaskItem; 
        ti.Assign(); 
        ti.Subject = GetTaskSubject(args); 
        ti.DueDate = GetDueDate(args[0]);
        ti.Save(); 
    } 
    catch (Exception ex) 
    { 
        Console.WriteLine(ex.Message); 
        throw; 
    } 
    finally 
    { 
        ns.Logoff(); 
    } 
}&lt;/pre&gt;

&lt;p&gt;And in addition to that it’s just some parsing logic. The first word is my own little micro language. td –today, tm – tomorrow, nw – next week, jan – januari and so on. Check the huge switch-case statement in the code to se all my code words.&lt;/p&gt;

&lt;p&gt;So this is just in the prototype state so far, but works pretty good. The code needs some heavy refactoring and so on, but if you want to check it out. &lt;a href="/blog/Files/CreateOutlookTask.zip"&gt;Download code here&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;For the next step I’m looking at making it a “real” Launcy plug-in. Since I don’t want to step into C++ land I leaning towards the &lt;a href="http://sourceforge.net/projects/launchysharp"&gt;Launchy#&lt;/a&gt; project.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;UPDATE 2009-06-11: By request I've uploaded a compiled exe that you can download &lt;a href="http://www.nnihlen.com/blog/Files/ot.zip"&gt;here&lt;/a&gt;&lt;/em&gt;&lt;/strong&gt;&lt;strong&gt;&lt;em /&gt;&lt;/strong&gt;&lt;strong&gt;&lt;em&gt;.&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;&lt;img src="http://www.nnihlen.com/blog/aggbug/780.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/Nihlenanizer/~4/-LP7z6As2xE" height="1" width="1"/&gt;</description>
            <dc:creator>Niklas Nihlen</dc:creator>
            <guid isPermaLink="false">http://www.nnihlen.com/blog/archive/2009/05/22/adding-outlook-tasks-fast-using-launchy-with-a-little-programming.aspx</guid>
            <pubDate>Fri, 22 May 2009 15:05:46 GMT</pubDate>
            <wfw:comment>http://www.nnihlen.com/blog/comments/780.aspx</wfw:comment>
            <comments>http://www.nnihlen.com/blog/archive/2009/05/22/adding-outlook-tasks-fast-using-launchy-with-a-little-programming.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://www.nnihlen.com/blog/comments/commentRss/780.aspx</wfw:commentRss>
        <feedburner:origLink>http://www.nnihlen.com/blog/archive/2009/05/22/adding-outlook-tasks-fast-using-launchy-with-a-little-programming.aspx</feedburner:origLink></item>
        <item>
            <title>Hiding Execution Window for Console App</title>
            <category>.NET Development</category>
            <link>http://feedproxy.google.com/~r/Nihlenanizer/~3/Vk7QGdOeLkE/hiding-execution-window-for-console-app.aspx</link>
            <description>&lt;p&gt;Ever did a nice little console applications that does something smart and you’re satisfied with what it does but it’s kinda irritating that it steals focus and flickers by the screen during execution. Could be something like the GUID generator I wrote a while back, described in my post: &lt;a href="/blog/archive/0001/01/01/489.aspx"&gt;Creating GUID’s&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;So here the simple solution: &lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;In Visual Studio 2008, right-click the project&lt;/li&gt;    &lt;li&gt;Choose Properties…&lt;/li&gt;    &lt;li&gt;Change Output type from Console Application to Windows Application.&lt;/li&gt;    &lt;li&gt;Done.&lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;&lt;a href="http://www.nnihlen.com/blog/images/www_nnihlen_com/blog/WindowsLiveWriter/HidingExecutionWindowforConsoleApp_109F2/Windows%20Application_2.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: block; float: none; margin-left: auto; border-top: 0px; margin-right: auto; border-right: 0px" title="Windows Application" border="0" alt="Windows Application" src="http://www.nnihlen.com/blog/images/www_nnihlen_com/blog/WindowsLiveWriter/HidingExecutionWindowforConsoleApp_109F2/Windows%20Application_thumb.png" width="320" height="162" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://www.nnihlen.com/blog/aggbug/779.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/Nihlenanizer/~4/Vk7QGdOeLkE" height="1" width="1"/&gt;</description>
            <dc:creator>Niklas Nihlen</dc:creator>
            <guid isPermaLink="false">http://www.nnihlen.com/blog/archive/2009/05/04/hiding-execution-window-for-console-app.aspx</guid>
            <pubDate>Mon, 04 May 2009 16:54:43 GMT</pubDate>
            <wfw:comment>http://www.nnihlen.com/blog/comments/779.aspx</wfw:comment>
            <comments>http://www.nnihlen.com/blog/archive/2009/05/04/hiding-execution-window-for-console-app.aspx#feedback</comments>
            <wfw:commentRss>http://www.nnihlen.com/blog/comments/commentRss/779.aspx</wfw:commentRss>
        <feedburner:origLink>http://www.nnihlen.com/blog/archive/2009/05/04/hiding-execution-window-for-console-app.aspx</feedburner:origLink></item>
        <item>
            <title>Getting a hang on twitter</title>
            <category>Blogging</category>
            <category>Computing</category>
            <link>http://feedproxy.google.com/~r/Nihlenanizer/~3/R_baHGEkIo8/getting-a-hang-on-twitter.aspx</link>
            <description>&lt;p&gt;This is just a fairly pointless rant on twitter usage, so if it don’t fall within your sphere of interest, stop reading now! :)&lt;/p&gt;  &lt;p&gt;A while back I wrote a &lt;a href="http://www.nnihlen.com/blog/archive/2008/12/16/getting-into-twitter.aspx"&gt;post&lt;/a&gt; about starting to &lt;a href="http://twitter.com"&gt;twitter&lt;/a&gt;. I’m starting to get a hang of it now. The thing that seems a little conflicted in my mind is what people are using it for. Some, including myself, use it as micro blogging. That is writing short posts that are to short (and insignificant) to be their own blog post. The other camp simply uses it as the MSN Messenger status message with tweets like: “I’m at home”, “I’m at the airport”, “eating pizza” and so on. There no right or wrong here, simply a reflection on my part.&lt;/p&gt;  &lt;p&gt;I haven’t retweeted anything yet, guess the old don’t forward chain mails instinct makes it feel uneasy.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.hanselman.com/blog"&gt;Scott Hanselman&lt;/a&gt; just wrote a post on the subject of getting started with twitter: &lt;a href="http://www.hanselman.com/blog/HowToTwitterFirstStepsAndATwitterGlossary.aspx"&gt;How To Twitter - First Steps and a Twitter Glossary.&lt;/a&gt; It’s very good and explanatory and I wished it was available when I got started.&lt;/p&gt;  &lt;p&gt;I also wrote about my choice of twitter client: &lt;a href="http://code.google.com/p/wittytwitter/"&gt;Witty&lt;/a&gt;. Witty is a neat app for twitter but I tried &lt;a href="http://www.tweetdeck.com/beta/"&gt;TweetDeck&lt;/a&gt; and got hooked. It’s really nice and the fact that you can mark tweets as read is a (simple) killer feature in my mind. &lt;a href="http://www.thirteen23.com/experiences/desktop/chirp/"&gt;Chirp&lt;/a&gt; looks really pretty but I haven’t had the time to try it out yet.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Next step&lt;/strong&gt;: Installing &lt;a href="http://www.tinytwitter.com/"&gt;Tiny Twitter&lt;/a&gt; on my Windows Mobile Phone.&lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;p&gt;So nowadays I’m: @&lt;a href="http://twitter.com/nippe"&gt;nippe&lt;/a&gt;&lt;/p&gt;&lt;img src="http://www.nnihlen.com/blog/aggbug/778.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/Nihlenanizer/~4/R_baHGEkIo8" height="1" width="1"/&gt;</description>
            <dc:creator>Niklas Nihlen</dc:creator>
            <guid isPermaLink="false">http://www.nnihlen.com/blog/archive/2009/02/05/getting-a-hang-on-twitter.aspx</guid>
            <pubDate>Thu, 05 Feb 2009 10:00:02 GMT</pubDate>
            <wfw:comment>http://www.nnihlen.com/blog/comments/778.aspx</wfw:comment>
            <comments>http://www.nnihlen.com/blog/archive/2009/02/05/getting-a-hang-on-twitter.aspx#feedback</comments>
            <wfw:commentRss>http://www.nnihlen.com/blog/comments/commentRss/778.aspx</wfw:commentRss>
        <feedburner:origLink>http://www.nnihlen.com/blog/archive/2009/02/05/getting-a-hang-on-twitter.aspx</feedburner:origLink></item>
        <item>
            <title>Converting a Html News Page to RSS</title>
            <category>.NET Development</category>
            <category>Blogging</category>
            <category>Productivity</category>
            <category>Computing</category>
            <link>http://feedproxy.google.com/~r/Nihlenanizer/~3/XfWqVU9qi5I/775.aspx</link>
            <description>&lt;p&gt;This have been my little weekend project this weekend (ok, some Christmas preparations to). &lt;br /&gt;
&lt;/p&gt;
&lt;h2&gt;Background&lt;/h2&gt;
&lt;p&gt;As some of you know I play underwater rugby. The communication from the Swedish Underwater Rugby Association to it’s members is mainly through the news page on their site’s news page:  &lt;a href="http://www.ssdf.se/t3.aspx?p=51459"&gt;http://www.ssdf.se/t3.aspx?p=51459&lt;/a&gt; (in Swedish). This page is only exposing HTML and does not expose an rss-feed (they should have used SharePoint). My problem is that I never remember to visit the site with regular intervals, so I miss out on stuff. &lt;br /&gt;
&lt;/p&gt;
&lt;h2&gt;Approach&lt;/h2&gt;
&lt;p&gt;As I truly am a RSS junkie, that’s what I wanted. To be able to get these news (together with all other news I’m interested in) in my feed reader. So the approach I took outlined:&lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;Get HTML from newspage &lt;/li&gt;
    &lt;li&gt;Make sense out of and parse HTML &lt;/li&gt;
    &lt;li&gt;Generate RSS XML and save to file &lt;/li&gt;
    &lt;li&gt;Expose the RSS on my own web server &lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Doing all the parsing by hand didn’t sound very tempting so I &lt;a href="http://www.live.com"&gt;Live&lt;/a&gt;d around a little and found the &lt;a href="http://www.codeplex.com/htmlagilitypack"&gt;HtmlAgilityPack&lt;/a&gt; on &lt;a href="http://www.codeplex.com/"&gt;CodePlex&lt;/a&gt;, which is a framework that let’s you query a HTML document in the same way you would query a XML document using XSLT or XPath. The release on codeplex was compiled against the 2.0 framework, I simply changed target framework for the project an recompiled, worked like a charm.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;h2&gt;Let’s Get Going&lt;/h2&gt;
&lt;h3&gt;Getting the HTML&lt;/h3&gt;
&lt;p&gt;The HtmlAgilityPack supports getting the HTML itself by using something like:&lt;/p&gt;
&lt;pre class="brush: csharp"&gt;HtmlWeb hw = new HtmlWeb();
HtmlDocument newsDoc = hw.Load(url);
&lt;/pre&gt;
&lt;p&gt;The problem I had with that (and it’s probably due to incompetence on my part) is that I could not get the right encoding (very important in Swedish due to our extended alphabet). So what I ended up doing was getting the HTML myself and load it into a HtmlAgilityPack HtmlDocument object:&lt;/p&gt;
&lt;pre class="c#" name="code"&gt;// Did not manage to solve the encoding bit so I retrive the data myself first ...
HttpWebRequest webRequest = (HttpWebRequest) WebRequest.Create(urlToFetch);
HttpWebResponse webResponse = (HttpWebResponse) webRequest.GetResponse();

// ... and then apply the encoding while reading in the stream into HtmlAgilityPack object
HtmlDocument htmlDocument = new HtmlDocument();
htmlDocument.Load(webResponse.GetResponseStream(), Encoding.Default);&lt;/pre&gt;
&lt;p&gt; &lt;/p&gt;
&lt;h3&gt;Parsing the HTML&lt;/h3&gt;
&lt;p&gt;Now it’s time to leverage the power of the HtmlAgilityPack, but first I did a manual analysis of the HTML using View Source and the IE Developer Toolbar. I found that I could identify each a news item by looking for a DIV-tag with the class attribute set to clMainnewsEntries.&lt;/p&gt;
&lt;p align="center"&gt;&lt;a href="http://www.nnihlen.com/blog/images/www_nnihlen_com/blog/WindowsLiveWriter/ConvertingaHtmlNewsPagetoRSS_1694/Html2Rss_IEDevToolbar_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="Html2Rss_IEDevToolbar" border="0" alt="Html2Rss_IEDevToolbar" width="489" height="484" src="http://www.nnihlen.com/blog/images/www_nnihlen_com/blog/WindowsLiveWriter/ConvertingaHtmlNewsPagetoRSS_1694/Html2Rss_IEDevToolbar_thumb.png" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;So, let’s get cracking and find those nodes:&lt;/p&gt;
&lt;pre class="c#" name="code"&gt;HtmlNodeCollection htmlNodeCollection = htmlDocument.DocumentNode.SelectNodes("//div[@class='clMainnewsEntries']");

foreach (HtmlNode newsNode in htmlNodeCollection)
{
    // ... generate rss items ...
}&lt;/pre&gt;
&lt;p&gt;That was easy, now the HTML stars working against me. A few issues are &lt;/p&gt;
&lt;h4&gt;No Author&lt;/h4&gt;
&lt;p&gt;The news have no author, that I easily can get to programmatically. But it aint really important either so I’m just setting it to “N/A”.&lt;/p&gt;
&lt;h4&gt;No Links&lt;/h4&gt;
&lt;p&gt;Not all news have links and if they do it’s hard to tell if it’s a link to the news item or something else. So to fill the link-element in the rss I try to find a link that has title tag (which seems to be the way this cms system handles read more links.&lt;/p&gt;
&lt;pre class="c#" name="code"&gt;string link = string.Empty;

if (newsNode.SelectSingleNode(".//a[@title!='']") != null)
{
    link = newsNode.SelectSingleNode(".//a[@title!='']").Attributes["href"].Value;
    if (!link.StartsWith("http"))
    {
        link = String.Format("{0}{1}", "http://www.ssdf.se/", link);
    }
}&lt;/pre&gt;
&lt;h4&gt;No Publishing Date &lt;/h4&gt;
&lt;p&gt;This one is trickier. To add on the confusion I learned the editors update a news item when they want to push it to the top of the list. So what I do here is simply put the date and time when I retrieve it the first time, keeping track of them with a hash (see next paragraph). This should work fine when it runs with a steady intervall, tough the first time it will give all news the same date.&lt;/p&gt;
&lt;h4&gt;Guid&lt;/h4&gt;
&lt;p&gt;To keep track of the items I calcluate a hash for each item and store that in a separate XML file.&lt;/p&gt;
&lt;pre class="c#" name="code"&gt;public string ComputeHash(string Value)
{
    System.Security.Cryptography.MD5CryptoServiceProvider x = 
        new System.Security.Cryptography.MD5CryptoServiceProvider();
    byte[] data = System.Text.Encoding.ASCII.GetBytes(Value);
    data = x.ComputeHash(data);
    string ret = "";
    for (int i = 0; i &amp;lt; data.Length; i++)
    {
        ret += data[i].ToString("x2").ToLower();
    }
    return ret;
}&lt;/pre&gt;
&lt;p&gt;I put this hash in the guid-tag of the RSS. So if the news is updated I hope they change something in it so it renders a different hash. &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;h3&gt;Building the RSS&lt;/h3&gt;
&lt;p&gt;It’s time to start building the RSS. I start creating the document using LinqToXml (which by the way is pure love to use and deserves a blog post all of it’s own):&lt;/p&gt;
&lt;pre class="c#" name="code"&gt;// Creating XDocument
XDocument xDocument = new XDocument(
    new XDeclaration("1.0", "windows-1252", "true"),
    new XProcessingInstruction("xml-stylesheet", "type=\"text/xsl\" href=\"EvelntLog.xsl\"" ),
    new XElement("rss", new XAttribute("version", "2.0"),
         new XElement("channel",
                      new XElement("title", "UV-rugbynyheter"),
                      new XElement("link", HtmlDocument.HtmlEncode( "http://www.ssdf.se/t3.aspx?p=51459") ),
                      new XElement("description", "Undervattensrugbynyheter från SSDF"),
                      new XElement("language", "sv-se")
             )
        )
    );&lt;/pre&gt;
&lt;p&gt;And then I add each item to item to the feed:&lt;/p&gt;
&lt;pre class="c#" name="code"&gt;root.Add(new XElement("item", "",
      new XElement("title", newsNode.SelectSingleNode("h1").InnerHtml),
      new XElement("description", newsNode.OuterHtml),
      new XElement("link", link),
      new XElement("author", "N/A"),
      new XElement("pubDate", pubDate.ToString("r")),
      new XElement("guid", postHash)

));&lt;/pre&gt;
&lt;p&gt; &lt;/p&gt;
&lt;h3&gt;Finalizing&lt;/h3&gt;
&lt;p&gt;I put this little program on my web server and used the windows scheduler to run it every 2 hours. And the final piece of code pushes the generated file out to the right directory.&lt;/p&gt;
&lt;pre class="c#" name="code"&gt;if(Convert.ToBoolean(ConfigurationManager.AppSettings["CopyFile"]))
{
    File.Copy(".\\" + ConfigurationManager.AppSettings["Filename"], 
        Path.Combine(ConfigurationManager.AppSettings["TargetDir"], 
        ConfigurationManager.AppSettings["Filename"]), true);
}&lt;/pre&gt;
&lt;p&gt;You can grab the source code for the first working version &lt;a href="http://www.nnihlen.com/blog/Files/Html2Rss.zip"&gt;here&lt;/a&gt;. Now it’s refactor time!&lt;/p&gt;&lt;img src="http://www.nnihlen.com/blog/aggbug/775.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/Nihlenanizer/~4/XfWqVU9qi5I" height="1" width="1"/&gt;</description>
            <dc:creator>Niklas Nihlen</dc:creator>
            <guid isPermaLink="false">http://www.nnihlen.com/blog/archive/2008/12/25/775.aspx</guid>
            <pubDate>Thu, 25 Dec 2008 20:39:26 GMT</pubDate>
            <wfw:comment>http://www.nnihlen.com/blog/comments/775.aspx</wfw:comment>
            <comments>http://www.nnihlen.com/blog/archive/2008/12/25/775.aspx#feedback</comments>
            <wfw:commentRss>http://www.nnihlen.com/blog/comments/commentRss/775.aspx</wfw:commentRss>
        <feedburner:origLink>http://www.nnihlen.com/blog/archive/2008/12/25/775.aspx</feedburner:origLink></item>
        <item>
            <title>Getting into Twitter</title>
            <category>Blogging</category>
            <category>Computing</category>
            <category>Productivity</category>
            <link>http://feedproxy.google.com/~r/Nihlenanizer/~3/K29PbsPQZ-w/getting-into-twitter.aspx</link>
            <description>&lt;p&gt;&lt;a href="http://www.nnihlen.com/blog/images/www_nnihlen_com/blog/WindowsLiveWriter/GettingintoTwitter_14E93/twitter_logo_s_2.png"&gt;&lt;img title="twitter_logo_s" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; margin: 0px 10px 10px 0px; border-right-width: 0px" height="55" alt="twitter_logo_s" src="http://www.nnihlen.com/blog/images/www_nnihlen_com/blog/WindowsLiveWriter/GettingintoTwitter_14E93/twitter_logo_s_thumb.png" width="175" align="left" border="0" /&gt;&lt;/a&gt;Everybody is talking about twitter, tweet this and tweeting that. And I haven’t really got the point yet. So this Saturday during a Chili cook out my friends &lt;a href="http://marten.gustafson.pp.se/"&gt;Mårten&lt;/a&gt; and &lt;a href="http://skjnorrman.blogspot.com/"&gt;Johan&lt;/a&gt; tried to explain it to me. &lt;/p&gt;  &lt;p&gt;They did a job good enough to make me give it a try anyway. So I’m now on &lt;a href="http://twitter.com/nippe"&gt;http://twitter.com/nippe&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;I haven’t said a twittering word yet, I think I’m going to listen for a while first to get the gist of it.&lt;a href="http://www.nnihlen.com/blog/images/www_nnihlen_com/blog/WindowsLiveWriter/GettingintoTwitter_14E93/witty_2.png"&gt;&lt;img title="witty" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; margin-left: 0px; margin-right: 0px; border-right-width: 0px" height="150" alt="witty" src="http://www.nnihlen.com/blog/images/www_nnihlen_com/blog/WindowsLiveWriter/GettingintoTwitter_14E93/witty_thumb.png" width="150" align="right" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;So I got an account what’s the next thing you do. See if you can find some cool apps to get you on your way, of course. I found &lt;a href="http://code.google.com/p/wittytwitter/"&gt;Witty&lt;/a&gt; which seems to be a nice open source, WPF app. And hey, glossy buttons always makes adoption easier :).&lt;/p&gt;&lt;img src="http://www.nnihlen.com/blog/aggbug/774.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/Nihlenanizer/~4/K29PbsPQZ-w" height="1" width="1"/&gt;</description>
            <dc:creator>Niklas Nihlen</dc:creator>
            <guid isPermaLink="false">http://www.nnihlen.com/blog/archive/2008/12/16/getting-into-twitter.aspx</guid>
            <pubDate>Tue, 16 Dec 2008 22:57:21 GMT</pubDate>
            <wfw:comment>http://www.nnihlen.com/blog/comments/774.aspx</wfw:comment>
            <comments>http://www.nnihlen.com/blog/archive/2008/12/16/getting-into-twitter.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://www.nnihlen.com/blog/comments/commentRss/774.aspx</wfw:commentRss>
        <feedburner:origLink>http://www.nnihlen.com/blog/archive/2008/12/16/getting-into-twitter.aspx</feedburner:origLink></item>
        <item>
            <title>Adobe PDF iFilter now in 64-bit</title>
            <category>SharePoint</category>
            <link>http://feedproxy.google.com/~r/Nihlenanizer/~3/BOM_XwzIjJY/adobe-pdf-ifilter-now-in-64-bit.aspx</link>
            <description>&lt;p&gt;Finally! Adobe released a 64 bit version of the PDF iFilter. You can get it here: &lt;a href="http://www.adobe.com/support/downloads/detail.jsp?ftpID=4025."&gt;http://www.adobe.com/support/downloads/detail.jsp?ftpID=4025.&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;But before you decide if this is the iFilter you wanna go with. Check out Je Li’s performance measurements comparing Adobes and Foxit’s iFilter: &lt;a href="http://blogs.msdn.com/opal/archive/2008/12/10/pdf-ifilter-battle-foxit-vs-adobe-64bit-version.aspx"&gt;http://blogs.msdn.com/opal/archive/2008/12/10/pdf-ifilter-battle-foxit-vs-adobe-64bit-version.aspx&lt;/a&gt;&lt;/p&gt;&lt;img src="http://www.nnihlen.com/blog/aggbug/773.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/Nihlenanizer/~4/BOM_XwzIjJY" height="1" width="1"/&gt;</description>
            <dc:creator>Niklas Nihlen</dc:creator>
            <guid isPermaLink="false">http://www.nnihlen.com/blog/archive/2008/12/14/adobe-pdf-ifilter-now-in-64-bit.aspx</guid>
            <pubDate>Sun, 14 Dec 2008 22:06:34 GMT</pubDate>
            <wfw:comment>http://www.nnihlen.com/blog/comments/773.aspx</wfw:comment>
            <comments>http://www.nnihlen.com/blog/archive/2008/12/14/adobe-pdf-ifilter-now-in-64-bit.aspx#feedback</comments>
            <wfw:commentRss>http://www.nnihlen.com/blog/comments/commentRss/773.aspx</wfw:commentRss>
        <feedburner:origLink>http://www.nnihlen.com/blog/archive/2008/12/14/adobe-pdf-ifilter-now-in-64-bit.aspx</feedburner:origLink></item>
        <item>
            <title>3 Weeks with Windows Server 2008 on My Laptop</title>
            <category>Computing</category>
            <category>Productivity</category>
            <link>http://feedproxy.google.com/~r/Nihlenanizer/~3/p3yhniqHzKc/3-weeks-with-windows-server-2008-on-my-laptop.aspx</link>
            <description>&lt;p&gt;&lt;a href="http://www.nnihlen.com/blog/images/www_nnihlen_com/blog/WindowsLiveWriter/3WeekswithWindowsServer2008onMyLaptop_BBCC/logo-ms-ws08-v_2.png"&gt;&lt;img title="logo-ms-ws08-v" style="border-right: 0px; border-top: 0px; display: inline; margin: 0px 10px 10px 0px; border-left: 0px; border-bottom: 0px" height="100" alt="logo-ms-ws08-v" src="http://www.nnihlen.com/blog/images/www_nnihlen_com/blog/WindowsLiveWriter/3WeekswithWindowsServer2008onMyLaptop_BBCC/logo-ms-ws08-v_thumb.png" width="224" align="left" border="0" /&gt;&lt;/a&gt; A couple of weeks ago I felt that it was time to give my laptop (Dell Latitude D830) a clean install. I’ve been running Vista 64-bit on it and it has worked great. I’ve also been curious at Hyper-V and not totally satisfied with Virtual PC (the vm’s are often to slow).&lt;/p&gt;  &lt;p&gt;Said and done, I installed Windows Server 2008 Standard Edition and got on to configuring it and installing features and roles. That WS2008 is not a client OS is a given, but the amount of configuration to get it to work like one was a little over the top for my taste. But hey, what don’t you go trough for learning something new. There is a ton of articles out there describing the steps, here’s a few that I followed:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://www.win2008workstation.com/wordpress/"&gt;Convert your Windows Server 2008 to a Workstation!&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://blogs.msdn.com/vijaysk/archive/2008/02/11/using-windows-server-2008-as-a-super-desktop-os.aspx"&gt;Using Windows Server 2008 as a SUPER workstation OS&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;Bluetooth&lt;/li&gt;    &lt;ul&gt;     &lt;li&gt;&lt;a href="http://www.gilkirkpatrick.com/Blog/post/Installing-the-Microsoft-Bluetooth-Stack-on-Windows-Server-2008.aspx"&gt;Installing the Microsoft Bluetooth Stack on Windows Server 2008&lt;/a&gt;&lt;/li&gt;      &lt;li&gt;&lt;a href="http://www.windows-now.com/blogs/robert/enabling-bluetooth-on-windows-server-2008.aspx"&gt;Enabling Bluetooth on Windows Server 2008&lt;/a&gt;&lt;/li&gt;   &lt;/ul&gt; &lt;/ul&gt;  &lt;p&gt;After getting WiFi, Aero and sound working I struggled with Bluetooth which I didn’t get fully working which is a big setback because I use (and love) a bluetooth mouse. &lt;/p&gt;  &lt;p&gt;Next step for me was installing the Role Hyper-V. Worked great, took me a while to figure out the how the networking worked and that it don’t work with wireless as Virtual PC. The big drawback for me was that when Hyper-V is installed it disables the laptops ability to Sleep &amp;amp; Hibernate and I just love to be able to slam down the lid, go some place and open it up and continue where I was.&lt;/p&gt;  &lt;p&gt;So overall I’m happy with it but the bluetooth and Sleep/Hibernate issues are deal breakers for me, so I’m going back to Vista 64. Should I’ve had a stationary computer I would probably stick with Windows Server 2008 because Hyper-V really rocks!&lt;/p&gt;&lt;img src="http://www.nnihlen.com/blog/aggbug/772.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/Nihlenanizer/~4/p3yhniqHzKc" height="1" width="1"/&gt;</description>
            <dc:creator>Niklas Nihlen</dc:creator>
            <guid isPermaLink="false">http://www.nnihlen.com/blog/archive/2008/11/07/3-weeks-with-windows-server-2008-on-my-laptop.aspx</guid>
            <pubDate>Fri, 07 Nov 2008 20:57:41 GMT</pubDate>
            <wfw:comment>http://www.nnihlen.com/blog/comments/772.aspx</wfw:comment>
            <comments>http://www.nnihlen.com/blog/archive/2008/11/07/3-weeks-with-windows-server-2008-on-my-laptop.aspx#feedback</comments>
            <wfw:commentRss>http://www.nnihlen.com/blog/comments/commentRss/772.aspx</wfw:commentRss>
        <feedburner:origLink>http://www.nnihlen.com/blog/archive/2008/11/07/3-weeks-with-windows-server-2008-on-my-laptop.aspx</feedburner:origLink></item>
        <item>
            <title>Shortcuts that Saves Time</title>
            <category>Productivity</category>
            <link>http://feedproxy.google.com/~r/Nihlenanizer/~3/Vkf3qK6T17w/shortcuts-that-saves-time.aspx</link>
            <description>&lt;p&gt;Hi there, this post is about being a little more efficient in your everyday work. These shortcuts maybe saves me half a sec every time I use them, but I do use them literally a hundred times a day.  &lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;h2&gt;Ctrl + E&lt;/h2&gt;  &lt;p&gt;Using the Ctrl + E keyboard short cut gets you to the search box in many major applications, such as: Internet Explorer, Mozilla FireFox and Outlook 2007.&lt;/p&gt;  &lt;p&gt;Some examples:&lt;/p&gt;  &lt;p&gt;Outlook    &lt;br /&gt;&lt;a href="http://www.nnihlen.com/blog/images/www_nnihlen_com/blog/WindowsLiveWriter/ShortcutsEverybodyShouldKnow_119B0/ShortCuts_OutlookCtrlE_2.png"&gt;&lt;img title="Ctrl + E in Outlook" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="156" alt="Ctrl + E in Outlook" src="http://www.nnihlen.com/blog/images/www_nnihlen_com/blog/WindowsLiveWriter/ShortcutsEverybodyShouldKnow_119B0/ShortCuts_OutlookCtrlE_thumb.png" width="354" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Internet Explorer    &lt;br /&gt;&lt;a href="http://www.nnihlen.com/blog/images/www_nnihlen_com/blog/WindowsLiveWriter/ShortcutsEverybodyShouldKnow_119B0/ShortCuts_IE_CtrlE_2.png"&gt;&lt;img title="Ctrl + E in Internet Explorer" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="116" alt="Ctrl + E in Internet Explorer" src="http://www.nnihlen.com/blog/images/www_nnihlen_com/blog/WindowsLiveWriter/ShortcutsEverybodyShouldKnow_119B0/ShortCuts_IE_CtrlE_thumb.png" width="354" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;FireFox    &lt;br /&gt;&lt;a href="http://www.nnihlen.com/blog/images/www_nnihlen_com/blog/WindowsLiveWriter/ShortcutsEverybodyShouldKnow_119B0/ShortCuts_FF_Search_CtrlD_2.png"&gt;&lt;img title="Ctrl + E in FireFox" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="109" alt="Ctrl + E in FireFox" src="http://www.nnihlen.com/blog/images/www_nnihlen_com/blog/WindowsLiveWriter/ShortcutsEverybodyShouldKnow_119B0/ShortCuts_FF_Search_CtrlD_thumb.png" width="354" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;h2&gt;ALT + D&lt;/h2&gt;  &lt;p&gt;A not so known shortcut is ALT + D that takes you to the address field of your browser (I only verified this in IE and FF). A nice effect is that it selects the whole address, so ALT+D and start typing and you’re entering a new address.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Internet Explorer      &lt;br /&gt;&lt;/strong&gt;&lt;a href="http://www.nnihlen.com/blog/images/www_nnihlen_com/blog/WindowsLiveWriter/ShortcutsEverybodyShouldKnow_119B0/ShortCuts_AltD_ie_2.png"&gt;&lt;img title="ShortCuts_AltD_ie" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="74" alt="ShortCuts_AltD_ie" src="http://www.nnihlen.com/blog/images/www_nnihlen_com/blog/WindowsLiveWriter/ShortcutsEverybodyShouldKnow_119B0/ShortCuts_AltD_ie_thumb.png" width="354" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;FireFox      &lt;br /&gt;&lt;/strong&gt;&lt;a href="http://www.nnihlen.com/blog/images/www_nnihlen_com/blog/WindowsLiveWriter/ShortcutsEverybodyShouldKnow_119B0/ShortCuts_AltD_FF_2.png"&gt;&lt;img title="ShortCuts_AltD_FF" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="74" alt="ShortCuts_AltD_FF" src="http://www.nnihlen.com/blog/images/www_nnihlen_com/blog/WindowsLiveWriter/ShortcutsEverybodyShouldKnow_119B0/ShortCuts_AltD_FF_thumb.png" width="354" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;p&gt;Do you have any productivity boosting short cuts?&lt;/p&gt;&lt;img src="http://www.nnihlen.com/blog/aggbug/771.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/Nihlenanizer/~4/Vkf3qK6T17w" height="1" width="1"/&gt;</description>
            <dc:creator>Niklas Nihlen</dc:creator>
            <guid isPermaLink="false">http://www.nnihlen.com/blog/archive/2008/11/06/shortcuts-that-saves-time.aspx</guid>
            <pubDate>Wed, 05 Nov 2008 23:23:15 GMT</pubDate>
            <wfw:comment>http://www.nnihlen.com/blog/comments/771.aspx</wfw:comment>
            <comments>http://www.nnihlen.com/blog/archive/2008/11/06/shortcuts-that-saves-time.aspx#feedback</comments>
            <wfw:commentRss>http://www.nnihlen.com/blog/comments/commentRss/771.aspx</wfw:commentRss>
        <feedburner:origLink>http://www.nnihlen.com/blog/archive/2008/11/06/shortcuts-that-saves-time.aspx</feedburner:origLink></item>
        <item>
            <title>A Sweet Little File Rename Utility</title>
            <category>Productivity</category>
            <link>http://feedproxy.google.com/~r/Nihlenanizer/~3/L1OUH0S7c2M/a-sweet-little-file-rename-utility.aspx</link>
            <description>&lt;p&gt;Every now and then I want to rename files in a folder according to a pattern. Mostly it is to hook up audio books in my iPod. Then I have to rename all the files with .m4a extension to .m4b (and don’t ask me why apple did choose this idiotic solution).&lt;/p&gt;  &lt;p&gt;This is easily done with a dos command in windows (&lt;font face="Courier New"&gt;ren *.m4a *.m4b&lt;/font&gt;). But when you want to change file names according to a pattern it gets trickier. I stumbled across this sometimes when I want to rename digital photos and such.&lt;/p&gt;  &lt;p&gt;Anyway, I found this utility via &lt;a href="http://lifehacker.com/"&gt;lifehacker&lt;/a&gt; and it’s called &lt;a href="http://myprogramspace.blogspot.com/2008/07/krename-multi-file-rename-tool-v0.html"&gt;KRename&lt;/a&gt;. I’ve just played around with it a little but for the things I needed off the bat it came trough.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.nnihlen.com/blog/images/www_nnihlen_com/blog/WindowsLiveWriter/ASweetLittleFileRenameUtility_9B77/KRename_2.png"&gt;&lt;img title="KRename" style="border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px" height="329" alt="KRename" src="http://www.nnihlen.com/blog/images/www_nnihlen_com/blog/WindowsLiveWriter/ASweetLittleFileRenameUtility_9B77/KRename_thumb.png" width="354" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://www.nnihlen.com/blog/aggbug/770.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/Nihlenanizer/~4/L1OUH0S7c2M" height="1" width="1"/&gt;</description>
            <dc:creator>Niklas Nihlen</dc:creator>
            <guid isPermaLink="false">http://www.nnihlen.com/blog/archive/2008/11/05/a-sweet-little-file-rename-utility.aspx</guid>
            <pubDate>Wed, 05 Nov 2008 10:14:55 GMT</pubDate>
            <wfw:comment>http://www.nnihlen.com/blog/comments/770.aspx</wfw:comment>
            <comments>http://www.nnihlen.com/blog/archive/2008/11/05/a-sweet-little-file-rename-utility.aspx#feedback</comments>
            <wfw:commentRss>http://www.nnihlen.com/blog/comments/commentRss/770.aspx</wfw:commentRss>
        <feedburner:origLink>http://www.nnihlen.com/blog/archive/2008/11/05/a-sweet-little-file-rename-utility.aspx</feedburner:origLink></item>
        <item>
            <title>Consolas Font in Command Prompt</title>
            <category>Computing</category>
            <link>http://feedproxy.google.com/~r/Nihlenanizer/~3/YAc5ddf4SK0/consolas-font-in-command-prompt.aspx</link>
            <description>&lt;p&gt;I am a font geek and I just love the Consolas font. I started using Consolas in Visual Studio and now I want it in more places. So I sat out on a mission to get Consolas into my Command Prompt.&lt;/p&gt;  &lt;p&gt;Here’s how:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Get Consolas Font Pack and install it &lt;/li&gt;    &lt;li&gt;Crank up regedit and browse to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Console\TrueTypeFont &lt;/li&gt;    &lt;li&gt;Add a string value named “00” &lt;/li&gt;    &lt;li&gt;Add “Consolas” as value     &lt;br /&gt;&lt;a href="http://nnihlen.com/blog/images/nnihlen_com/blog/WindowsLiveWriter/ConsolasFontinCommandPrompt_9E7A/ConsolasPost_Regedit_2.png"&gt;&lt;img title="ConsolasPost_Regedit" style="border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px" height="235" alt="ConsolasPost_Regedit" src="http://nnihlen.com/blog/images/nnihlen_com/blog/WindowsLiveWriter/ConsolasFontinCommandPrompt_9E7A/ConsolasPost_Regedit_thumb.png" width="504" border="0" /&gt;&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Restart your computer&lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;And voila, consolas in the command prompt:&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Before&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://nnihlen.com/blog/images/nnihlen_com/blog/WindowsLiveWriter/ConsolasFontinCommandPrompt_9E7A/ConsolasPost_CmdBefore_4.png"&gt;&lt;img title="ConsolasPost_CmdBefore" style="border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px" height="273" alt="ConsolasPost_CmdBefore" src="http://nnihlen.com/blog/images/nnihlen_com/blog/WindowsLiveWriter/ConsolasFontinCommandPrompt_9E7A/ConsolasPost_CmdBefore_thumb_1.png" width="504" border="0" /&gt;&lt;/a&gt;     &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;After&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://nnihlen.com/blog/images/nnihlen_com/blog/WindowsLiveWriter/ConsolasFontinCommandPrompt_9E7A/ConsolasFont_CmdAfter_2.png"&gt;&lt;img title="ConsolasFont_CmdAfter" style="border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px" height="308" alt="ConsolasFont_CmdAfter" src="http://nnihlen.com/blog/images/nnihlen_com/blog/WindowsLiveWriter/ConsolasFontinCommandPrompt_9E7A/ConsolasFont_CmdAfter_thumb.png" width="504" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://www.nnihlen.com/blog/aggbug/769.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/Nihlenanizer/~4/YAc5ddf4SK0" height="1" width="1"/&gt;</description>
            <dc:creator>Niklas Nihlen</dc:creator>
            <guid isPermaLink="false">http://www.nnihlen.com/blog/archive/2008/10/14/consolas-font-in-command-prompt.aspx</guid>
            <pubDate>Tue, 14 Oct 2008 20:59:19 GMT</pubDate>
            <wfw:comment>http://www.nnihlen.com/blog/comments/769.aspx</wfw:comment>
            <comments>http://www.nnihlen.com/blog/archive/2008/10/14/consolas-font-in-command-prompt.aspx#feedback</comments>
            <wfw:commentRss>http://www.nnihlen.com/blog/comments/commentRss/769.aspx</wfw:commentRss>
        <feedburner:origLink>http://www.nnihlen.com/blog/archive/2008/10/14/consolas-font-in-command-prompt.aspx</feedburner:origLink></item>
        <item>
            <title>Getting a &amp;quot;403 Forbidden&amp;quot; when trying to access the Search Settings Page</title>
            <category>SharePoint</category>
            <link>http://feedproxy.google.com/~r/Nihlenanizer/~3/teeYxPSm9pg/getting-a-quot403-forbiddenquot-when-trying-to-access-the-search.aspx</link>
            <description>&lt;p&gt;A while ago I stumbled upon this issue. Doing my usual day-to-day stuff on the SharePoint farm, I entered the the Search Settings page under the SSP and instantly got a 403 Forbidden in my face. We had not experienced any problems with this earlier. So I looked around a little and the Profile Import page also showed immense weirdness: &lt;/p&gt; &lt;p align="center"&gt;&lt;a href="http://nnihlen.com/blog/images/nnihlen_com/blog/WindowsLiveWriter/Gettinga403Forbiddenwhentryingtoaccessth_68CD/Broken%20SSP%20User%20Profiles_2.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="354" alt="Broken SSP User Profiles" src="http://nnihlen.com/blog/images/nnihlen_com/blog/WindowsLiveWriter/Gettinga403Forbiddenwhentryingtoaccessth_68CD/Broken%20SSP%20User%20Profiles_thumb.png" width="470" border="0" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;I found some articles on similar problems but that did not help. &lt;/p&gt; &lt;p&gt; &lt;/p&gt; &lt;p&gt;After trying a bunch of things I gave in and thought to my self: f**k it, I'll just create a new SSP and configure search once again. Said and done I started creating a new SSP only to get a failure, but with some interesting info "User cannot be found".&lt;/p&gt; &lt;p align="center"&gt;&lt;a href="http://nnihlen.com/blog/images/nnihlen_com/blog/WindowsLiveWriter/Gettinga403Forbiddenwhentryingtoaccessth_68CD/CreateSSPFailure.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="132" alt="CreateSSPFailure" src="http://nnihlen.com/blog/images/nnihlen_com/blog/WindowsLiveWriter/Gettinga403Forbiddenwhentryingtoaccessth_68CD/CreateSSPFailure_thumb.png" width="470" border="0" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;This set me off in the right direction. After reading trough a enormous amount of ULS logs and a substantial amount of support case logs I finally figured out what caused it all.&lt;/p&gt; &lt;p&gt; &lt;/p&gt; &lt;p&gt;When you install a new SharePoint farm the account used to do the installation is appointed as the owner of the central admin site collection. We did not use a specific installation account and the guy that did the installation for our farm had left the place a while ago. Hence the IT department locked his account and that is what caused it all.&lt;/p&gt; &lt;p&gt; &lt;/p&gt; &lt;p&gt;So lessoned learned, always use a specific set up account!&lt;/p&gt;&lt;img src="http://www.nnihlen.com/blog/aggbug/768.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/Nihlenanizer/~4/teeYxPSm9pg" height="1" width="1"/&gt;</description>
            <dc:creator>Niklas Nihlen</dc:creator>
            <guid isPermaLink="false">http://www.nnihlen.com/blog/archive/2008/08/28/getting-a-quot403-forbiddenquot-when-trying-to-access-the-search.aspx</guid>
            <pubDate>Thu, 28 Aug 2008 14:48:56 GMT</pubDate>
            <wfw:comment>http://www.nnihlen.com/blog/comments/768.aspx</wfw:comment>
            <comments>http://www.nnihlen.com/blog/archive/2008/08/28/getting-a-quot403-forbiddenquot-when-trying-to-access-the-search.aspx#feedback</comments>
            <wfw:commentRss>http://www.nnihlen.com/blog/comments/commentRss/768.aspx</wfw:commentRss>
        <feedburner:origLink>http://www.nnihlen.com/blog/archive/2008/08/28/getting-a-quot403-forbiddenquot-when-trying-to-access-the-search.aspx</feedburner:origLink></item>
        <item>
            <title>Installing MOSS SP1 - The Order of Things</title>
            <category>SharePoint</category>
            <link>http://feedproxy.google.com/~r/Nihlenanizer/~3/Ax8AETFuEVE/installing-moss-sp1---the-order-of-things.aspx</link>
            <description>&lt;p&gt;In my current project I last Monday ran in to some DST issues on our MOSS farm. As you can guess we had a DST (daylight saving time) here in Sweden during the weekend just before this very frustrating Monday. I experienced it by getting huge problems while trying to deploy my wsp solution packages. The thing that tipped me of was that went to lunch with a deployment in "Deploying..." and when I got back it succeeded. As you probably figured by now we did not have Service Pack 1 installed. &lt;/p&gt;
&lt;p&gt;So I read trough the &lt;a href="http://go.microsoft.com/fwlink/?LinkID=105621&amp;amp;clcid=0x409"&gt;Planning and Deploying Service Pack 1 for Microsoft Office SharePoint Server 2007 in a Multi-server Environment&lt;/a&gt;. It contains a lot of god info, but when it comes to to the installation procedure and sequence of things it does not do a very good job, in fact I find it to be quite self contradictory on some points.&lt;/p&gt;
&lt;p&gt;What I ended up doing was my own installation matrix, which you can download here: &lt;/p&gt;
&lt;div class="wlWriterSmartContent" id="scid:8eb9d37f-1541-4f29-b6f4-1eea890d4876:aca88cc3-9f5d-44c0-8024-082a317f55e8" style="PADDING-RIGHT: 0px; DISPLAY: inline; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px"&gt;
&lt;p&gt; &lt;/p&gt;
&lt;div&gt;&lt;a target="_self" href="http://nnihlen.com/blog/images/nnihlen_com/blog/WindowsLiveWriter/InstallingMOSSSP1TheOrderofThings_14B29/MOSS%20SP1%20Installation%20Matrix_1.xlsx"&gt;MOSS SP1 Installation Matrix.xlsx&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class="wlWriterSmartContent" id="scid:8eb9d37f-1541-4f29-b6f4-1eea890d4876:2b5db731-9f99-4c32-892f-3014cc144c6f" style="PADDING-RIGHT: 0px; DISPLAY: inline; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px"&gt;&lt;/div&gt;
&lt;p align="center"&gt;&lt;a href="http://nnihlen.com/blog/images/nnihlen_com/blog/WindowsLiveWriter/InstallingMOSSSP1TheOrderofThings_14B29/Install%20matrix_1.png"&gt;&lt;img style="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="185" alt="Install matrix" width="470" border="0" src="http://nnihlen.com/blog/images/nnihlen_com/blog/WindowsLiveWriter/InstallingMOSSSP1TheOrderofThings_14B29/Install%20matrix_thumb_1.png" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://www.nnihlen.com/blog/aggbug/767.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/Nihlenanizer/~4/Ax8AETFuEVE" height="1" width="1"/&gt;</description>
            <dc:creator>Niklas Nihlen</dc:creator>
            <guid isPermaLink="false">http://www.nnihlen.com/blog/archive/2008/04/09/installing-moss-sp1---the-order-of-things.aspx</guid>
            <pubDate>Wed, 09 Apr 2008 18:09:05 GMT</pubDate>
            <wfw:comment>http://www.nnihlen.com/blog/comments/767.aspx</wfw:comment>
            <comments>http://www.nnihlen.com/blog/archive/2008/04/09/installing-moss-sp1---the-order-of-things.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://www.nnihlen.com/blog/comments/commentRss/767.aspx</wfw:commentRss>
        <feedburner:origLink>http://www.nnihlen.com/blog/archive/2008/04/09/installing-moss-sp1---the-order-of-things.aspx</feedburner:origLink></item>
        <item>
            <title>Stopwatch class</title>
            <link>http://feedproxy.google.com/~r/Nihlenanizer/~3/m_xG_w-9I5A/stopwatch-class.aspx</link>
            <description>&lt;p&gt;&lt;a href="http://nnihlen.com/blog/images/nnihlen_com/blog/WindowsLiveWriter/Stopwatchclass_1373D/clock_2.jpg"&gt;&lt;img style="border-right: 0px; border-top: 0px; margin: 0px 10px 10px 0px; border-left: 0px; border-bottom: 0px" height="170" alt="" src="http://nnihlen.com/blog/images/nnihlen_com/blog/WindowsLiveWriter/Stopwatchclass_1373D/clock_thumb.jpg" width="220" align="left" border="0" /&gt;&lt;/a&gt; In my current project we’ve reached a phase where we’re hunting down performance issues and are doing some light profiling of our own on our code. So I’ve been using the &lt;a href="http://msdn2.microsoft.com/en-us/library/system.diagnostics.stopwatch.aspx"&gt;Stopwatch class&lt;/a&gt; a lot to see how long time things take. This post is more of a note to self, so I can find it again in a non time consuming fashion :).&lt;/p&gt;&lt;img src="http://www.nnihlen.com/blog/aggbug/766.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/Nihlenanizer/~4/m_xG_w-9I5A" height="1" width="1"/&gt;</description>
            <dc:creator>Niklas Nihlen</dc:creator>
            <guid isPermaLink="false">http://www.nnihlen.com/blog/archive/2008/03/24/stopwatch-class.aspx</guid>
            <pubDate>Mon, 24 Mar 2008 21:08:58 GMT</pubDate>
            <wfw:comment>http://www.nnihlen.com/blog/comments/766.aspx</wfw:comment>
            <comments>http://www.nnihlen.com/blog/archive/2008/03/24/stopwatch-class.aspx#feedback</comments>
            <wfw:commentRss>http://www.nnihlen.com/blog/comments/commentRss/766.aspx</wfw:commentRss>
        <feedburner:origLink>http://www.nnihlen.com/blog/archive/2008/03/24/stopwatch-class.aspx</feedburner:origLink></item>
        <item>
            <title>Net Stop Sens</title>
            <category>SharePoint</category>
            <link>http://feedproxy.google.com/~r/Nihlenanizer/~3/f_hK0SOE62s/net-stop-sens.aspx</link>
            <description>&lt;p&gt;This post is mostly a note to self, but hopefully it can save a little time for someone. I was just cranking up a new VPC to demo some document management features for a customer. Browsing the SharePoint webs worked like a charm, creating document libraries was no problem. But when I tried to save a document from word 2007 to a document library I got an annoying: "This file cannot be saved to this location because there is no connection to the server. Check your network connection and try again."&lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://nnihlen.com/blog/images/nnihlen_com/blog/WindowsLiveWriter/NetStopSens_C241/WordSaveError_2.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="87" alt="WordSaveError" src="http://nnihlen.com/blog/images/nnihlen_com/blog/WindowsLiveWriter/NetStopSens_C241/WordSaveError_thumb.png" width="470" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Also, the document panel failed to load.&lt;/p&gt;  &lt;p&gt;I guess is that WebDAV or FrontPage RPC does not work connections the same way http does. I had no clue what this was so I spent a little time with my favorite search engine (live.com of course ;)).&lt;/p&gt;  &lt;p&gt;Here is what made the error go away: net stop sens.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://nnihlen.com/blog/images/nnihlen_com/blog/WindowsLiveWriter/NetStopSens_C241/NetStopSens_2.png"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="164" alt="NetStopSens" src="http://nnihlen.com/blog/images/nnihlen_com/blog/WindowsLiveWriter/NetStopSens_C241/NetStopSens_thumb.png" width="470" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Apparently the &lt;a href="http://msdn2.microsoft.com/en-us/library/cc185680(VS.85).aspx"&gt;System Event Notification Service (SENS)&lt;/a&gt; can be used by applications to determine bandwidth and such. And the office client uses it in some way. I have never encountered this problem in a production environment and even if I did, I don’t think turning off the service is the right solution. But in the case of a demo/development VPC, it’s fine in my book.&lt;/p&gt;&lt;img src="http://www.nnihlen.com/blog/aggbug/765.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/Nihlenanizer/~4/f_hK0SOE62s" height="1" width="1"/&gt;</description>
            <dc:creator>Niklas Nihlen</dc:creator>
            <guid isPermaLink="false">http://www.nnihlen.com/blog/archive/2008/03/14/net-stop-sens.aspx</guid>
            <pubDate>Fri, 14 Mar 2008 09:43:31 GMT</pubDate>
            <wfw:comment>http://www.nnihlen.com/blog/comments/765.aspx</wfw:comment>
            <comments>http://www.nnihlen.com/blog/archive/2008/03/14/net-stop-sens.aspx#feedback</comments>
            <wfw:commentRss>http://www.nnihlen.com/blog/comments/commentRss/765.aspx</wfw:commentRss>
        <feedburner:origLink>http://www.nnihlen.com/blog/archive/2008/03/14/net-stop-sens.aspx</feedburner:origLink></item>
        <item>
            <title>Configuration system failed to initialize</title>
            <category>.NET Development</category>
            <link>http://feedproxy.google.com/~r/Nihlenanizer/~3/gVUC41wylWE/configuration-system-failed-to-initialize.aspx</link>
            <description>&lt;p&gt;Just encountered a problem that’s soooo simple to solve, but yet sooo frustrating when you encounter it.&lt;/p&gt;  &lt;p&gt;I was moving some code from my local prototype project up to the official dev environment. At first I forgot some entries in the app.config file. Piece of cake, right?&lt;/p&gt;  &lt;p&gt;So off to some cut-n-paste action and I ended up with this:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://nnihlen.com/blog/images/nnihlen_com/blog/WindowsLiveWriter/Configurationsystemfailedtoinitialize_FD10/Bad_Config_4.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="324" alt="Bad_Config" src="http://nnihlen.com/blog/images/nnihlen_com/blog/WindowsLiveWriter/Configurationsystemfailedtoinitialize_FD10/Bad_Config_thumb_1.png" width="604" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;p&gt;Looks alright? Well it did to me, so imagine my surprise when I got hit with the following exception:&lt;/p&gt;  &lt;p&gt;&lt;font size="1"&gt;&lt;font face="Courier New"&gt;&lt;font size="2"&gt;System.Configuration.ConfigurationErrorsException was unhandled         &lt;br /&gt;  Message="Configuration system failed to initialize"          &lt;br /&gt;  Source="System.Configuration"          &lt;br /&gt;  BareMessage="Configuration system failed to initialize"          &lt;br /&gt;  Line=0&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;I messed around with it for a while thinking I’d introduced some weird character somewhere or something like that. But no sir, that was not the problem. After &lt;strike&gt;googling&lt;/strike&gt; searching at live.com for a while, I found someone saying that the &amp;lt;configSection&amp;gt; element needs to be the first thing in the config-file.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://nnihlen.com/blog/images/nnihlen_com/blog/WindowsLiveWriter/Configurationsystemfailedtoinitialize_FD10/Good_Config_2.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="262" alt="Good_Config" src="http://nnihlen.com/blog/images/nnihlen_com/blog/WindowsLiveWriter/Configurationsystemfailedtoinitialize_FD10/Good_Config_thumb.png" width="604" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Perhaps this can save someone else a little time and frustration.&lt;/p&gt;&lt;img src="http://www.nnihlen.com/blog/aggbug/763.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/Nihlenanizer/~4/gVUC41wylWE" height="1" width="1"/&gt;</description>
            <dc:creator>Niklas Nihlen</dc:creator>
            <guid isPermaLink="false">http://www.nnihlen.com/blog/archive/2008/02/11/configuration-system-failed-to-initialize.aspx</guid>
            <pubDate>Mon, 11 Feb 2008 22:01:51 GMT</pubDate>
            <wfw:comment>http://www.nnihlen.com/blog/comments/763.aspx</wfw:comment>
            <comments>http://www.nnihlen.com/blog/archive/2008/02/11/configuration-system-failed-to-initialize.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://www.nnihlen.com/blog/comments/commentRss/763.aspx</wfw:commentRss>
        <feedburner:origLink>http://www.nnihlen.com/blog/archive/2008/02/11/configuration-system-failed-to-initialize.aspx</feedburner:origLink></item>
        <item>
            <title>Iterating Over and Deleting SharePoint Groups Programmatically</title>
            <category>SharePoint</category>
            <link>http://feedproxy.google.com/~r/Nihlenanizer/~3/lnKHDVSwB_Q/iterating-over-and-deleting-sharepoint-groups-programmatically.aspx</link>
            <description>&lt;p&gt;Ever wanted to do something with the groups within SharePoint 2007 programmatically? Here is some sample code you might find useful.&lt;/p&gt;  &lt;p&gt;Iterating:&lt;/p&gt;&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;public&lt;/span&gt; IList&amp;lt;&lt;span class="kwrd"&gt;string&lt;/span&gt;&amp;gt; GetAllUserGroups(&lt;span class="kwrd"&gt;string&lt;/span&gt; url)
{
    IList&amp;lt;&lt;span class="kwrd"&gt;string&lt;/span&gt;&amp;gt; groupList = &lt;span class="kwrd"&gt;new&lt;/span&gt; List&amp;lt;&lt;span class="kwrd"&gt;string&lt;/span&gt;&amp;gt;();

    &lt;span class="kwrd"&gt;using&lt;/span&gt; (SPSite site = &lt;span class="kwrd"&gt;new&lt;/span&gt; SPSite(url))
    {
        SPGroupCollection groups = site.RootWeb.SiteGroups;
       
        &lt;span class="kwrd"&gt;foreach&lt;/span&gt; (SPGroup g &lt;span class="kwrd"&gt;in&lt;/span&gt; groups)
        {
            groupList.Add(g.Name);
        }
    }

    &lt;span class="kwrd"&gt;return&lt;/span&gt; groupList;
}&lt;/pre&gt;
&lt;style type="text/css"&gt;&lt;![CDATA[csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }
]]&gt;&lt;/style&gt;


&lt;p&gt;Deleting:&lt;/p&gt;&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; DeleteUserGroups(IList&amp;lt;&lt;span class="kwrd"&gt;string&lt;/span&gt;&amp;gt; GroupNames, &lt;span class="kwrd"&gt;string&lt;/span&gt; url)
{
    &lt;span class="kwrd"&gt;using&lt;/span&gt; (SPSite site = &lt;span class="kwrd"&gt;new&lt;/span&gt; SPSite(url))
    {
        SPGroupCollection groups = site.RootWeb.SiteGroups;

        &lt;span class="kwrd"&gt;foreach&lt;/span&gt; (&lt;span class="kwrd"&gt;string&lt;/span&gt; groupname &lt;span class="kwrd"&gt;in&lt;/span&gt; GroupNames)
        {
            groups.Remove(groupname);
        }
    }
}&lt;/pre&gt;
&lt;style type="text/css"&gt;&lt;![CDATA[csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }
]]&gt;&lt;/style&gt;

&lt;p&gt;That code sure could do with some error handling around the remove statement.&lt;/p&gt;&lt;img src="http://www.nnihlen.com/blog/aggbug/762.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/Nihlenanizer/~4/lnKHDVSwB_Q" height="1" width="1"/&gt;</description>
            <dc:creator>Niklas Nihlen</dc:creator>
            <guid isPermaLink="false">http://www.nnihlen.com/blog/archive/2008/01/07/iterating-over-and-deleting-sharepoint-groups-programmatically.aspx</guid>
            <pubDate>Mon, 07 Jan 2008 21:44:31 GMT</pubDate>
            <wfw:comment>http://www.nnihlen.com/blog/comments/762.aspx</wfw:comment>
            <comments>http://www.nnihlen.com/blog/archive/2008/01/07/iterating-over-and-deleting-sharepoint-groups-programmatically.aspx#feedback</comments>
            <wfw:commentRss>http://www.nnihlen.com/blog/comments/commentRss/762.aspx</wfw:commentRss>
        <feedburner:origLink>http://www.nnihlen.com/blog/archive/2008/01/07/iterating-over-and-deleting-sharepoint-groups-programmatically.aspx</feedburner:origLink></item>
        <item>
            <title>FeedBurner Acquired by Google</title>
            <link>http://feedproxy.google.com/~r/Nihlenanizer/~3/QnwKX90fq04/761.aspx</link>
            <description>&lt;p&gt;&lt;a href="http://nnihlen.com/Blog/images/nnihlen_com/Blog/WindowsLiveWriter/FeedBurnerAcquiredbyGoogle_BCD5/GoogleAcquiredFeedburner.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="113" alt="GoogleAcquiredFeedburner" src="http://nnihlen.com/Blog/images/nnihlen_com/Blog/WindowsLiveWriter/FeedBurnerAcquiredbyGoogle_BCD5/GoogleAcquiredFeedburner_thumb.png" width="240" align="left" border="0" /&gt;&lt;/a&gt; This was news to me, tough with my low reader count I don’t hang around &lt;a href="http://www.feedburner.com/"&gt;FeedBurner&lt;/a&gt; much checking my stats. &lt;a href="http://www.google.com/"&gt;Google&lt;/a&gt; acquired FeedBurner. I don’t know if it’s a good or a bad thing, time will have to show. But I can draw one quick conclusion. Now Google is &lt;strong&gt;&lt;em&gt;profiling me even more&lt;/em&gt;&lt;/strong&gt;.&lt;/p&gt; &lt;p&gt;I kinda see where they want to go with this, apart from the profiling part I think &lt;a href="http://technorati.com/"&gt;Technorati&lt;/a&gt; might get some serious competition in the search blogs space.&lt;/p&gt; &lt;p&gt;Read more about it &lt;a href="http://www.feedburner.com/google"&gt;here&lt;/a&gt;.&lt;/p&gt;&lt;img src="http://www.nnihlen.com/blog/aggbug/761.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/Nihlenanizer/~4/QnwKX90fq04" height="1" width="1"/&gt;</description>
            <dc:creator>Niklas Nihlen</dc:creator>
            <guid isPermaLink="false">http://www.nnihlen.com/blog/archive/2007/11/20/761.aspx</guid>
            <pubDate>Tue, 20 Nov 2007 12:25:31 GMT</pubDate>
            <wfw:comment>http://www.nnihlen.com/blog/comments/761.aspx</wfw:comment>
            <comments>http://www.nnihlen.com/blog/archive/2007/11/20/761.aspx#feedback</comments>
            <wfw:commentRss>http://www.nnihlen.com/blog/comments/commentRss/761.aspx</wfw:commentRss>
        <feedburner:origLink>http://www.nnihlen.com/blog/archive/2007/11/20/761.aspx</feedburner:origLink></item>
    </channel>
</rss>
