<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Kurt Opel</title>
	<atom:link href="http://www.kurtopel.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.kurtopel.com</link>
	<description>Web Developer specializing in SharePoint Technologies and ASP.NET</description>
	<lastBuildDate>Sun, 22 Jan 2012 22:26:20 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.2</generator>
		<item>
		<title>Computer Technologies Course Offered for Spring term</title>
		<link>http://www.kurtopel.com/2012/01/computer-technologies-course-offered-for-spring-term/</link>
		<comments>http://www.kurtopel.com/2012/01/computer-technologies-course-offered-for-spring-term/#comments</comments>
		<pubDate>Sat, 21 Jan 2012 21:58:21 +0000</pubDate>
		<dc:creator>Kurt</dc:creator>
				<category><![CDATA[Education]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[classes]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[Detroit]]></category>
		<category><![CDATA[eduction]]></category>
		<category><![CDATA[future]]></category>
		<category><![CDATA[High School]]></category>
		<category><![CDATA[networking]]></category>
		<category><![CDATA[Oakland County]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[technology]]></category>
		<category><![CDATA[UX Design]]></category>

		<guid isPermaLink="false">http://www.kurtopel.com/?p=87</guid>
		<description><![CDATA[After a successful class this fall, we will be offering our Computer Technologies Fundamentals Course again this spring. New This Term – DreamSpark Through a strategic partnership with Microsoft, we are able to offer our students a&#160; membership in the &#8230; <a href="http://www.kurtopel.com/2012/01/computer-technologies-course-offered-for-spring-term/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>After a successful class this fall, we will be offering our <a href="http://www.kurtopel.com/2011/09/computer-technologies-fundamentals-course/">Computer Technologies Fundamentals Course</a> again this spring.</p>
<h1></h1>
<h1>New This Term – DreamSpark</h1>
<p>Through a strategic partnership with Microsoft, we are able to offer our students a&nbsp; membership in the Microsoft <a href="http://www.dreamspark.com" target="_blank">DreamSpark program</a>. This program offers verified students with thousands of dollars’ worth of Microsoft software <em>for free</em> so that students can learn the latest technologies. In addition, members have access to top notch training and discounts on hardware and other software. Access to the DreamSpark program easily offsets the cost of this class.</p>
<h1>Computer Technology Fundamentals 101</h1>
<p>This class would give a general knowledge of computer hardware and software. The focus would not be on surface usage, as most of our kids already know how to use a computer. Rather, the &#8220;behind the scenes&#8221; information would be covered. This will give a student the foundation needed for programming, networking, visual and application design.</p>
<p>Topics Covered</p>
<ul>
<li>Computer Hardware and Repair
<li>Operating Systems
<li>Networking
<li>Computer Programming
<li>Databases
<li>UX (User Experience/Interface) Design
<li>Data Driven Programming </li>
</ul>
<h2>Is This for Your Student?</h2>
<p>Students would need to have a strong interest in computers and a self-learner. This field requires someone who is self-motivated and likes to solve problems.</p>
<h2>Class 411</h2>
<p>Beginning in Tuesday, February 7, 2012, the class will be 8 weeks long, meeting once a week.</p>
<ul>
<li>We would meet at my home in Pleasant Ridge, MI (across from the Detroit Zoo &#8211; off of Woodward Ave).
<li>It will be an evening class since I work in the day, 7-9 pm.
<li>Each student would need to bring a laptop to class and have one available for practice exercises.
<li>The cost would be $150 per class. </li>
</ul>
<h3>Important Dates</h3>
<table>
<tbody>
<tr>
<td>January 23, 2012</td>
<td>Open Registration Begins</td>
</tr>
<tr>
<td>February 7, 2012</td>
<td>First Class Session 7:00 &#8211; 9:00 pm</td>
</tr>
<tr>
<td>March 27, 2012</td>
<td>Last Class Session 7:00 &#8211; 9:00 pm</td>
</tr>
</tbody>
</table>
<p>Please see my post on the <a href="http://www.kurtopel.com/2011/09/computer-technologies-fundamentals-course/">first class offering</a> for more information.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kurtopel.com/2012/01/computer-technologies-course-offered-for-spring-term/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Computer Technologies Fundamentals Course</title>
		<link>http://www.kurtopel.com/2011/09/computer-technologies-fundamentals-course/</link>
		<comments>http://www.kurtopel.com/2011/09/computer-technologies-fundamentals-course/#comments</comments>
		<pubDate>Sat, 17 Sep 2011 15:43:37 +0000</pubDate>
		<dc:creator>Kurt</dc:creator>
				<category><![CDATA[Education]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[classes]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[Detroit]]></category>
		<category><![CDATA[eduction]]></category>
		<category><![CDATA[future]]></category>
		<category><![CDATA[High School]]></category>
		<category><![CDATA[networking]]></category>
		<category><![CDATA[Oakland County]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[technology]]></category>
		<category><![CDATA[UX Design]]></category>

		<guid isPermaLink="false">http://www.kurtopel.com/?p=75</guid>
		<description><![CDATA[Since coming to Detroit, I&#8217;ve had it in my heart to offer a tutoring class in computer technologies. I currently work as a programmer specializing in Microsoft SharePoint. There are many good paying jobs in my field, right here in &#8230; <a href="http://www.kurtopel.com/2011/09/computer-technologies-fundamentals-course/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Since coming to Detroit, I&#8217;ve had it in my heart to offer a tutoring class in computer technologies. I currently work as a programmer specializing in Microsoft SharePoint. There are many good paying jobs in my field, right here in Detroit and nationally, but very few people with proper training. Because of this, many of these jobs are being filled by people from other countries.</p>
<h2>Preparing the Next Generation</h2>
<p>I am now offering a two part class that could direct high school age students into these fields and technologies.</p>
<h2>Computer Technology Fundamentals 101</h2>
<p>This class would give a general knowledge of computer hardware and software. The focus would not be on surface usage, as most of our kids already know how to use a computer. Rather, the &#8220;behind the scenes&#8221; information would be covered. This will give a student the foundation needed for programming, networking, visual and application design.</p>
<p>Topics Covered</p>
<ul>
<li>Computer Hardware and Repair
<li>Operating Systems
<li>Networking
<li>Computer Programming
<li>Databases
<li>UX (User Experience/Interface) Design
<li>Data Driven Programming </li>
</ul>
<h2>Computer Technologies 201</h2>
<p>A second class would be offered to expose the students to various technologies in programming, networking, visual and application design to see what piques their interest. At the end of this class, depending on the student&#8217;s skills, I would like to direct them to specific online courses they can take to become certified in a certain area. Because technologies are changing at a very rapid pace, a traditional college/university cannot develop curriculum fast enough. Online courses are the best way to get the education needed for the demands of the job market today and into the future. This class will be offered after the Computer Technologies 101 class has completed.</p>
<h2>Is This for Your Student?</h2>
<p>Students would need to have a strong interest in computers and a self-learner. This field requires someone who is self-motivated and likes to solve problems.</p>
<h2>Class 411</h2>
<p>Beginning in Tuesday, October 4, the class will be 8 weeks long, meeting once a week.</p>
<ul>
<li>We would meet at my home in Pleasant Ridge, MI (across from the Detroit Zoo &#8211; off of Woodward Ave).
<li>It will be an evening class since I work in the day, 7-9 pm.
<li>Each student would need to bring a laptop to class and have one available for practice exercises.
<li>The cost would be $150 per class. </li>
</ul>
<h3>Important Dates</h3>
<table>
<tbody>
<tr>
<td>September 17, 2011</td>
<td>Open Registration Begins</td>
</tr>
<tr>
<td>October 4, 2011</td>
<td>First Class Session 7:00 &#8211; 9:00 pm</td>
</tr>
<tr>
<td>November 22, 2011</td>
<td>Last Class Session 7:00 &#8211; 9:00 pm</td>
</tr>
</tbody>
</table>
]]></content:encoded>
			<wfw:commentRss>http://www.kurtopel.com/2011/09/computer-technologies-fundamentals-course/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Automating New SharePoint Sites with Domain Names for Development using PowerShell</title>
		<link>http://www.kurtopel.com/2011/08/automating-sharepoint-sites-fqdn-powershell/</link>
		<comments>http://www.kurtopel.com/2011/08/automating-sharepoint-sites-fqdn-powershell/#comments</comments>
		<pubDate>Fri, 05 Aug 2011 13:15:47 +0000</pubDate>
		<dc:creator>Kurt</dc:creator>
				<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[automation]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[set-up]]></category>
		<category><![CDATA[SharePoint 2010]]></category>

		<guid isPermaLink="false">http://www.kurtopel.com/?p=72</guid>
		<description><![CDATA[One of the greatest capabilities of SharePoint 2010 is the ability to install on a client operating system like Windows 7 64-bit. This is a real plus for developers as we previously had to stand up a virtual machine running &#8230; <a href="http://www.kurtopel.com/2011/08/automating-sharepoint-sites-fqdn-powershell/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>One of the greatest capabilities of SharePoint 2010 is the ability to install on a client operating system like Windows 7 64-bit. This is a real plus for developers as we previously had to stand up a virtual machine running Windows Server operating system just to be able to develop for SharePoint. More information on how to do this can be found in the <a title="Setting Up the Development Environment for SharePoint 2010 on Windows Vista, Windows 7, and Windows Server 2008" href="http://msdn.microsoft.com/en-us/library/ee554869.aspx" target="_blank">MSDN article</a>. There is also an automated <a title="Script to Install SharePoint 2010 on Windows 7" href="http://gallery.technet.microsoft.com/ScriptCenter/a88cad83-f595-4487-940e-f678ce47eb5f/" target="_blank">PowerShell install script available</a>.</p>
<p>Once one gets SharePoint running on your computer, likely the next roadblock will be trying to figure out how to host a site like <a href="http://portal.company.com">http://portal.company.com</a> to run on their system. The first two problems with this scenario is that&#8230;</p>
<ol>
<li>I do not have access or the authority to add hosts to the corporate DNS. The way around this is to specify the IP and domain name in the C:\Windows\System32\drivers\etc\hosts file.</li>
<li>IIS is designed to reject traffic from an external domain being routed back to the local computer. The resolution to this is outlined in the <a href="http://support.microsoft.com/kb/896861" target="_blank">KB 896861 Article</a>. Although one of the resolutions is to <a title="SharePoint disable loopback check" href="http://www.jeremytaylor.net/2010/05/24/sharepoint-disable-loopback-check-disableloopbackcheck-dword-in-registry/" target="_blank">disable the loopback check</a>, I prefer to specify the Domain Names to be allowed explicitly.</li>
</ol>
<p>The good news is that we can automate all of the above with a simple PowerShell script that checks the hosts file and adds an entry if needed, then checks the registry value for the BackConnectionHostNames and adds this one if necessary.</p>
<pre>param([String]$DN)

Function New-FQDN([String]$DN)
{
	Append-UrlToHostsFile -Url $DN
	Append-UrlToBackConnectionHostNames -Url $DN
}

Function Append-UrlToHostsFile([String]$Url)
{
	if((Get-Content $env:windir\System32\drivers\etc\hosts |?{$_ -imatch "\s$Url"}) -eq $null)
	{
		"`r`n#	Added automagically by the New-FQDN PowerShell Script`r`n::1		$url" | Out-File -FilePath "$env:windir\System32\drivers\etc\hosts" -Append -Encoding ascii
	}

}

Function Append-UrlToBackConnectionHostNames([String]$Url)
{
	if(($gchn = Get-ItemProperty "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa\MSV1_0\" -Name "BackConnectionHostNames" -ea SilentlyContinue) -eq $null)
	{
    	New-ItemProperty "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa\MSV1_0\" -PropertyType MultiString -Value $Url -Name "BackConnectionHostNames"	}
	else
	{
		if(($gchn.BackConnectionHostNames |?{$_ -imatch $Url}) -eq $null)
		{
			Set-ItemProperty "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa\MSV1_0\" -Name "BackConnectionHostNames" -Value ($gchn.BackConnectionHostNames+"`n$Url")
		}
	}
}

if($DN)
{
	New-FQDN -DN $DN
}
else
{
	Write-Host "Please enter the domain name e.g.
	.\New-FQDN.ps1 -DN sub.domain.com"
}</pre>
<p>Copy the above script to notepad or some other text editor and save it as New-FQDN.ps1. Then you can execute it via PowerShell in the following manner.</p>
<pre>.\New-FQDN.ps1 -DN portal.company.com</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.kurtopel.com/2011/08/automating-sharepoint-sites-fqdn-powershell/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SharePoint Project Without Assembly</title>
		<link>http://www.kurtopel.com/2011/06/sharepoint-project-without-assembly/</link>
		<comments>http://www.kurtopel.com/2011/06/sharepoint-project-without-assembly/#comments</comments>
		<pubDate>Thu, 23 Jun 2011 21:02:41 +0000</pubDate>
		<dc:creator>Kurt</dc:creator>
				<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[Visual Studio]]></category>
		<category><![CDATA[No Assembly]]></category>
		<category><![CDATA[SharePoint 2010]]></category>
		<category><![CDATA[SharePoint WSPs]]></category>
		<category><![CDATA[Visual Studio 2010]]></category>

		<guid isPermaLink="false">http://www.kurtopel.com/?p=59</guid>
		<description><![CDATA[I don&#8217;t know about you, but sometimes I have the need to produce a SharePoint 2010 Project using Visual Studio 2010 that contains only Modules, Element, List definitions and the like. These can all be activated by a feature and deployed using &#8230; <a href="http://www.kurtopel.com/2011/06/sharepoint-project-without-assembly/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I don&#8217;t know about you, but sometimes I have the need to produce a SharePoint 2010 Project using Visual Studio 2010 that contains only Modules, Element, List definitions and the like. These can all be activated by a feature and deployed using a wsp file. The Visual Studio project template creates the framework and folders that you would usually need for a robust SharePoint project. However, in this case, it is not necessary nor prudent to deploy an assembly to the GAC that does <em>absolutely nothing</em>!</p>
<p>There is actually a simple solution to this dilemma and I hope that it will save someone a whole lot of time. It took me quite some time to stumble on this one! Here is what you need to do:</p>
<p>After you have created a new empty project bring up the properties panel by selecting the project in the solution explorer and pressing F8. Do not select the Project Properties from the application menu or the Contextual menu (aka &#8220;Right-Click&#8221;) as these do not have the right options.</p>
<p><a href="http://www.kurtopel.com/wp-content/uploads/2011/06/SharePointProjectNoAssembly.png"><img class="alignnone size-medium wp-image-61" title="SharePointProjectNoAssembly" src="http://www.kurtopel.com/wp-content/uploads/2011/06/SharePointProjectNoAssembly-300x163.png" alt="" width="300" height="163" /></a></p>
<p>Simply set the <strong>Include Assembly In Package</strong> property to <strong>False.</strong> Now when you build, package and deploy your project, it will not contain an assembly.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kurtopel.com/2011/06/sharepoint-project-without-assembly/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Adventures With Office Web Apps</title>
		<link>http://www.kurtopel.com/2011/02/adventures-with-office-web-apps/</link>
		<comments>http://www.kurtopel.com/2011/02/adventures-with-office-web-apps/#comments</comments>
		<pubDate>Wed, 09 Feb 2011 13:04:08 +0000</pubDate>
		<dc:creator>Kurt</dc:creator>
				<category><![CDATA[Office]]></category>
		<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[SharePoint 2010]]></category>

		<guid isPermaLink="false">http://www.kurtopel.com/?p=50</guid>
		<description><![CDATA[Cialis online The company for which I am consulting recently had the need to install Microsoft Office Web Apps into their existing SharePoint 2010 farm. in the process of deploying this, I learned quite a few things that I will &#8230; <a href="http://www.kurtopel.com/2011/02/adventures-with-office-web-apps/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><!-- ~~am begin~~ --></p>
<div style="display: none;"><a href="http://www.curtissliwa.com/">Cialis online</a></div>
<p><!-- ~~am end~~ --></p>
<p>The company for which I am consulting recently had the need to install <a href="http://office.microsoft.com/en-us/web-apps/" target="_blank">Microsoft Office Web Apps</a> into their existing SharePoint 2010 farm. in the process of deploying this, I learned quite a few things that I will pass along to those who face this task.</p>
<p>There is an excellent Microsoft TechNet article at <a href="http://technet.microsoft.com/en-us/library/ff431687.aspx">http://technet.microsoft.com/en-us/library/ff431687.aspx</a> that explains a lot of the details. I would like to make several points that were crucial in the deployment:</p>
<ul>
<li>When creating the Service Applications, use the ?SharePoint Web Service Default? application pool as described in the TechNet article.</li>
<li>Ensure ?SharePoint Web Service Default? application pool account has rights to database content database. In our case, the account was different than the Database Access account and did not have rights to the database. Because of this we received an error when we tried to open in the browser ? ?Word Web App cannot open this document for viewing because of an unexpected error.? After some troubleshooting we discovered this was due to a permission denied in the database of the app pool account.</li>
<li>Make sure you activate the ?Office Web Apps? feature on Site Collection. otherwise, you will not know Office Web Apps has been installed.</li>
<li>Although .doc and .ppt files can be viewed in the browser, in order to edit them in the browser, they must first be upgraded to the Open Office format ? .docx and .pptx formats respectively. However, . xls files cannot be even viewed in the browser and must be upgraded to .xlsx before they can be used at all.</li>
<li>Excel files also take an extra step to view them in the browser – you must make sure to add a “Trusted File Location” in Excel Services Application by navigating to the Central Administration web application –&gt; <strong>Application Management –&gt; Manage Service Applications –&gt; Excel Services Application –&gt; Trusted Files Location</strong>. You can add a path to the entire site collection, a specific site or a single library. If you are serving the site on http and https, you will need two entries to accomplish this.</li>
<li>Also note that if you are requiring Check-out on the library, Office Web Apps will prompt you to inform you that the file must be checked out before it can be edited. The user must perform this task. It will not do it for you!</li>
</ul>
<p>Microsoft’s Office Web Apps is a very powerful add-in for Microsoft SharePoint Server 2010 and is especially useful in an extranet environment where Microsoft Office versions and Internet Browsers used cannot be controlled. If it is set up properly, the benefits to your organization can be huge.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kurtopel.com/2011/02/adventures-with-office-web-apps/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Running PowerShell Script from Task Scheduler</title>
		<link>http://www.kurtopel.com/2010/09/running-powershell-script-from-task-scheduler/</link>
		<comments>http://www.kurtopel.com/2010/09/running-powershell-script-from-task-scheduler/#comments</comments>
		<pubDate>Thu, 09 Sep 2010 19:23:41 +0000</pubDate>
		<dc:creator>Kurt</dc:creator>
				<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[BAT files]]></category>
		<category><![CDATA[Task Scheduler]]></category>

		<guid isPermaLink="false">http://www.kurtopel.com/2010/09/running-powershell-script-from-task-scheduler/</guid>
		<description><![CDATA[There are numerous posts out there about how to execute a PowerShell script from the Task Scheduler in Server 2008. I was unable to get them to work for me, so I wrote a BAT file that kicked off the &#8230; <a href="http://www.kurtopel.com/2010/09/running-powershell-script-from-task-scheduler/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>There are numerous posts out there about how to execute a PowerShell script from the Task Scheduler in Server 2008. I was unable to get them to work for me, so I wrote a BAT file that kicked off the PS1 and called the BAT file from the task scheduler.</p>
<p>Old skool – I know – but it works. If you have a better solution, feel free to leave comments…<img style="border-bottom-style: none; border-right-style: none; border-top-style: none; border-left-style: none" class="wlEmoticon wlEmoticon-smile" alt="Smile" src="http://www.kurtopel.com/wp-content/uploads/2010/09/wlEmoticonsmile.png" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.kurtopel.com/2010/09/running-powershell-script-from-task-scheduler/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Applying WSS 3.0 SP2 After MOSS 2007 SP2</title>
		<link>http://www.kurtopel.com/2010/09/applying-wss-3-0-sp2-after-moss-2007-sp2/</link>
		<comments>http://www.kurtopel.com/2010/09/applying-wss-3-0-sp2-after-moss-2007-sp2/#comments</comments>
		<pubDate>Tue, 07 Sep 2010 18:08:51 +0000</pubDate>
		<dc:creator>Kurt</dc:creator>
				<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[SharePoint 2007]]></category>
		<category><![CDATA[WSS 3.0 SP2]]></category>

		<guid isPermaLink="false">http://www.kurtopel.com/2010/09/applying-wss-3-0-sp2-after-moss-2007-sp2/</guid>
		<description><![CDATA[I know you are thinking that is a crazy title because MOSS 2007 SP2 cannot be applied before WSS 3.0 SP2. Well it can be done! With the original version of MOSS 2007, one was unable to install on the &#8230; <a href="http://www.kurtopel.com/2010/09/applying-wss-3-0-sp2-after-moss-2007-sp2/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I know you are thinking that is a crazy title because MOSS 2007 SP2 cannot be applied before WSS 3.0 SP2. Well it can be done! With the original version of MOSS 2007, one was unable to install on the Server 2008 platform without a slipstreamed install version that included at least SP1.</p>
<p>On a recent engagement of mine, the consultants before me had inadvertently installed MOSS 2007 on Windows Server 2008 using a slipstream install that included MOSS 2007 SP2 but not WSS 3.0 SP2. As you can well imagine, the client was experiencing a myriad of issues with this configuration.</p>
<p>If you simply launch the Service Pack executable file,it will automatically unpack the contents and promptly produce a message box stating, “The update is already on this system.” Instead open a command prompt, cd to the directory where the exe resides and executed the file with the /extract: switch to extract the contents of the Service Pack to a location on the Local Hard Disk. For example:
<pre class="csharpcode">wssv3sp2-kb953338-x64-fullfile-en-us.exe /extract:C:\SP2</pre>
<style type="text/css">
.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; }</style>
</p>
<p>This will extract the contents of the Service Pack to C:\SP2. Navigate to C:\SP2 and note that there are three msp files. The last one, <em>wsswwsp2.msp</em>, is a bootstrapper for the other two and is not needed in our situation. Open the first one, <em>stswwsp2.msp</em>, to apply the main SP2 for WSS 3.0. Then open the second one, <em>wssmuisp2-xx-xx.msp</em>, to apply the language pack for your language – mine was en-us or 1033.</p>
<p>After those complete make sure you repeat the process for every server in the SharePoint farm and don’t forget to run the <strong><em>SharePoint Products and Technologies Configuration Wizard</em></strong> to complete the update. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.kurtopel.com/2010/09/applying-wss-3-0-sp2-after-moss-2007-sp2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Linking to SharePoint 2010 List Forms</title>
		<link>http://www.kurtopel.com/2010/08/linking-to-sharepoint-2010-list-forms/</link>
		<comments>http://www.kurtopel.com/2010/08/linking-to-sharepoint-2010-list-forms/#comments</comments>
		<pubDate>Fri, 27 Aug 2010 16:29:21 +0000</pubDate>
		<dc:creator>Kurt</dc:creator>
				<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[List Forms]]></category>
		<category><![CDATA[SharePoint 2010]]></category>
		<category><![CDATA[Upgrade]]></category>

		<guid isPermaLink="false">http://www.kurtopel.com/?p=30</guid>
		<description><![CDATA[The Dilemma We recently upgraded from Microsoft Office SharePoint Server 2007 to SharePoint Server 2010. All in all it was a very smooth transition. But as in many things in life, we are discovering day by day &#8211; week by &#8230; <a href="http://www.kurtopel.com/2010/08/linking-to-sharepoint-2010-list-forms/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<h2>The Dilemma</h2>
<p>We recently upgraded from Microsoft Office SharePoint Server 2007 to SharePoint Server 2010. All in all it was a very smooth transition. But as in many things in life, we are discovering day by day &#8211; week by week some of the interesting quirks of this process.</p>
<p>One such dilemma was that a department here had a Publishing Page with a list of links that presented the user to go directly to a number of NewItem Forms for the various List on that department&#8217;s site. For Example&#8230;</p>
<ul>
<li><a title="&#39;This takes the user to the new Service Request Form" href="javascript:alert('This takes the user to the new Service Request Form');">Create a new Service Request</a>&#160; </li>
<li><a title="This takes the user to the new Event Form" href="javascript:alert('This takes the user to the new Event Form');">Create a new Event</a> </li>
</ul>
<p>In 2007 this was a great arrangement as it would link directly to the &quot;New&quot; Form. However, in SharePoint 2010, the forms are presented in a modal AJAX dialog and are not fully functional when called directly. My first instinct was to add the &quot;OnClick&quot; event to the links &#8211; following the pattern of the out-of-the-box functionality &#8211; except that the Rich Text Editor strips out javascript in the name of security.</p>
<h2>The Resolution</h2>
<p>The solution was to implement a XMLForm Web part with the data for the links and XSL to tranform the data into a list of links including the OnClick event needed to open the form in a Modal AJAX dialog.</p>
<h3>The XML</h3>
<p>
<pre class="csharpcode"><span class="kwrd">&lt;?</span><span class="html">xml</span> <span class="attr">version</span><span class="kwrd">=&quot;1.0&quot;</span> <span class="attr">encoding</span><span class="kwrd">=&quot;utf-8&quot;</span>?<span class="kwrd">&gt;</span>
<span class="kwrd">&lt;</span><span class="html">Lists</span><span class="kwrd">&gt;</span>
  <span class="kwrd">&lt;</span><span class="html">List</span> <span class="attr">Name</span><span class="kwrd">=&quot;Create a new Service Request&quot;</span> <span class="attr">ListId</span><span class="kwrd">=&quot;{E1EFFE1C-C77C-4A0B-A479-9705074EC20E}&quot;</span> <span class="kwrd">/&gt;</span>
  <span class="kwrd">&lt;</span><span class="html">List</span> <span class="attr">Name</span><span class="kwrd">=&quot;Create a new Event&quot;</span> <span class="attr">ListId</span><span class="kwrd">=&quot;{B0F76C5B-0F81-46AA-AAE8-6B9B2850E061}&quot;</span><span class="kwrd">/&gt;</span>
<span class="kwrd">&lt;/</span><span class="html">Lists</span><span class="kwrd">&gt;</span></pre>
<p><span class="kwrd">As you see this is simply a representation of the List Name and the GUID of the ListId. The real magic is in the XSL transformation.</span></p>
<h3><span class="kwrd">The XSL</span></h3>
<pre class="csharpcode"><span class="kwrd">&lt;?</span><span class="html">xml</span> <span class="attr">version</span><span class="kwrd">=&quot;1.0&quot;</span> <span class="attr">encoding</span><span class="kwrd">=&quot;utf-8&quot;</span>?<span class="kwrd">&gt;</span>
<span class="kwrd">&lt;</span><span class="html">xsl:stylesheet</span> <span class="attr">version</span><span class="kwrd">=&quot;1.0&quot;</span> <span class="attr">xmlns:xsl</span><span class="kwrd">=&quot;http://www.w3.org/1999/XSL/Transform&quot;</span>
    <span class="attr">xmlns:msxsl</span><span class="kwrd">=&quot;urn:schemas-microsoft-com:xslt&quot;</span> <span class="attr">exclude-result-prefixes</span><span class="kwrd">=&quot;msxsl&quot;</span><span class="kwrd">&gt;</span>
  <span class="kwrd">&lt;</span><span class="html">xsl:output</span> <span class="attr">method</span><span class="kwrd">=&quot;html&quot;</span> <span class="attr">indent</span><span class="kwrd">=&quot;yes&quot;</span><span class="kwrd">/&gt;</span>
  <span class="kwrd">&lt;</span><span class="html">xsl:variable</span> <span class="attr">name</span><span class="kwrd">=&quot;formLink&quot;</span><span class="kwrd">&gt;</span>../_layouts/listform.aspx?PageType=8<span class="attr">&amp;amp;</span>ListId=<span class="kwrd">&lt;/</span><span class="html">xsl:variable</span><span class="kwrd">&gt;</span>
  <span class="kwrd">&lt;</span><span class="html">xsl:template</span> <span class="attr">match</span><span class="kwrd">=&quot;Lists&quot;</span><span class="kwrd">&gt;</span>
    <span class="kwrd">&lt;</span><span class="html">ul</span><span class="kwrd">&gt;</span>
      <span class="kwrd">&lt;</span><span class="html">xsl:for-each</span> <span class="attr">select</span><span class="kwrd">=&quot;List&quot;</span><span class="kwrd">&gt;</span>
        <span class="kwrd">&lt;</span><span class="html">li</span><span class="kwrd">&gt;</span>
          <span class="kwrd">&lt;</span><span class="html">a</span><span class="kwrd">&gt;</span>
            <span class="kwrd">&lt;</span><span class="html">xsl:attribute</span> <span class="attr">name</span><span class="kwrd">=&quot;href&quot;</span><span class="kwrd">&gt;</span>
              <span class="kwrd">&lt;</span><span class="html">xsl:value-of</span> <span class="attr">select</span><span class="kwrd">=&quot;$formLink&quot;</span> <span class="kwrd">/&gt;</span>
              <span class="kwrd">&lt;</span><span class="html">xsl:value-of</span> <span class="attr">select</span><span class="kwrd">=&quot;@ListId&quot;</span> <span class="kwrd">/&gt;</span>
            <span class="kwrd">&lt;/</span><span class="html">xsl:attribute</span><span class="kwrd">&gt;</span>
            <span class="kwrd">&lt;</span><span class="html">xsl:attribute</span> <span class="attr">name</span><span class="kwrd">=&quot;onClick&quot;</span><span class="kwrd">&gt;</span>
              <span class="kwrd">&lt;</span><span class="html">xsl:text</span><span class="kwrd">&gt;</span>javascript:NewItem2(event, <span class="attr">&amp;quot;</span><span class="kwrd">&lt;/</span><span class="html">xsl:text</span><span class="kwrd">&gt;</span>
              <span class="kwrd">&lt;</span><span class="html">xsl:value-of</span> <span class="attr">select</span><span class="kwrd">=&quot;$formLink&quot;</span><span class="kwrd">/&gt;</span>
              <span class="kwrd">&lt;</span><span class="html">xsl:value-of</span> <span class="attr">select</span><span class="kwrd">=&quot;@ListId&quot;</span> <span class="kwrd">/&gt;</span>
              <span class="kwrd">&lt;</span><span class="html">xsl:text</span><span class="kwrd">&gt;</span><span class="attr">&amp;amp;</span>RootFolder=<span class="attr">&amp;quot;</span>);javascript:return false;<span class="kwrd">&lt;/</span><span class="html">xsl:text</span><span class="kwrd">&gt;</span>
            <span class="kwrd">&lt;/</span><span class="html">xsl:attribute</span><span class="kwrd">&gt;</span>
            <span class="kwrd">&lt;</span><span class="html">xsl:value-of</span> <span class="attr">select</span><span class="kwrd">=&quot;@Name&quot;</span><span class="kwrd">/&gt;</span>
          <span class="kwrd">&lt;/</span><span class="html">a</span><span class="kwrd">&gt;</span>
        <span class="kwrd">&lt;/</span><span class="html">li</span><span class="kwrd">&gt;</span>
      <span class="kwrd">&lt;/</span><span class="html">xsl:for-each</span><span class="kwrd">&gt;</span>
    <span class="kwrd">&lt;/</span><span class="html">ul</span><span class="kwrd">&gt;</span>
  <span class="kwrd">&lt;/</span><span class="html">xsl:template</span><span class="kwrd">&gt;</span>
<span class="kwrd">&lt;/</span><span class="html">xsl:stylesheet</span><span class="kwrd">&gt;</span></pre>
<p><span class="kwrd">This code loops through the Lists and displays them as an bulleted list. The OnClick event is the key on the &lt;a&gt; tag as it builds the appropriate javascript call to open the New Form in a Modal AJAX Dialog box. This allows you full functionality in the New Form including attaching files – without errors!</span></p>
<style type="text/css">
.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; }</style></p>
]]></content:encoded>
			<wfw:commentRss>http://www.kurtopel.com/2010/08/linking-to-sharepoint-2010-list-forms/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Application Was Unable To Start Correctly Error</title>
		<link>http://www.kurtopel.com/2010/08/application-was-unable-to-start-correctly-error/</link>
		<comments>http://www.kurtopel.com/2010/08/application-was-unable-to-start-correctly-error/#comments</comments>
		<pubDate>Thu, 12 Aug 2010 14:50:29 +0000</pubDate>
		<dc:creator>Kurt</dc:creator>
				<category><![CDATA[Office]]></category>
		<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[Blocked Files]]></category>

		<guid isPermaLink="false">http://www.kurtopel.com/?p=25</guid>
		<description><![CDATA[The Problem I recently ran across this error when trying to open a PowerPoint deck that I had downloaded from a SharePoint site. My Platform is Windows Server 2008 R2 with Office 2010 installed. When I tried to open the &#8230; <a href="http://www.kurtopel.com/2010/08/application-was-unable-to-start-correctly-error/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<h2>The Problem</h2>
<div>I recently ran across this error when trying to open a PowerPoint deck that I had downloaded from a SharePoint site. My Platform is Windows Server 2008 R2 with Office 2010 installed. When I tried to open the file , I received the following dialog.</div>
<p><a href="http://www.kurtopel.com/wp-content/uploads/2010/08/ApplicationWasUnableToStartCorrectly.png"><img class="alignnone size-medium wp-image-22" style="border: 0pt none;" title="Application Was Unable To Start Correctly" src="http://www.kurtopel.com/wp-content/uploads/2010/08/ApplicationWasUnableToStartCorrectly-300x105.png" alt="Application Was Unable To Start Correctly Screenshot" width="300" height="105" /></a></p>
<p>After clicking <strong>OK</strong>, I then received the following notification.</p>
<p><a href="http://www.kurtopel.com/wp-content/uploads/2010/08/FoundAProblemWithContentIn.png"><img class="alignnone size-medium wp-image-24" style="border: 0pt none;" title="Found A Problem With Content In" src="http://www.kurtopel.com/wp-content/uploads/2010/08/FoundAProblemWithContentIn-300x73.png" alt="Found A Problem With Content In Dialog Screenshot" width="300" height="73" /></a></p>
<p>Clicking <strong>Repair</strong> was of no help, as it could not repair the file.</p>
<h2>The Solution</h2>
<p>After some googling, I found out that the source of my problem was that the file, having been downloaded from an internet location, had been <strong>blocked</strong> by Internet Explorer, the OS or both.</p>
<p>I selected <strong>Properties</strong> from the context-menu on the file &#8211; commonly known as &#8220;right-click&#8221; and found the dialog box below.</p>
<p><a href="http://www.kurtopel.com/wp-content/uploads/2010/08/FileProperties.png"><img class="alignnone size-medium wp-image-23" style="border: 0pt none;" title="File Properties" src="http://www.kurtopel.com/wp-content/uploads/2010/08/FileProperties-219x300.png" alt="File Properties dialog with &quot;Unblock&quot; highlighted." width="219" height="300" /></a></p>
<p>By selecting <strong>Unbloc<span style="text-decoration: underline;">k</span></strong>, the file was able to be opened successfully. While the file in this example is a PowerPoint Presentation, the solution is applicable to all Office Documents.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kurtopel.com/2010/08/application-was-unable-to-start-correctly-error/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Using Application Layout with Ruby on Rails</title>
		<link>http://www.kurtopel.com/2008/02/hello-world/</link>
		<comments>http://www.kurtopel.com/2008/02/hello-world/#comments</comments>
		<pubDate>Tue, 19 Feb 2008 09:08:18 +0000</pubDate>
		<dc:creator>Kurt</dc:creator>
				<category><![CDATA[Rails]]></category>
		<category><![CDATA[application]]></category>
		<category><![CDATA[framework]]></category>
		<category><![CDATA[ruby]]></category>

		<guid isPermaLink="false">http://kurtopel.com/?p=1</guid>
		<description><![CDATA[Anyone who is at least cassualy aquainted with the web framework Ruby on Rails, knows how simple it is to develop a simple easy to use interface to a database model. However, I was impressed at how easily one could &#8230; <a href="http://www.kurtopel.com/2008/02/hello-world/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Anyone who is at least cassualy aquainted with the web framework Ruby on Rails, knows how simple it is to develop a simple easy to use interface to a database model. However, I was impressed at how easily one could create an application layout or template of my site that included navigation, headers and footers on each page of the site.</p>
<p>To create an Application Layout in your Rails application, create a file at /path/to/your/application/app/views/layouts/application.html.erb. Put any headers, footers and navigational items and include the code <code>&lt;%= yield %&gt;</code> where you want the controllers to render their content.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kurtopel.com/2008/02/hello-world/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

