<?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: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/" xmlns:series="http://unfoldingneurons.com/" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Wahids SharePoint Blog</title>
	
	<link>http://www.wahidsaleemi.com</link>
	<description>a sharepoint blog.</description>
	<lastBuildDate>Tue, 15 May 2012 18:08:18 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
	
<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/WahidsSharepointBlog" /><feedburner:info uri="wahidssharepointblog" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://www.wahidsaleemi.com/?pushpress=hub" /><geo:lat>34.218654</geo:lat><geo:long>-118.625389</geo:long><feedburner:emailServiceId>WahidsSharepointBlog</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><item>
		<title>Renaming lots of files according to a spreadsheet</title>
		<link>http://feedproxy.google.com/~r/WahidsSharepointBlog/~3/7iiemcw4y6E/</link>
		<comments>http://www.wahidsaleemi.com/2012/05/renaming-lots-of-files-according-to-a-spreadsheet/#comments</comments>
		<pubDate>Tue, 15 May 2012 17:25:34 +0000</pubDate>
		<dc:creator>Wahid Saleemi</dc:creator>
				<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[file management]]></category>
		<category><![CDATA[loops]]></category>
		<category><![CDATA[powershell]]></category>

		<guid isPermaLink="false">http://www.wahidsaleemi.com/?p=778</guid>
		<description><![CDATA[I don&#8217;t know about this blog post title, it doesn&#8217;t quite explain what I needed to do. Anyway. Months and months ago, I downloaded all the SharePoint 2011 videos (using some PowerShell) and it worked great. However, the videos were all named with their session code, for example SPC201.wmv. See this post on how it [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>I don&#8217;t know about this blog post title, it doesn&#8217;t quite explain what I needed to do. Anyway.</p>
<p>Months and months ago, I downloaded all the SharePoint 2011 videos (using some PowerShell) and it worked great. However, the videos were all named with their session code, for example SPC201.wmv. See this post on how it was done: <a title="http://www.sharepointeer.com/blog/Lists/Posts/Post.aspx?ID=4" href="http://www.sharepointeer.com/blog/Lists/Posts/Post.aspx?ID=4">http://www.sharepointeer.com/blog/Lists/Posts/Post.aspx?ID=4</a></p>
<p>The file names are not very descriptive, but luckily a gentleman named Patrick Drews provided a session list in Excel that matched the code with the title. It looked like this:</p>
<table border="1" cellspacing="0" cellpadding="2" width="500">
<tbody>
<tr>
<td valign="top" width="199"><strong>Code</strong></td>
<td valign="top" width="199"><strong>Session</strong></td>
</tr>
<tr>
<td valign="top" width="199">SPC201</td>
<td valign="top" width="200">Applying a Brand to your SharePoint Web Site</td>
</tr>
</tbody>
</table>
<p>&#160;</p>
<p>Armed with this, we should be able to rename the files so they&#8217;re descriptive. Here&#8217;s what I did.</p>
<p>The first problem is how to interact with this Excel spreadsheet. There are a lot of opinions on this, because natively, there&#8217;s no real easy way to do it. Many times, converting to CSV is the easiest. So, I found this function that does just that. It&#8217;s available from this site: <a title="http://jamesone111.wordpress.com/2011/02/07/how-to-read-excel-files-in-powershell/" href="http://jamesone111.wordpress.com/2011/02/07/how-to-read-excel-files-in-powershell/">http://jamesone111.wordpress.com/2011/02/07/how-to-read-excel-files-in-powershell/</a></p>
<p>Great! The next problem was to figure out the logic. First, lets define some variables:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p778code4'); return false;">View Code</a> POWERSHELL</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p7784"><td class="line_numbers"><pre>1
2
3
</pre></td><td class="code" id="p778code4"><pre class="powershell" style="font-family:monospace;"><span style="color: #800080;">$dir</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;C:\SPC11&quot;</span>
<span style="color: #800080;">$xlsessions</span> <span style="color: pink;">=</span> <span style="color: #008080; font-weight: bold;">gci</span> <span style="color: #800080;">$dir</span>\SessionList.xlsx <span style="color: pink;">|</span> ConvertFrom<span style="color: pink;">-</span>XLx <span style="color: #008080; font-style: italic;">-PassThru</span>
<span style="color: #800080;">$filenames</span> <span style="color: pink;">=</span> <span style="color: #008080; font-weight: bold;">gci</span> <span style="color: #800080;">$dir</span>\Videos <span style="color: pink;">|</span> <span style="color: #008080; font-weight: bold;">select</span> <span style="color: #008080; font-style: italic;">-ExpandProperty</span> Name</pre></td></tr></table></div>

<p>I end up with two arrays, $xlsessions which has the codes and session titles and $filenames which is just a list of the filenames. I need to match the filename with the session code for each file.</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p778code5'); return false;">View Code</a> POWERSHELL</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p7785"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
</pre></td><td class="code" id="p778code5"><pre class="powershell" style="font-family:monospace;"><span style="color: #0000FF;">foreach</span> <span style="color: #000000;">&#40;</span><span style="color: #800080;">$filename</span> <span style="color: #0000FF;">in</span> <span style="color: #800080;">$filenames</span><span style="color: #000000;">&#41;</span>    
        <span style="color: #000000;">&#123;</span>    
        <span style="color: #0000FF;">foreach</span> <span style="color: #000000;">&#40;</span><span style="color: #800080;">$xlsession</span> <span style="color: #0000FF;">in</span> <span style="color: #800080;">$xlsessions</span><span style="color: #000000;">&#41;</span>
                <span style="color: #000000;">&#123;</span>        
                <span style="color: #0000FF;">If</span> <span style="color: #000000;">&#40;</span><span style="color: #000000;">&#40;</span><span style="color: #800080;">$xlsession</span>.CODE <span style="color: pink;">+</span> <span style="color: #800000;">&quot;.wmv&quot;</span><span style="color: #000000;">&#41;</span> <span style="color: #FF0000;">-match</span> <span style="color: #800080;">$filename</span><span style="color: #000000;">&#41;</span>            
                <span style="color: #000000;">&#123;</span> <span style="color: #008000;">#Do something }</span>
                <span style="color: #000000;">&#125;</span>
        <span style="color: #000000;">&#125;</span></pre></td></tr></table></div>

<p>This was actually the hardest part (for me anyway, because I&#8217;m a PowerShell n00b). Basically, we loops through each filename and each time we also loop through each of the session codes. If they match, then we&#8217;ll do something. Here&#8217;s what we&#8217;ll do:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p778code6'); return false;">View Code</a> POWERSHELL</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p7786"><td class="line_numbers"><pre>1
2
3
4
5
</pre></td><td class="code" id="p778code6"><pre class="powershell" style="font-family:monospace;"><span style="color: #000000;">&#123;</span>
<span style="color: #800080;">$newname</span> <span style="color: pink;">=</span> <span style="color: #800080;">$xlsession</span>.CODE <span style="color: pink;">+</span> <span style="color: #800000;">&quot; - &quot;</span> <span style="color: pink;">+</span> <span style="color: #800080;">$xlsession</span>.SESSION <span style="color: pink;">+</span> <span style="color: #800000;">&quot;.wmv&quot;</span>
<span style="color: #008080; font-weight: bold;">write-host</span> <span style="color: #800000;">&quot;Renaming $filename to $newname&quot;</span> <span style="color: #008080; font-style: italic;">-ForegroundColor</span> Yellow
<span style="color: #008080; font-weight: bold;">Rename-Item</span> <span style="color: #008080; font-style: italic;">-Path</span> <span style="color: #800080;">$dir</span>\Videos\<span style="color: #800080;">$filename</span> <span style="color: #008080; font-style: italic;">-NewName</span> <span style="color: #800080;">$dir</span>\Videos\<span style="color: #800080;">$newname</span>
<span style="color: #000000;">&#125;</span></pre></td></tr></table></div>

<p>First, I&#8217;ve setup a variable called $newname that sets up the new filename for me. Then, I&#8217;m using Rename-Item to rename it. It seems simple enough, but took me a couple hours to get the logic right. Once I ran it, my files were renamed just as I wanted them in a matter of seconds. It would have taken hours upon hours to do this manually, cutting and pasting names from the Excel sheet into Windows Explorer. PowerShell saves the day again! Now take some time and save Live Writer&#8230;.</p>
<p>This post was created with Windows Live Writer. Save this great tool by signing the petition <a href="http://www.petitionbuzz.com/petitions/dontkillwlw">here</a>. Learn more by following <a href="https://twitter.com/#!/search/%23dontkillwlw">#dontkillwlw</a> on <a href="https://twitter.com/#!/scottisafool">twitter</a>.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?a=7iiemcw4y6E:fYrF7P1SXD4:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?a=7iiemcw4y6E:fYrF7P1SXD4:BGfa-dtoa6M"><img src="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?i=7iiemcw4y6E:fYrF7P1SXD4:BGfa-dtoa6M" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?a=7iiemcw4y6E:fYrF7P1SXD4:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?i=7iiemcw4y6E:fYrF7P1SXD4:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/WahidsSharepointBlog/~4/7iiemcw4y6E" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.wahidsaleemi.com/2012/05/renaming-lots-of-files-according-to-a-spreadsheet/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.wahidsaleemi.com/2012/05/renaming-lots-of-files-according-to-a-spreadsheet/</feedburner:origLink></item>
		<item>
		<title>How To: Programmatically Delete a Folder from each site</title>
		<link>http://feedproxy.google.com/~r/WahidsSharepointBlog/~3/4CsUgz2Vf0I/</link>
		<comments>http://www.wahidsaleemi.com/2012/04/how-to-programmatically-delete-a-folder-from-each-site/#comments</comments>
		<pubDate>Mon, 30 Apr 2012 17:43:34 +0000</pubDate>
		<dc:creator>Wahid Saleemi</dc:creator>
				<category><![CDATA[SharePoint]]></category>

		<guid isPermaLink="false">http://www.wahidsaleemi.com/?p=750</guid>
		<description><![CDATA[In this post I&#8217;ll show you how to write a PowerShell script that will delete a single folder from multiple sites. In this case, there&#8217;s a folder called &#34;Error Logs&#34; in the Site Pages document library, as shown here: This folder is generated by some 3rd party tool, which always creates the same folder name [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>In this post I&#8217;ll show you how to write a PowerShell script that will delete a single folder from multiple sites. In this case, there&#8217;s a folder called &quot;Error Logs&quot; in the Site Pages document library, as shown here:</p>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2012/04/image6.png" title="image" rel="lightbox[750]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb6 How To: Programmatically Delete a Folder from each site" src="http://www.wahidsaleemi.com/wp-content/uploads/2012/04/image_thumb6.png" width="270" height="160" /></a></p>
<p>This folder is generated by some 3rd party tool, which always creates the same folder name in the &quot;Site Pages&quot; Document Library of any site or sub-site. I&#8217;d like to simply delete it.</p>
<p><strong>Disclaimer:</strong> The method I&#8217;m going to show you is just one way to do it and there may be a better way so feel free to write your suggestions in the comments.</p>
<p>So first, let&#8217;s just get some constant variables out of the way:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p750code13'); return false;">View Code</a> POWERSHELL</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p75013"><td class="line_numbers"><pre>1
2
</pre></td><td class="code" id="p750code13"><pre class="powershell" style="font-family:monospace;"><span style="color: #800080;">$url</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;http://sharepoint&quot;</span>
<span style="color: #800080;">$folder</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;Error Logs&quot;</span></pre></td></tr></table></div>

<p>$url is my portal URL and all the sites are underneath it. And $folder is the name of the folder I want to delete. The next thing I need to do is loop through each of my Site Collections (an SPSite object), here&#8217;s how that looks:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p750code14'); return false;">View Code</a> POWERSHELL</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p75014"><td class="line_numbers"><pre>1
2
3
4
5
</pre></td><td class="code" id="p750code14"><pre class="powershell" style="font-family:monospace;"><span style="color: #800080;">$sites</span> <span style="color: pink;">=</span> Get<span style="color: pink;">-</span>SPSite <span style="color: pink;">-</span>WebApplication <span style="color: #800080;">$url</span> <span style="color: pink;">|</span> <span style="color: #008080; font-weight: bold;">Where-Object</span> <span style="color: #000000;">&#123;</span><a href="about:blank"><span style="color: #000080;">$_</span></a>.Url <span style="color: #FF0000;">-like</span> <span style="color: #800000;">&quot;$url/sites/*&quot;</span><span style="color: #000000;">&#125;</span>
<span style="color: #0000FF;">foreach</span> <span style="color: #000000;">&#40;</span><span style="color: #800080;">$site</span> <span style="color: #0000FF;">in</span> <span style="color: #800080;">$sites</span><span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
        <span style="color: #008000;"># Some functions here.</span>
        <span style="color: #000000;">&#125;</span></pre></td></tr></table></div>

<p>So, I used Get-SPSite to get a list of the Site Collections and also used the | (pipe) symbol to only select sites that had a name like <a href="http://sharepoint/sites/">http://sharepoint/sites/</a></p>
<p>I&#8217;m trying to access a Document Library, which is inside a Site (an SPWeb object). So I&#8217;ll need to do a loop within a loop to go through every Site, in each Site Collection.</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p750code15'); return false;">View Code</a> POWERSHELL</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p75015"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
</pre></td><td class="code" id="p750code15"><pre class="powershell" style="font-family:monospace;"><span style="color: #800080;">$sites</span> <span style="color: pink;">=</span> Get<span style="color: pink;">-</span>SPSite <span style="color: pink;">-</span>WebApplication <span style="color: #800080;">$url</span> <span style="color: pink;">|</span> <span style="color: #008080; font-weight: bold;">Where-Object</span> <span style="color: #000000;">&#123;</span><a href="about:blank"><span style="color: #000080;">$_</span></a>.Url <span style="color: #FF0000;">-like</span> <span style="color: #800000;">&quot;$url/sites/*&quot;</span><span style="color: #000000;">&#125;</span>
<span style="color: #0000FF;">foreach</span> <span style="color: #000000;">&#40;</span><span style="color: #800080;">$site</span> <span style="color: #0000FF;">in</span> <span style="color: #800080;">$sites</span><span style="color: #000000;">&#41;</span>
	<span style="color: #000000;">&#123;</span>
	<span style="color: #800080;">$siteid</span> <span style="color: pink;">=</span> <span style="color: #800080;">$site</span> <span style="color: pink;">|</span> <span style="color: #008080; font-weight: bold;">Select-Object</span> <span style="color: #008080; font-style: italic;">-ExpandProperty</span> Url
	<span style="color: #800080;">$webs</span> <span style="color: pink;">=</span> Get<span style="color: pink;">-</span>SPWeb <span style="color: pink;">-</span>Site <span style="color: #800080;">$siteid</span> <span style="color: pink;">-</span>Limit ALL
	<span style="color: #0000FF;">foreach</span> <span style="color: #000000;">&#40;</span><span style="color: #800080;">$web</span> <span style="color: #0000FF;">in</span> <span style="color: #800080;">$webs</span><span style="color: #000000;">&#41;</span>
		<span style="color: #000000;">&#123;</span>
                <span style="color: #008000;"># Some more functions here.</span>
                <span style="color: #000000;">&#125;</span></pre></td></tr></table></div>

<p>What I&#8217;m doing here is is getting every Site Collection, selecting its &quot;Url&quot; and assigning it to $siteid. Then I use that to get every Site (SPWeb) in the Site Collection and assign it to $webs. Now I can iterate though all the Sites/SPWebs.</p>
<p>Next, I&#8217;ll need to grab the Document Library object, and delete the &quot;Error Logs&quot; folder:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p750code16'); return false;">View Code</a> POWERSHELL</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p75016"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
</pre></td><td class="code" id="p750code16"><pre class="powershell" style="font-family:monospace;"><span style="color: #800080;">$sites</span> <span style="color: pink;">=</span> Get<span style="color: pink;">-</span>SPSite <span style="color: pink;">-</span>WebApplication <span style="color: #800080;">$url</span> <span style="color: pink;">|</span> <span style="color: #008080; font-weight: bold;">Where-Object</span> <span style="color: #000000;">&#123;</span><a href="about:blank"><span style="color: #000080;">$_</span></a>.Url <span style="color: #FF0000;">-like</span> <span style="color: #800000;">&quot;$url/sites/*&quot;</span><span style="color: #000000;">&#125;</span>
<span style="color: #0000FF;">foreach</span> <span style="color: #000000;">&#40;</span><span style="color: #800080;">$site</span> <span style="color: #0000FF;">in</span> <span style="color: #800080;">$sites</span><span style="color: #000000;">&#41;</span>
	<span style="color: #000000;">&#123;</span>
	<span style="color: #800080;">$siteid</span> <span style="color: pink;">=</span> <span style="color: #800080;">$site</span> <span style="color: pink;">|</span> <span style="color: #008080; font-weight: bold;">Select-Object</span> <span style="color: #008080; font-style: italic;">-ExpandProperty</span> Url
	<span style="color: #800080;">$webs</span> <span style="color: pink;">=</span> Get<span style="color: pink;">-</span>SPWeb <span style="color: pink;">-</span>Site <span style="color: #800080;">$siteid</span> <span style="color: pink;">-</span>Limit ALL
	<span style="color: #0000FF;">foreach</span> <span style="color: #000000;">&#40;</span><span style="color: #800080;">$web</span> <span style="color: #0000FF;">in</span> <span style="color: #800080;">$webs</span><span style="color: #000000;">&#41;</span>
		<span style="color: #000000;">&#123;</span>
                <span style="color: #800080;">$library</span> <span style="color: pink;">=</span> <span style="color: #800080;">$web</span>.Folders<span style="color: #000000;">&#91;</span><span style="color: #800000;">&quot;SitePages&quot;</span><span style="color: #000000;">&#93;</span>
		<span style="color: #800080;">$library</span>.SubFolders.Delete<span style="color: #000000;">&#40;</span><span style="color: #800080;">$folder</span><span style="color: #000000;">&#41;</span>
                <span style="color: #000000;">&#125;</span></pre></td></tr></table></div>

<p>That&#8217;s all. Now, when you run this, it will work &#8211; but you&#8217;ll notice some errors, perhaps similar to this:</p>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2012/04/image7.png" title="image" rel="lightbox[750]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb7 How To: Programmatically Delete a Folder from each site" src="http://www.wahidsaleemi.com/wp-content/uploads/2012/04/image_thumb7.png" width="484" height="192" /></a></p>
<p>The reason for this is that not all of my sites have a Document Library called Site Pages. And even if they do, they may not all have a folder called &quot;Error Logs.&quot; So, we need some better logic. We&#8217;ll use &#8220;If&#8221; to create that logic. </p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p750code17'); return false;">View Code</a> POWERSHELL</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p75017"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
</pre></td><td class="code" id="p750code17"><pre class="powershell" style="font-family:monospace;">	<span style="color: #800080;">$webs</span> <span style="color: pink;">=</span> Get<span style="color: pink;">-</span>SPWeb <span style="color: pink;">-</span>Site <span style="color: #800080;">$siteid</span> <span style="color: pink;">-</span>Limit ALL
	<span style="color: #0000FF;">foreach</span> <span style="color: #000000;">&#40;</span><span style="color: #800080;">$web</span> <span style="color: #0000FF;">in</span> <span style="color: #800080;">$webs</span><span style="color: #000000;">&#41;</span>
		<span style="color: #000000;">&#123;</span>
		<span style="color: #800080;">$library</span> <span style="color: pink;">=</span> <span style="color: #800080;">$web</span>.Folders<span style="color: #000000;">&#91;</span><span style="color: #800000;">&quot;SitePages&quot;</span><span style="color: #000000;">&#93;</span>
		<span style="color: #800080;">$allcontainers</span> <span style="color: pink;">=</span> <span style="color: #800080;">$library</span>.SubFolders <span style="color: pink;">|</span> <span style="color: #008080; font-weight: bold;">select</span> Name
		<span style="color: #0000FF;">Foreach</span> <span style="color: #000000;">&#40;</span><span style="color: #800080;">$container</span> <span style="color: #0000FF;">in</span> <span style="color: #800080;">$allcontainers</span><span style="color: #000000;">&#41;</span>
			<span style="color: #000000;">&#123;</span>
				<span style="color: #0000FF;">If</span> <span style="color: #000000;">&#40;</span><span style="color: #800080;">$container</span> <span style="color: #FF0000;">-match</span> <span style="color: #800080;">$folder</span><span style="color: #000000;">&#41;</span>
					<span style="color: #000000;">&#123;</span>
					<span style="color: #800080;">$library</span>.SubFolders.Delete<span style="color: #000000;">&#40;</span><span style="color: #800080;">$folder</span><span style="color: #000000;">&#41;</span>
					<span style="color: #008080; font-weight: bold;">Write-Host</span> <span style="color: #800000;">&quot;Deleted <span style="color: #008080; font-weight: bold;">`&quot;</span>$folder<span style="color: #008080; font-weight: bold;">`&quot;</span> from $web&quot;</span> <span style="color: #008080; font-style: italic;">-foregroundcolor</span> Red
					<span style="color: #000000;">&#125;</span>
				<span style="color: #0000FF;">else</span> <span style="color: #000000;">&#123;</span><span style="color: #008080; font-weight: bold;">Write-Host</span> <span style="color: #800000;">&quot;Finished checking $web.&quot;</span> <span style="color: #008080; font-style: italic;">-foregroundcolor</span> DarkGreen<span style="color: #000000;">&#125;</span>
			<span style="color: #000000;">&#125;</span>
		<span style="color: #000000;">&#125;</span></pre></td></tr></table></div>

<p>You&#8217;ll see here that I&#8217;ve created yet another loop! Now, I&#8217;m taking all the folder names from &quot;SitePages&quot; Document Library and looping through each one. I have an &quot;If&quot; statement that checks for a match and if it finds one, <strong>then and only then</strong> will it try to delete it. Otherwise, we just write a message stating we&#8217;ve checked the site.</p>
<p>Here&#8217;s the final, full script:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p750code18'); return false;">View Code</a> POWERSHELL</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p75018"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
</pre></td><td class="code" id="p750code18"><pre class="powershell" style="font-family:monospace;"><span style="color: #800080;">$url</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;http://sharepoint&quot;</span>
<span style="color: #800080;">$folder</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;Error Logs&quot;</span>
&nbsp;
<span style="color: #800080;">$sites</span> <span style="color: pink;">=</span> Get<span style="color: pink;">-</span>SPSite <span style="color: pink;">-</span>WebApplication <span style="color: #800080;">$url</span> <span style="color: pink;">|</span> <span style="color: #008080; font-weight: bold;">Where-Object</span> <span style="color: #000000;">&#123;</span><a href="about:blank"><span style="color: #000080;">$_</span></a>.Url <span style="color: #FF0000;">-like</span> <span style="color: #800000;">&quot;$url/sites/*&quot;</span><span style="color: #000000;">&#125;</span>
<span style="color: #0000FF;">foreach</span> <span style="color: #000000;">&#40;</span><span style="color: #800080;">$site</span> <span style="color: #0000FF;">in</span> <span style="color: #800080;">$sites</span><span style="color: #000000;">&#41;</span>
	<span style="color: #000000;">&#123;</span>
	<span style="color: #800080;">$siteid</span> <span style="color: pink;">=</span> <span style="color: #800080;">$site</span> <span style="color: pink;">|</span> <span style="color: #008080; font-weight: bold;">Select-Object</span> <span style="color: #008080; font-style: italic;">-ExpandProperty</span> Url
	<span style="color: #800080;">$webs</span> <span style="color: pink;">=</span> Get<span style="color: pink;">-</span>SPWeb <span style="color: pink;">-</span>Site <span style="color: #800080;">$siteid</span> <span style="color: pink;">-</span>Limit ALL
	<span style="color: #0000FF;">foreach</span> <span style="color: #000000;">&#40;</span><span style="color: #800080;">$web</span> <span style="color: #0000FF;">in</span> <span style="color: #800080;">$webs</span><span style="color: #000000;">&#41;</span>
		<span style="color: #000000;">&#123;</span>
		<span style="color: #800080;">$library</span> <span style="color: pink;">=</span> <span style="color: #800080;">$web</span>.Folders<span style="color: #000000;">&#91;</span><span style="color: #800000;">&quot;SitePages&quot;</span><span style="color: #000000;">&#93;</span>
		<span style="color: #800080;">$allcontainers</span> <span style="color: pink;">=</span> <span style="color: #800080;">$library</span>.SubFolders <span style="color: pink;">|</span> <span style="color: #008080; font-weight: bold;">select</span> Name
		<span style="color: #0000FF;">Foreach</span> <span style="color: #000000;">&#40;</span><span style="color: #800080;">$container</span> <span style="color: #0000FF;">in</span> <span style="color: #800080;">$allcontainers</span><span style="color: #000000;">&#41;</span>
			<span style="color: #000000;">&#123;</span>
				<span style="color: #0000FF;">If</span> <span style="color: #000000;">&#40;</span><span style="color: #800080;">$container</span> <span style="color: #FF0000;">-match</span> <span style="color: #800080;">$folder</span><span style="color: #000000;">&#41;</span>
					<span style="color: #000000;">&#123;</span>
					<span style="color: #800080;">$library</span>.SubFolders.Delete<span style="color: #000000;">&#40;</span><span style="color: #800080;">$folder</span><span style="color: #000000;">&#41;</span>
					<span style="color: #008080; font-weight: bold;">Write-Host</span> <span style="color: #800000;">&quot;Deleted <span style="color: #008080; font-weight: bold;">`&quot;</span>$folder<span style="color: #008080; font-weight: bold;">`&quot;</span> from $web&quot;</span> <span style="color: #008080; font-style: italic;">-foregroundcolor</span> Red
					<span style="color: #000000;">&#125;</span>
				<span style="color: #0000FF;">else</span> <span style="color: #000000;">&#123;</span><span style="color: #008080; font-weight: bold;">Write-Host</span> <span style="color: #800000;">&quot;Finished checking $web.&quot;</span> <span style="color: #008080; font-style: italic;">-foregroundcolor</span> DarkGreen<span style="color: #000000;">&#125;</span>
			<span style="color: #000000;">&#125;</span>
		<span style="color: #000000;">&#125;</span>
	<span style="color: #000000;">&#125;</span>
<span style="color: #008080; font-weight: bold;">Write-Host</span> <span style="color: #800000;">&quot;Finished checking all sites.&quot;</span></pre></td></tr></table></div>

<p>Permissions problems are common when accessing Sites this way. I was a Farm Administrator and had rights over the content database for the Web Application I was working on. With the power of loops, you can take all sorts of actions on every Site in your SharePoint farm.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?a=4CsUgz2Vf0I:LLcHSoNzXKs:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?a=4CsUgz2Vf0I:LLcHSoNzXKs:BGfa-dtoa6M"><img src="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?i=4CsUgz2Vf0I:LLcHSoNzXKs:BGfa-dtoa6M" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?a=4CsUgz2Vf0I:LLcHSoNzXKs:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?i=4CsUgz2Vf0I:LLcHSoNzXKs:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/WahidsSharepointBlog/~4/4CsUgz2Vf0I" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.wahidsaleemi.com/2012/04/how-to-programmatically-delete-a-folder-from-each-site/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.wahidsaleemi.com/2012/04/how-to-programmatically-delete-a-folder-from-each-site/</feedburner:origLink></item>
		<item>
		<title>The Race to Collaborate</title>
		<link>http://feedproxy.google.com/~r/WahidsSharepointBlog/~3/tyiCF7k-mPw/</link>
		<comments>http://www.wahidsaleemi.com/2012/04/the-race-to-collaborate/#comments</comments>
		<pubDate>Sun, 15 Apr 2012 20:42:47 +0000</pubDate>
		<dc:creator>Wahid Saleemi</dc:creator>
				<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[grand prix]]></category>
		<category><![CDATA[justin beiber]]></category>
		<category><![CDATA[sharepoint saturday]]></category>
		<category><![CDATA[spsla]]></category>
		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://www.wahidsaleemi.com/?p=728</guid>
		<description><![CDATA[For 2012, the SharePoint Saturday Los Angeles (SPSLA) committee incorporated the Grand Prix racing theme. The Grand Prix occurred the same weekend as SPSLA and a few lucky winners got tickets for the race on Sunday! In fact, there were several really great prizes given away, including: Training classes from New Horizons and TekDog, Inc. [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>For 2012, the SharePoint Saturday Los Angeles (SPSLA) committee incorporated the Grand Prix racing theme. The Grand Prix occurred the same weekend as SPSLA and a few lucky winners <u>got tickets for the race</u> on Sunday!</p>
<p>In fact, there were several really great prizes given away, including:</p>
<ul>
<li>Training classes from <a href="http://www.nhsocal.com/">New Horizons</a> and <a href="http://www.tekdoginc.com/user-adoption/training">TekDog, Inc.</a></li>
<li>SharePoint Books from <a href="http://oreilly.com/">O’Reilly</a>, <a href="http://www.axceler.com">Axceler</a>, and <a href="http://www.facebook.com/MicrosoftUserCommunity">Microsoft’s User Community</a>.</li>
<li>Cool gadgets like a Kindle Fire and a personal Scanner.</li>
<li>Gift cards to Amazon.com</li>
</ul>
<p>One lucky winner even got a Justin Bieber (<a href="http://twitter.com/#!/JustinBieber">@justinbieber</a>) Singing Toothbrush!</p>
<p>There were some competing events going on the same day. The two I’m concerned with are The Grand Prix and SharePoint Saturday Twin Cities. Here’s how those events fared on twitter:</p>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2012/04/image2.png" title="image" rel="lightbox[728]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: block; float: none; margin-left: auto; border-top: 0px; margin-right: auto; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb2 The Race to Collaborate" src="http://www.wahidsaleemi.com/wp-content/uploads/2012/04/image_thumb2.png" width="484" height="396" /></a></p>
<p>Mark Miller (<a href="http://twitter.com/#!/EUSP">@EUSP</a>) from <a href="https://www.nothingbutsharepoint.com/sites/eusp/">EndUserSharePoint.com</a> delivered the keynote speech, in it he compared information workers to penguins (what!?).</p>
<p>Attendees received a wealth of information and were able to network with others in the area. For those of you who couldn’t attend, several people were lighting up twitter with the <a href="https://twitter.com/#!/search/%23spsla">#SPSLA</a> hashtag. </p>
<p>Excluding <a href="http://twitter.com/#!/SFVSharePoint">@SFVSharePoint</a> (who just re-tweeted everything), Karuana Gatimu (<a href="http://twitter.com/#!/Karuana">@Karuana</a>) was the top tweeter.</p>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2012/04/image3.png" title="image" rel="lightbox[728]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: block; float: none; margin-left: auto; border-top: 0px; margin-right: auto; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb3 The Race to Collaborate" src="http://www.wahidsaleemi.com/wp-content/uploads/2012/04/image_thumb3.png" width="484" height="294" /></a></p>
<p>She was also one of the top mentions, beat out only by Christian Buckley (<a href="http://twitter.com/#!/buckleyplanet">@buckleyplanet</a>), who gave out and autographed a few copies of his new book for attendees: <a href="http://www.amazon.com/Microsoft-SharePoint-2010-Implementing-Real-World/dp/0735662827/ref=sr_1_8?ie=UTF8&amp;qid=1334523653&amp;sr=8-8">Microsoft SharePoint 2010: Creating and Implementing Real-World Projects</a>.</p>
<p>Ooh, and I made the list <img src='http://www.wahidsaleemi.com/wp-includes/images/smilies/icon_smile.gif' alt="icon smile The Race to Collaborate" class='wp-smiley' title="The Race to Collaborate" /> </p>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2012/04/image4.png" title="image" rel="lightbox[728]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: block; float: none; margin-left: auto; border-top: 0px; margin-right: auto; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb4 The Race to Collaborate" src="http://www.wahidsaleemi.com/wp-content/uploads/2012/04/image_thumb4.png" width="484" height="292" /></a></p>
<p>The last twitter statistic I want to share is this one, which says it all – zero negativity. Also, our tweets are boring (just kidding folks – I have a small “tone dictionary.”)</p>
<p> <a href="http://www.wahidsaleemi.com/wp-content/uploads/2012/04/image5.png" title="image" rel="lightbox[728]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: left; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb5 The Race to Collaborate" align="left" src="http://www.wahidsaleemi.com/wp-content/uploads/2012/04/image_thumb5.png" width="230" height="244" /></a>
<p>Special thanks to my friend and co-chair Nedra Allmond (<a href="https://twitter.com/#!/NedraAllmond">@nedraallmond</a>) who I think was up 2 days straight finalizing things – get some rest!</p>
<p>Thanks to all the <a href="http://www.sharepointsaturday.org/la/Pages/sponsors.aspx">sponsors</a>, <a href="http://www.sharepointsaturday.org/la/Pages/speakers.aspx">speakers</a>, and <a href="http://www.facebook.com/SPSLA">attendees</a> for making this such a wonderful event! We’ll be posting presentations in the coming days, on the <a href="http://www.sharepointsaturday.org/la/Pages/slides.aspx">Media tab</a> at SharePointSaturday.org/LA    </p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?a=tyiCF7k-mPw:R-kvon6a7Wo:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?a=tyiCF7k-mPw:R-kvon6a7Wo:BGfa-dtoa6M"><img src="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?i=tyiCF7k-mPw:R-kvon6a7Wo:BGfa-dtoa6M" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?a=tyiCF7k-mPw:R-kvon6a7Wo:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?i=tyiCF7k-mPw:R-kvon6a7Wo:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/WahidsSharepointBlog/~4/tyiCF7k-mPw" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.wahidsaleemi.com/2012/04/the-race-to-collaborate/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		<feedburner:origLink>http://www.wahidsaleemi.com/2012/04/the-race-to-collaborate/</feedburner:origLink></item>
		<item>
		<title>Video: Where to get SharePoint Information Worker content</title>
		<link>http://feedproxy.google.com/~r/WahidsSharepointBlog/~3/p56Ed1p6tkI/</link>
		<comments>http://www.wahidsaleemi.com/2012/02/video-where-to-get-sharepoint-information-worker-content/#comments</comments>
		<pubDate>Tue, 21 Feb 2012 20:13:22 +0000</pubDate>
		<dc:creator>Wahid Saleemi</dc:creator>
				<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[Information Worker]]></category>
		<category><![CDATA[los angeles]]></category>
		<category><![CDATA[quick reference]]></category>
		<category><![CDATA[resources]]></category>
		<category><![CDATA[sharepoint 2010]]></category>

		<guid isPermaLink="false">http://www.wahidsaleemi.com/?p=724</guid>
		<description><![CDATA[As a follow-up to the &#34;Get The Point Blog&#34; post of the same title, I wanted to re-share this video as well as some useful links I&#8217;ve collected in the past two years. The Video: &#160; Some Links: Youtube Channel: Get Started with SharePoint Microsoft.com: SharePoint Resources for End Users SharePoint-Videos.com: Free Videos Incworx Blog: [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>As a follow-up to the &quot;Get The Point Blog&quot; post of the same title, I wanted to re-share this video as well as some useful links I&#8217;ve collected in the past two years.</p>
<p>The Video:</p>
<p>&#160;<iframe height="315" src="http://www.youtube.com/embed/hKjPJ5xUxcc" frameborder="0" width="420" allowfullscreen="allowfullscreen"></iframe></p>
<p>Some Links:</p>
<ul>
<li><a href="http://www.youtube.com/user/GetStartedSharePoint">Youtube Channel: Get Started with SharePoint</a></li>
<li><a href="http://sharepoint.microsoft.com/en-us/resources/Pages/End-User-Training-Guide.aspx">Microsoft.com: SharePoint Resources for End Users</a></li>
<li><a href="http://www.sharepoint-videos.com/all-free-videos/">SharePoint-Videos.com: Free Videos</a></li>
<li><a href="http://blog.incworx.com/blog/sharepoint-design-and-sharepoint-branding/download-a-sharepoint-2010-quick-reference">Incworx Blog: SharePoint 2010 Quick Reference Card</a></li>
<li><a href="http://office2010.microsoft.com/en-us/sharepoint-server-help/CH010372432.aspx?tl=3">Office.com: SharePoint 2010 Courses</a></li>
<li><a href="http://www.microsoft.com/download/en/details.aspx?id=26944">Microsoft.com Downloads: SharePoint 2010 BI Insights (Labs)</a></li>
</ul>
<p>Have any more end user/information worker content? Write a comment to share it!</p>
<p>Remember, you can get amazing SharePoint training by attending a SharePoint Saturday near you. I&#8217;m involved in SharePoint Saturday Los Angeles, where I know we&#8217;ll focus on information worker content and business solutions. The event takes place on April 14th. Find out more and keep updated by visiting the SPSLA pages:</p>
<ul>
<li><a href="http://www.sharepointsaturday.org/la/default.aspx">Official Site</a></li>
<li><a href="https://www.facebook.com/SPSLA">Facebook Page</a></li>
<li><a href="http://www.linkedin.com/groups/SharePoint-Sat-Los-Angeles-4298996">LinkedIn</a></li>
<li><a href="https://twitter.com/#!/search/%23SPSLA">Twitter #SPSLA Updates</a> and <a href="https://twitter.com/#!/sfvsharepoint">@SFVSharePoint</a></li>
</ul>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?a=p56Ed1p6tkI:sRQxAe1xFwM:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?a=p56Ed1p6tkI:sRQxAe1xFwM:BGfa-dtoa6M"><img src="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?i=p56Ed1p6tkI:sRQxAe1xFwM:BGfa-dtoa6M" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?a=p56Ed1p6tkI:sRQxAe1xFwM:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?i=p56Ed1p6tkI:sRQxAe1xFwM:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/WahidsSharepointBlog/~4/p56Ed1p6tkI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.wahidsaleemi.com/2012/02/video-where-to-get-sharepoint-information-worker-content/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.wahidsaleemi.com/2012/02/video-where-to-get-sharepoint-information-worker-content/</feedburner:origLink></item>
		<item>
		<title>#SFVSPUG Talks Social and Metadata</title>
		<link>http://feedproxy.google.com/~r/WahidsSharepointBlog/~3/i5hC4K8sLds/</link>
		<comments>http://www.wahidsaleemi.com/2012/02/sfvspug-talks-social-and-metadata/#comments</comments>
		<pubDate>Thu, 09 Feb 2012 18:08:46 +0000</pubDate>
		<dc:creator>Wahid Saleemi</dc:creator>
				<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[Christian Buckley]]></category>
		<category><![CDATA[SFVSPUG]]></category>
		<category><![CDATA[sharepoint user group]]></category>
		<category><![CDATA[social]]></category>
		<category><![CDATA[Social Tools]]></category>
		<category><![CDATA[spug]]></category>

		<guid isPermaLink="false">http://www.wahidsaleemi.com/?p=707</guid>
		<description><![CDATA[I normally don&#8217;t write about my SharePoint User Group meetings, but we had a really good presentation last night. The San Fernando Valley SPUG hosted Christian Buckley (@buckleyplanet) as he presented &#34;The Connection Between Metadata, Social Tools, and Personal Productivity.&#34; One feedback item from our member survey a few months ago was that our presentations [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>I normally don&#8217;t write about my SharePoint User Group meetings, but we had a really good presentation last night. The San Fernando Valley SPUG hosted Christian Buckley (<a href="http://twitter.com/#!/buckleyplanet">@buckleyplanet</a>) as he presented <strong>&quot;The Connection Between Metadata, Social Tools, and Personal Productivity.&quot;</strong></p>
<p>One feedback item from our member survey a few months ago was that our presentations were too focused on technology and not enough on the business. So, this presentation made perfect sense. In fact, Christian pointed out early on, that his presentation had very little to do with SharePoint.</p>
<p>The best quote of the evening and the reason for this post was this:</p>
<p>&quot;<u>Social</u> is just a layer of search that provides <em>context</em>.&quot;</p>
<p>That may seem like an obvious statement once you&#8217;ve heard it but it is thought-provoking as well. It&#8217;s one of the best ways to describe exactly what &quot;Social&quot; means for SharePoint.</p>
<p>In fact, if you think about it, the statement is true regardless of platform and its even truer outside the intranet. On the internet, there&#8217;s so much data and so many ways to access the data, no one can keep up. Without context, that data is meaningless. However, if a computer system knows me, my behaviors, my colleagues, it can better guess what I&#8217;m looking for.</p>
<p>In the most simplistic form it means knowing I want to look at a car, not an insect when I search for &quot;beetle.&quot; Or in the corporate world, knowing that I&#8217;m looking for Visio diagrams of computer systems when I search for &quot;architecture,&quot; not AutoCAD drawings of buildings.</p>
<p><strong>If metadata powers relevant search, then this layer of &quot;Social&quot; provides perhaps the most important piece of metadata: you.</strong></p>
<p>What do you think?</p>
<p>&#160;</p>
<p><strong>Christian Buckley:</strong></p>
<ul>
<li>Presentation: <a href="http://www.slideshare.net/echo4sharepoint/the-connection-between-metadata-social-and-personal-productivity-10148370">&quot;The Connection Between Metadata, Social Tools, and Personal Productivity.&quot;</a></li>
<li>Blog: <a href="http://www.buckleyplanet.com/">buckleyPLANET</a></li>
</ul>
<p><strong>Links to SFVSPUG:</strong></p>
<ul>
<li><a href="http://www.meetup.com/San-Fernando-Vally-SharePoint-Professionals/">Meetup.com</a></li>
<li><a href="https://twitter.com/#!/search/%23SFVSPUG">#SFVSPUG</a></li>
<li><a href="https://twitter.com/sfvsharepoint">@SFVSharePoint</a></li>
</ul>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?a=i5hC4K8sLds:JgJ_p8Zx6ao:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?a=i5hC4K8sLds:JgJ_p8Zx6ao:BGfa-dtoa6M"><img src="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?i=i5hC4K8sLds:JgJ_p8Zx6ao:BGfa-dtoa6M" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?a=i5hC4K8sLds:JgJ_p8Zx6ao:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?i=i5hC4K8sLds:JgJ_p8Zx6ao:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/WahidsSharepointBlog/~4/i5hC4K8sLds" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.wahidsaleemi.com/2012/02/sfvspug-talks-social-and-metadata/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.wahidsaleemi.com/2012/02/sfvspug-talks-social-and-metadata/</feedburner:origLink></item>
		<item>
		<title>AutoSPInstaller: Extending and Customizing</title>
		<link>http://feedproxy.google.com/~r/WahidsSharepointBlog/~3/xYTsurqpQDg/</link>
		<comments>http://www.wahidsaleemi.com/2012/01/autospinstaller-extending-and-customizing/#comments</comments>
		<pubDate>Mon, 16 Jan 2012 18:00:39 +0000</pubDate>
		<dc:creator>Wahid Saleemi</dc:creator>
				<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[AutoSPInstaller]]></category>
		<category><![CDATA[Brian Lalancette]]></category>
		<category><![CDATA[Certificates]]></category>
		<category><![CDATA[Microsoft SharePoint]]></category>
		<category><![CDATA[powershell]]></category>
		<category><![CDATA[Windows PowerShell]]></category>

		<guid isPermaLink="false">http://www.wahidsaleemi.com/?p=703</guid>
		<description><![CDATA[AutoSPInstaller gets you up and running fast. But, there may be times when the PowerShell functions that are included don’t suit you or your environment. You may also want to automate a few other related tasks. In this post I’m going to show you a few examples of how to extend AutoSPInstaller to perform additional [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>AutoSPInstaller gets you up and running fast. But, there may be times when the PowerShell functions that are included don’t suit you or your environment. You may also want to automate a few other related tasks.</p>
<p>In this post I’m going to show you a few examples of how to extend AutoSPInstaller to perform additional tasks. I’ll also show you one way to override functions and use your own instead. So, lets get started.</p>
<h2>Extending</h2>
<p>The context in which I’m using the term “Extended,” simply means adding your own functions to AutoSPInstaller. The best way to do this is to create your functions and place them in the AutoSPInstallerFunctionsCustom.ps1 that comes with the package. As an example, the file already contains one simple function called “GetVersion.”</p>
<p>Let’s take a real life example. In an earlier post <a href="http://www.wahidsaleemi.com/2011/11/autospinstaller-getting-prepared/" target="_blank">AutoSPInstaller: Getting Prepared</a>, I shared a tip on Step 3. The tip is to add some common executable extensions to the “Inclusion list for low file types,” which prevents popups during install. I want to automate that so I don’t forget. So, I’ve created a PowerShell function to do this for us:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p703code25'); return false;">View Code</a> POWERSHELL</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p70325"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
</pre></td><td class="code" id="p703code25"><pre class="powershell" style="font-family:monospace;"><span style="color: #008000;">#Region Add Low Risk FileTypes</span>
<span style="color: #008000;"># ===================================================================================</span>
<span style="color: #008000;"># FUNC: Add-LowRiskFileTypes</span>
<span style="color: #008000;"># DESC: Adds the specified extensions to the low risk file types (prevents popups)</span>
<span style="color: #008000;"># ===================================================================================</span>
<span style="color: #0000FF;">Function</span> Add<span style="color: pink;">-</span>LowRiskFileTypes<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#123;</span>
 <span style="color: #800080;">$Lowriskregpath</span> <span style="color: pink;">=</span><span style="color: #800000;">&quot;HKCU:\Software\Microsoft\Windows\Currentversion\Policies\Associations&quot;</span>
 <span style="color: #800080;">$Lowriskregfile</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;LowRiskFileTypes&quot;</span>
 <span style="color: #800080;">$LowRiskFileTypes</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;.exe;.msp;.msi;&quot;</span>
 <span style="color: #008080; font-weight: bold;">New-Item</span> <span style="color: #008080; font-style: italic;">-Path</span> <span style="color: #800080;">$Lowriskregpath</span> <span style="color: #008080; font-style: italic;">-erroraction</span> silentlycontinue <span style="color: pink;">|</span> <span style="color: #008080; font-weight: bold;">Out-null</span>
 <span style="color: #008080; font-weight: bold;">New-ItemProperty</span> <span style="color: #800080;">$Lowriskregpath</span> <span style="color: #008080; font-style: italic;">-name</span> <span style="color: #800080;">$Lowriskregfile</span> <span style="color: #008080; font-style: italic;">-value</span> <span style="color: #800080;">$LowRiskFileTypes</span> <span style="color: #008080; font-style: italic;">-propertyType</span> String <span style="color: #008080; font-style: italic;">-erroraction</span> silentlycontinue <span style="color: pink;">|</span> <span style="color: #008080; font-weight: bold;">Out-null</span>
 <span style="color: #008080; font-weight: bold;">Write-Host</span> <span style="color: #800000;">&quot;Added Low Risk File Types $LowRiskFileTypes&quot;</span>
 <span style="color: #000000;">&#125;</span>
<span style="color: #0000FF;">Function</span> Remove<span style="color: pink;">-</span>lowriskfiles<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#123;</span>
 <span style="color: #008080; font-weight: bold;">remove-itemproperty</span> <span style="color: #008080; font-style: italic;">-path</span> <span style="color: #800080;">$Lowriskregpath</span> <span style="color: #008080; font-style: italic;">-name</span> <span style="color: #800080;">$Lowriskregfile</span> <span style="color: #008080; font-style: italic;">-erroraction</span> silentlycontinue
 <span style="color: #000000;">&#125;</span>
<span style="color: #008000;">#EndRegion</span></pre></td></tr></table></div>

<p>Copy and paste that into AutoSPInstallerFunctionsCustom.ps1. Note, that I’m not calling the function anywhere yet, so this by itself won’t even do anything. So let&#8217;s call it. For obvious reasons this function should be one of the first things we do, even before installing software. We need to modify AutoSPInstallerMain.ps1 and call this function. In that file, towards the bottom, you’ll see this text:</p>
<pre>#Region MAIN - Check for input file and start the install</pre>
<p>There’s no need to mess with anything above that really. Find the line “PrepForInstall” and just above it, enter a new line with “Add-LowRiskFileTypes”</p>
<p>That’s it. Now when you run AutoSPInstaller (like normal, using the batch file), this function will be executed. </p>
<h2>Customizing</h2>
<p>Customizing, for the purposes of this article, means overriding an AutoSPInstaller function, or eliminating it entirely. There may be cases when you either don’t want something to happen or you just need it to happen differently. For the most part, if you want to skip something, you just specify that in your input XML (e.g. parameter=”false”). That is by far the best way to skip something. But not everything is configurable from the XML files so you may need to override it using your own PowerShell function.</p>
<p>Let’s take a look at an example. AutoSPInstaller has a function that will SSL-enable your SharePoint sites (including Central Administration). It’s pretty good! There’s some nice logic in there but it also makes some assumptions that weren’t working for me recently. You can take a look at this function by opening AutoSPInstallerFunctions.ps1 and do a search for “Function AssignCert”</p>
<p>For the most part, I had no problems with the function but it was creating a self-signed wildcard certificate for me based on the last two levels of my domain name. Take this for example:</p>
<p>us.myCompany.corp</p>
<p>The default function will create a certificate with *.myCompany.corp unless it finds one. In my case, I don’t want that because my URLs will include the &quot;us.&quot; portion as well, I need a *.us.myCompany.corp certificate (which I have)! My URLs will look something like this: <a href="https://sharepoint.us.myCompany.corp/">https://sharepoint.us.myCompany.corp/</a></p>
<p>Now, in my case, my European servers use a domain of eu.myCompany.corp and the good thing for me is that the first “Primary Domain Suffix” on the server matches its domain. This is important for my function since that is what I’m going to use. So here it is:</p>

<div class="wp_codebox_msgheader wp_codebox_hide"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p703code26'); return false;">View Code</a> POWERSHELL</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p70326"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
</pre></td><td class="code" id="p703code26"><pre class="powershell" style="font-family:monospace;"><span style="color: #008000;">#Region Assign Certificate</span>
<span style="color: #008000;"># ===================================================================================</span>
<span style="color: #008000;"># Func: AssignCert</span>
<span style="color: #008000;"># Desc: Create and assign SSL Certificate</span>
<span style="color: #008000;"># ===================================================================================</span>
<span style="color: #0000FF;">Function</span> AssignCert<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#91;</span><span style="color: #008080;">xml</span><span style="color: #000000;">&#93;</span><span style="color: #800080;">$xmlinput</span><span style="color: #000000;">&#41;</span>
<span style="color: #000000;">&#123;</span>
	ImportWebAdministration
	<span style="color: #008080; font-weight: bold;">Write-Host</span> <span style="color: #008080; font-style: italic;">-ForegroundColor</span> White <span style="color: #800000;">&quot; - Custom: Assigning certificate to site <span style="color: #008080; font-weight: bold;">`&quot;</span>https://$SSLHostHeader<span style="color: #008080; font-weight: bold;">`:</span>$SSLPort<span style="color: #008080; font-weight: bold;">`&quot;</span>&quot;</span>
	<span style="color: #008000;"># Check for sub-domains</span>
 	<span style="color: #800080;">$NumDomainLevels</span> <span style="color: pink;">=</span> <span style="color: #000000;">&#40;</span><span style="color: #800080;">$Env</span>:USERDNSDOMAIN <span style="color: pink;">-</span>split <span style="color: #800000;">&quot;\.&quot;</span><span style="color: #000000;">&#41;</span>.Count
	<span style="color: #0000FF;">If</span> <span style="color: #000000;">&#40;</span><span style="color: #800080;">$NumDomainLevels</span> <span style="color: #FF0000;">-gt</span> <span style="color: #804000;">2</span><span style="color: #000000;">&#41;</span> <span style="color: #008000;"># For example, corp.domain.net</span>
	<span style="color: #000000;">&#123;</span>
		<span style="color: #008000;"># Get only the last two (domain + TLD)</span>
		<span style="color: #008000;"># Commenting this original method out.</span>
		<span style="color: #800080;">$TopDomain</span> <span style="color: pink;">=</span> <span style="color: #800080;">$Env</span>:USERDNSDOMAIN.Split<span style="color: #000000;">&#40;</span><span style="color: #800000;">&quot;\.&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#91;</span><span style="color: #000000;">&#40;</span><span style="color: #800080;">$NumDomainLevels</span> <span style="color: pink;">-</span> <span style="color: #804000;">2</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#93;</span> <span style="color: pink;">+</span> <span style="color: #800000;">&quot;.&quot;</span> <span style="color: pink;">+</span> <span style="color: #800080;">$Env</span>:USERDNSDOMAIN.Split<span style="color: #000000;">&#40;</span><span style="color: #800000;">&quot;\.&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#91;</span><span style="color: #000000;">&#40;</span><span style="color: #800080;">$NumDomainLevels</span> <span style="color: pink;">-</span> <span style="color: #804000;">1</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#93;</span>
		<span style="color: #800080;">$dns</span> <span style="color: pink;">=</span> <span style="color: #008080; font-weight: bold;">Get-WmiObject</span> Win32_NetworkAdapterConfiguration <span style="color: pink;">|</span> <span style="color: #008080; font-weight: bold;">Where-Object</span> <span style="color: #000000;">&#123;</span><a href="about:blank"><span style="color: #000080;">$_</span></a>.IPEnabled <span style="color: #FF0000;">-eq</span> <span style="color: #800080;">$true</span><span style="color: #000000;">&#125;</span> <span style="color: pink;">|</span> <span style="color: #008080; font-weight: bold;">select</span> 
		<span style="color: #800080;">$TopDomain</span> <span style="color: pink;">=</span> <span style="color: #800080;">$dns</span>.DNSDomainSuffixSearchOrder<span style="color: #000000;">&#91;</span><span style="color: #804000;">0</span><span style="color: #000000;">&#93;</span>
		<span style="color: #000000;">&#125;</span>
	<span style="color: #008000;"># If our SSL host header is a FQDN containing the local domain (or part of it, if the local domain is a subdomain), look for an existing wildcard cert</span>
	<span style="color: #0000FF;">If</span> <span style="color: #000000;">&#40;</span><span style="color: #800080;">$SSLHostHeader</span> <span style="color: #FF0000;">-like</span> <span style="color: #800000;">&quot;*.$env:USERDNSDOMAIN&quot;</span><span style="color: #000000;">&#41;</span>
	<span style="color: #000000;">&#123;</span>
		<span style="color: #008080; font-weight: bold;">Write-Host</span> <span style="color: #008080; font-style: italic;">-ForegroundColor</span> White <span style="color: #800000;">&quot; - Custom: Looking for existing <span style="color: #008080; font-weight: bold;">`&quot;</span>*.$env:USERDNSDOMAIN<span style="color: #008080; font-weight: bold;">`&quot;</span> wildcard certificate...&quot;</span>
		<span style="color: #800080;">$Cert</span> <span style="color: pink;">=</span> <span style="color: #008080; font-weight: bold;">Get-ChildItem</span> cert:\LocalMachine\My <span style="color: pink;">|</span> <span style="color: pink;">?</span> <span style="color: #000000;">&#123;</span><a href="about:blank"><span style="color: #000080;">$_</span></a>.Subject <span style="color: #FF0000;">-like</span> <span style="color: #800000;">&quot;CN=<span style="color: #008080; font-weight: bold;">``</span>*.$env:USERDNSDOMAIN*&quot;</span><span style="color: #000000;">&#125;</span>
	<span style="color: #000000;">&#125;</span>
	<span style="color: #0000FF;">ElseIf</span> <span style="color: #000000;">&#40;</span><span style="color: #000000;">&#40;</span><span style="color: #800080;">$NumDomainLevels</span> <span style="color: #FF0000;">-gt</span> <span style="color: #804000;">2</span><span style="color: #000000;">&#41;</span> <span style="color: #FF0000;">-and</span> <span style="color: #000000;">&#40;</span><span style="color: #800080;">$SSLHostHeader</span> <span style="color: #FF0000;">-like</span> <span style="color: #800000;">&quot;*.$TopDomain&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>
	<span style="color: #000000;">&#123;</span>
		<span style="color: #008080; font-weight: bold;">Write-Host</span> <span style="color: #008080; font-style: italic;">-ForegroundColor</span> White <span style="color: #800000;">&quot; - Custom: Looking for existing <span style="color: #008080; font-weight: bold;">`&quot;</span>*.$TopDomain<span style="color: #008080; font-weight: bold;">`&quot;</span> wildcard certificate...&quot;</span>
		<span style="color: #800080;">$Cert</span> <span style="color: pink;">=</span> <span style="color: #008080; font-weight: bold;">Get-ChildItem</span> cert:\LocalMachine\My <span style="color: pink;">|</span> <span style="color: pink;">?</span> <span style="color: #000000;">&#123;</span><a href="about:blank"><span style="color: #000080;">$_</span></a>.Subject <span style="color: #FF0000;">-like</span> <span style="color: #800000;">&quot;CN=<span style="color: #008080; font-weight: bold;">``</span>*.$TopDomain*&quot;</span><span style="color: #000000;">&#125;</span>
	<span style="color: #000000;">&#125;</span>
	<span style="color: #0000FF;">Else</span>
	<span style="color: #000000;">&#123;</span>
		<span style="color: #008080; font-weight: bold;">Write-Host</span> <span style="color: #008080; font-style: italic;">-ForegroundColor</span> White <span style="color: #800000;">&quot; - Custom: Looking for existing <span style="color: #008080; font-weight: bold;">`&quot;</span>$SSLHostHeader<span style="color: #008080; font-weight: bold;">`&quot;</span> certificate...&quot;</span>
		<span style="color: #800080;">$Cert</span> <span style="color: pink;">=</span> <span style="color: #008080; font-weight: bold;">Get-ChildItem</span> cert:\LocalMachine\My <span style="color: pink;">|</span> <span style="color: pink;">?</span> <span style="color: #000000;">&#123;</span><a href="about:blank"><span style="color: #000080;">$_</span></a>.Subject <span style="color: #FF0000;">-eq</span> <span style="color: #800000;">&quot;CN=$SSLHostHeader&quot;</span><span style="color: #000000;">&#125;</span>
	<span style="color: #000000;">&#125;</span>
	<span style="color: #0000FF;">If</span> <span style="color: #000000;">&#40;</span><span style="color: pink;">!</span><span style="color: #800080;">$Cert</span><span style="color: #000000;">&#41;</span>
	<span style="color: #000000;">&#123;</span>
		<span style="color: #008080; font-weight: bold;">Write-Host</span> <span style="color: #008080; font-style: italic;">-ForegroundColor</span> White <span style="color: #800000;">&quot; - Custom: None found.&quot;</span>
		<span style="color: #008000;"># Get the actual location of makecert.exe in case we installed SharePoint in the non-default location</span>
		<span style="color: #800080;">$SPInstallPath</span> <span style="color: pink;">=</span> <span style="color: #000000;">&#40;</span><span style="color: #008080; font-weight: bold;">Get-Item</span> <span style="color: #008080; font-style: italic;">-Path</span> <span style="color: #800000;">'HKLM:\SOFTWARE\Microsoft\Office Server\14.0'</span><span style="color: #000000;">&#41;</span>.GetValue<span style="color: #000000;">&#40;</span><span style="color: #800000;">&quot;InstallPath&quot;</span><span style="color: #000000;">&#41;</span>
		<span style="color: #800080;">$MakeCert</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;$SPInstallPath\Tools\makecert.exe&quot;</span>
		<span style="color: #0000FF;">If</span> <span style="color: #000000;">&#40;</span><span style="color: #008080; font-weight: bold;">Test-Path</span> <span style="color: #800000;">&quot;$MakeCert&quot;</span><span style="color: #000000;">&#41;</span>
		<span style="color: #000000;">&#123;</span>
			<span style="color: #008080; font-weight: bold;">Write-Host</span> <span style="color: #008080; font-style: italic;">-ForegroundColor</span> White <span style="color: #800000;">&quot; - Custom: Creating new self-signed certificate...&quot;</span>
			<span style="color: #0000FF;">If</span> <span style="color: #000000;">&#40;</span><span style="color: #800080;">$SSLHostHeader</span> <span style="color: #FF0000;">-like</span> <span style="color: #800000;">&quot;*.$env:USERDNSDOMAIN&quot;</span><span style="color: #000000;">&#41;</span>
			<span style="color: #000000;">&#123;</span>
				<span style="color: #008000;"># Create a new wildcard cert so we can potentially use it on other sites too</span>
				Start<span style="color: pink;">-</span>Process <span style="color: pink;">-</span>NoNewWindow <span style="color: #008080; font-style: italic;">-Wait</span> <span style="color: #008080; font-style: italic;">-FilePath</span> <span style="color: #800000;">&quot;$MakeCert&quot;</span> <span style="color: #008080; font-style: italic;">-ArgumentList</span> <span style="color: #800000;">&quot;-r -pe -n <span style="color: #008080; font-weight: bold;">`&quot;</span>CN=*.$env:USERDNSDOMAIN<span style="color: #008080; font-weight: bold;">`&quot;</span> -eku 1.3.6.1.5.5.7.3.1 -ss My -sr localMachine -sky exchange -sp <span style="color: #008080; font-weight: bold;">`&quot;</span>Microsoft RSA SChannel Cryptographic Provider<span style="color: #008080; font-weight: bold;">`&quot;</span> -sy 12&quot;</span>
				<span style="color: #800080;">$Cert</span> <span style="color: pink;">=</span> <span style="color: #008080; font-weight: bold;">Get-ChildItem</span> cert:\LocalMachine\My <span style="color: pink;">|</span> <span style="color: pink;">?</span> <span style="color: #000000;">&#123;</span><a href="about:blank"><span style="color: #000080;">$_</span></a>.Subject <span style="color: #FF0000;">-like</span> <span style="color: #800000;">&quot;CN=<span style="color: #008080; font-weight: bold;">``</span>*.$env:USERDNSDOMAIN*&quot;</span><span style="color: #000000;">&#125;</span>
			<span style="color: #000000;">&#125;</span>
			<span style="color: #0000FF;">ElseIf</span> <span style="color: #000000;">&#40;</span><span style="color: #000000;">&#40;</span><span style="color: #800080;">$NumDomainLevels</span> <span style="color: #FF0000;">-gt</span> <span style="color: #804000;">2</span><span style="color: #000000;">&#41;</span> <span style="color: #FF0000;">-and</span> <span style="color: #000000;">&#40;</span><span style="color: #800080;">$SSLHostHeader</span> <span style="color: #FF0000;">-like</span> <span style="color: #800000;">&quot;*.$TopDomain&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>
			<span style="color: #000000;">&#123;</span>
				<span style="color: #008000;"># Create a new wildcard cert so we can potentially use it on other sites too</span>
				Start<span style="color: pink;">-</span>Process <span style="color: pink;">-</span>NoNewWindow <span style="color: #008080; font-style: italic;">-Wait</span> <span style="color: #008080; font-style: italic;">-FilePath</span> <span style="color: #800000;">&quot;$MakeCert&quot;</span> <span style="color: #008080; font-style: italic;">-ArgumentList</span> <span style="color: #800000;">&quot;-r -pe -n <span style="color: #008080; font-weight: bold;">`&quot;</span>CN=*.$TopDomain<span style="color: #008080; font-weight: bold;">`&quot;</span> -eku 1.3.6.1.5.5.7.3.1 -ss My -sr localMachine -sky exchange -sp <span style="color: #008080; font-weight: bold;">`&quot;</span>Microsoft RSA SChannel Cryptographic Provider<span style="color: #008080; font-weight: bold;">`&quot;</span> -sy 12&quot;</span>
				<span style="color: #800080;">$Cert</span> <span style="color: pink;">=</span> <span style="color: #008080; font-weight: bold;">Get-ChildItem</span> cert:\LocalMachine\My <span style="color: pink;">|</span> <span style="color: pink;">?</span> <span style="color: #000000;">&#123;</span><a href="about:blank"><span style="color: #000080;">$_</span></a>.Subject <span style="color: #FF0000;">-like</span> <span style="color: #800000;">&quot;CN=<span style="color: #008080; font-weight: bold;">``</span>*.$TopDomain*&quot;</span><span style="color: #000000;">&#125;</span>
			<span style="color: #000000;">&#125;</span>
			<span style="color: #0000FF;">Else</span>
			<span style="color: #000000;">&#123;</span>
				<span style="color: #008000;"># Just create a cert that matches the SSL host header</span>
				Start<span style="color: pink;">-</span>Process <span style="color: pink;">-</span>NoNewWindow <span style="color: #008080; font-style: italic;">-Wait</span> <span style="color: #008080; font-style: italic;">-FilePath</span> <span style="color: #800000;">&quot;$MakeCert&quot;</span> <span style="color: #008080; font-style: italic;">-ArgumentList</span> <span style="color: #800000;">&quot;-r -pe -n <span style="color: #008080; font-weight: bold;">`&quot;</span>CN=$SSLHostHeader<span style="color: #008080; font-weight: bold;">`&quot;</span> -eku 1.3.6.1.5.5.7.3.1 -ss My -sr localMachine -sky exchange -sp <span style="color: #008080; font-weight: bold;">`&quot;</span>Microsoft RSA SChannel Cryptographic Provider<span style="color: #008080; font-weight: bold;">`&quot;</span> -sy 12&quot;</span>
				<span style="color: #800080;">$Cert</span> <span style="color: pink;">=</span> <span style="color: #008080; font-weight: bold;">Get-ChildItem</span> cert:\LocalMachine\My <span style="color: pink;">|</span> <span style="color: pink;">?</span> <span style="color: #000000;">&#123;</span><a href="about:blank"><span style="color: #000080;">$_</span></a>.Subject <span style="color: #FF0000;">-eq</span> <span style="color: #800000;">&quot;CN=$SSLHostHeader&quot;</span><span style="color: #000000;">&#125;</span>
			<span style="color: #000000;">&#125;</span>
		<span style="color: #000000;">&#125;</span>
		<span style="color: #0000FF;">Else</span> 
		<span style="color: #000000;">&#123;</span>
			<span style="color: #008080; font-weight: bold;">Write-Host</span> <span style="color: #008080; font-style: italic;">-ForegroundColor</span> White <span style="color: #800000;">&quot; - <span style="color: #008080; font-weight: bold;">`&quot;</span>$MakeCert<span style="color: #008080; font-weight: bold;">`&quot;</span> not found.&quot;</span>
			<span style="color: #008080; font-weight: bold;">Write-Host</span> <span style="color: #008080; font-style: italic;">-ForegroundColor</span> White <span style="color: #800000;">&quot; - Looking for any machine-named certificates we can use...&quot;</span>
			<span style="color: #008000;"># Select the first certificate with the most recent valid date</span>
			<span style="color: #800080;">$Cert</span> <span style="color: pink;">=</span> <span style="color: #008080; font-weight: bold;">Get-ChildItem</span> cert:\LocalMachine\My <span style="color: pink;">|</span> <span style="color: pink;">?</span> <span style="color: #000000;">&#123;</span><a href="about:blank"><span style="color: #000080;">$_</span></a>.Subject <span style="color: #FF0000;">-like</span> <span style="color: #800000;">&quot;*$env:COMPUTERNAME&quot;</span><span style="color: #000000;">&#125;</span> <span style="color: pink;">|</span> <span style="color: #008080; font-weight: bold;">Sort-Object</span> NotBefore <span style="color: pink;">-</span>Desc <span style="color: pink;">|</span> <span style="color: #008080; font-weight: bold;">Select-Object</span> <span style="color: #008080; font-style: italic;">-First</span> <span style="color: #804000;">1</span>
			<span style="color: #0000FF;">If</span> <span style="color: #000000;">&#40;</span><span style="color: pink;">!</span><span style="color: #800080;">$Cert</span><span style="color: #000000;">&#41;</span>
			<span style="color: #000000;">&#123;</span>
				<span style="color: #008080; font-weight: bold;">Write-Host</span> <span style="color: #008080; font-style: italic;">-ForegroundColor</span> White <span style="color: #800000;">&quot; - Custom: None found, skipping certificate creation.&quot;</span>
			<span style="color: #000000;">&#125;</span>
		<span style="color: #000000;">&#125;</span>
	<span style="color: #000000;">&#125;</span>
	<span style="color: #0000FF;">If</span> <span style="color: #000000;">&#40;</span><span style="color: #800080;">$Cert</span><span style="color: #000000;">&#41;</span>
	<span style="color: #000000;">&#123;</span>
		<span style="color: #800080;">$CertSubject</span> <span style="color: pink;">=</span> <span style="color: #800080;">$Cert</span>.Subject
		<span style="color: #008080; font-weight: bold;">Write-Host</span> <span style="color: #008080; font-style: italic;">-ForegroundColor</span> White <span style="color: #800000;">&quot; - Certificate <span style="color: #008080; font-weight: bold;">`&quot;</span>$CertSubject<span style="color: #008080; font-weight: bold;">`&quot;</span> found.&quot;</span>
		<span style="color: #008000;"># Fix up the cert subject name to a file-friendly format</span>
		<span style="color: #800080;">$CertSubjectName</span> <span style="color: pink;">=</span> <span style="color: #800080;">$CertSubject</span>.Split<span style="color: #000000;">&#40;</span><span style="color: #800000;">&quot;,&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#91;</span><span style="color: #804000;">0</span><span style="color: #000000;">&#93;</span> <span style="color: #FF0000;">-replace</span> <span style="color: #800000;">&quot;CN=&quot;</span><span style="color: pink;">,</span><span style="color: #800000;">&quot;&quot;</span> <span style="color: #FF0000;">-replace</span> <span style="color: #800000;">&quot;\*&quot;</span><span style="color: pink;">,</span><span style="color: #800000;">&quot;wildcard&quot;</span>
		<span style="color: #008000;"># Export our certificate to a file, then import it to the Trusted Root Certification Authorites store so we don't get nasty browser warnings</span>
		<span style="color: #008000;"># This will actually only work if the Subject and the host part of the URL are the same</span>
		<span style="color: #008000;"># Borrowed from https://www.orcsweb.com/blog/james/powershell-ing-on-windows-server-how-to-import-certificates-using-powershell/</span>
		<span style="color: #008080; font-weight: bold;">Write-Host</span> <span style="color: #008080; font-style: italic;">-ForegroundColor</span> White <span style="color: #800000;">&quot; - Exporting <span style="color: #008080; font-weight: bold;">`&quot;</span>$CertSubject<span style="color: #008080; font-weight: bold;">`&quot;</span> to <span style="color: #008080; font-weight: bold;">`&quot;</span>$CertSubjectName.cer<span style="color: #008080; font-weight: bold;">`&quot;</span>...&quot;</span>
		<span style="color: #800080;">$Cert</span>.Export<span style="color: #000000;">&#40;</span><span style="color: #800000;">&quot;Cert&quot;</span><span style="color: #000000;">&#41;</span> <span style="color: pink;">|</span> <span style="color: #008080; font-weight: bold;">Set-Content</span> <span style="color: #800000;">&quot;$env:TEMP\$CertSubjectName.cer&quot;</span> <span style="color: #008080; font-style: italic;">-Encoding</span> byte
		<span style="color: #800080;">$Pfx</span> <span style="color: pink;">=</span> <span style="color: #008080; font-weight: bold;">New-Object</span> System.Security.Cryptography.X509Certificates.X509Certificate2
		<span style="color: #008080; font-weight: bold;">Write-Host</span> <span style="color: #008080; font-style: italic;">-ForegroundColor</span> White <span style="color: #800000;">&quot; - Importing <span style="color: #008080; font-weight: bold;">`&quot;</span>$CertSubjectName.cer<span style="color: #008080; font-weight: bold;">`&quot;</span> to Local Machine\Root...&quot;</span>
		<span style="color: #800080;">$Pfx</span>.Import<span style="color: #000000;">&#40;</span><span style="color: #800000;">&quot;$env:TEMP\$CertSubjectName.cer&quot;</span><span style="color: #000000;">&#41;</span>
		<span style="color: #800080;">$Store</span> <span style="color: pink;">=</span> <span style="color: #008080; font-weight: bold;">New-Object</span> System.Security.Cryptography.X509Certificates.X509Store<span style="color: #000000;">&#40;</span><span style="color: #800000;">&quot;Root&quot;</span><span style="color: pink;">,</span><span style="color: #800000;">&quot;LocalMachine&quot;</span><span style="color: #000000;">&#41;</span>
		<span style="color: #800080;">$Store</span>.Open<span style="color: #000000;">&#40;</span><span style="color: #800000;">&quot;MaxAllowed&quot;</span><span style="color: #000000;">&#41;</span>
		<span style="color: #800080;">$Store</span>.Add<span style="color: #000000;">&#40;</span><span style="color: #800080;">$Pfx</span><span style="color: #000000;">&#41;</span>
		<span style="color: #800080;">$Store</span>.Close<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>
		<span style="color: #008080; font-weight: bold;">Write-Host</span> <span style="color: #008080; font-style: italic;">-ForegroundColor</span> White <span style="color: #800000;">&quot; - Custom: Assigning certificate <span style="color: #008080; font-weight: bold;">`&quot;</span>$CertSubject<span style="color: #008080; font-weight: bold;">`&quot;</span> to SSL-enabled site...&quot;</span>
		<span style="color: #008000;">#Set-Location IIS:\SslBindings -ErrorAction Inquire</span>
		<span style="color: #800080;">$Cert</span> <span style="color: pink;">|</span> <span style="color: #008080; font-weight: bold;">New-Item</span> IIS:\SslBindings\0.0.0.0<span style="color: pink;">!</span><span style="color: #800080;">$SSLPort</span> <span style="color: #008080; font-style: italic;">-ErrorAction</span> SilentlyContinue <span style="color: pink;">|</span> <span style="color: #008080; font-weight: bold;">Out-Null</span>
		<span style="color: #008080; font-weight: bold;">Set-ItemProperty</span> IIS:\Sites\<span style="color: #800080;">$SSLSiteName</span> <span style="color: #008080; font-style: italic;">-Name</span> bindings <span style="color: #008080; font-style: italic;">-Value</span> <span style="color: pink;">@</span><span style="color: #000000;">&#123;</span>protocol<span style="color: pink;">=</span><span style="color: #800000;">&quot;https&quot;</span>;bindingInformation<span style="color: pink;">=</span><span style="color: #800000;">&quot;*:$($SSLPort):$($SSLHostHeader)&quot;</span><span style="color: #000000;">&#125;</span>
		<span style="color: #008000;">## Set-WebBinding -Name $SSLSiteName -BindingInformation &quot;:$($SSLPort):&quot; -PropertyName Port -Value $SSLPort -PropertyName Protocol -Value https </span>
		<span style="color: #008080; font-weight: bold;">Write-Host</span> <span style="color: #008080; font-style: italic;">-ForegroundColor</span> White <span style="color: #800000;">&quot; - Custom: Certificate has been assigned to site <span style="color: #008080; font-weight: bold;">`&quot;</span>https://$SSLHostHeader<span style="color: #008080; font-weight: bold;">`:</span>$SSLPort<span style="color: #008080; font-weight: bold;">`&quot;</span>&quot;</span>
	<span style="color: #000000;">&#125;</span>
	<span style="color: #0000FF;">Else</span> <span style="color: #000000;">&#123;</span><span style="color: #008080; font-weight: bold;">Write-Host</span> <span style="color: #008080; font-style: italic;">-ForegroundColor</span> White <span style="color: #800000;">&quot; - Custom: No certificates were found, and none could be created.&quot;</span><span style="color: #000000;">&#125;</span>
	<span style="color: #800080;">$Cert</span> <span style="color: pink;">=</span> <span style="color: #800080;">$null</span>
<span style="color: #000000;">&#125;</span>
<span style="color: #008000;">#EndRegion</span></pre></td></tr></table></div>

<p>This is essentially the same exact function with minor changes. I’m changing the $TopDomain variable to use the DNSDomainSuffixSearchOrder (and taking the top one, the one in position 0).</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p703code27'); return false;">View Code</a> POWERSHELL</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p70327"><td class="line_numbers"><pre>1
2
</pre></td><td class="code" id="p703code27"><pre class="powershell" style="font-family:monospace;"><span style="color: #800080;">$dns</span> <span style="color: pink;">=</span> <span style="color: #008080; font-weight: bold;">Get-WmiObject</span> Win32_NetworkAdapterConfiguration <span style="color: pink;">|</span> <span style="color: #008080; font-weight: bold;">Where-Object</span> <span style="color: #000000;">&#123;</span><a href="about:blank"><span style="color: #000080;">$_</span></a>.IPEnabled <span style="color: #FF0000;">-eq</span> <span style="color: #800080;">$true</span><span style="color: #000000;">&#125;</span> <span style="color: pink;">|</span> <span style="color: #008080; font-weight: bold;">select</span> 
<span style="color: #800080;">$TopDomain</span> <span style="color: pink;">=</span> <span style="color: #800080;">$dns</span>.DNSDomainSuffixSearchOrder<span style="color: #000000;">&#91;</span><span style="color: #804000;">0</span><span style="color: #000000;">&#93;</span></pre></td></tr></table></div>

<p>I’ll admit, this is quite poorly written because there are no checks or traps, but I know my environment and this will work for me.</p>
<p>So, I have this function that I want to use instead of the one packaged with AutoSPInstaller. What’s the right way to override it? Well, its <em><strong>not</strong></em> to just go in and edit AutoSPInstallerFunctions.ps1, no, that file should always be left alone. Instead, add your function to AutoSPInstallerFunctionsCustom.ps1 and just <strong><em>give it the same name</em></strong>. By giving it the same name, it will override the original function.</p>
<p>This is an easy way to just skip certain functions as well. So, lets say I don’t want to check the install account because I am running using the Farm account and that warning message really scares me (don’t run the install using the Farm account, by the way). That’s done using a function called CheckInstallAccount. I’m going to just override it so it doesn’t give me a warning. So here’s my function:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p703code28'); return false;">View Code</a> POWERSHELL</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p70328"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
</pre></td><td class="code" id="p703code28"><pre class="powershell" style="font-family:monospace;"><span style="color: #008000;">#Region Check Installation Account</span>
<span style="color: #008000;"># ===================================================================================</span>
<span style="color: #008000;"># Func: CheckInstallAccount</span>
<span style="color: #008000;"># Desc: Check the install account and </span>
<span style="color: #008000;"># ===================================================================================</span>
<span style="color: #0000FF;">Function</span> CheckInstallAccount<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#91;</span><span style="color: #008080;">xml</span><span style="color: #000000;">&#93;</span><span style="color: #800080;">$xmlinput</span><span style="color: #000000;">&#41;</span>
<span style="color: #000000;">&#123;</span>
        <span style="color: #008080; font-weight: bold;">Write-Host</span>  <span style="color: #008080; font-style: italic;">-ForegroundColor</span> White <span style="color: #800000;">&quot; - Man! You are so awesome using the Farm account!&quot;</span>
<span style="color: #000000;">&#125;</span>
<span style="color: #008000;">#EndRegion</span></pre></td></tr></table></div>

<p>You could even do without the Write-Host (meaning leave it blank) and have it do nothing at all. </p>
<h2>In Summary</h2>
<p>You can create your own functions and place them in AutoSPInstallerFunctionsCustom.ps1. This file loads after the AutoSPInstallerFunctions.ps1 so any functions with the same name will override the original. If you’ve created functions that you want to run, just add the function name to the AutoSPInstallerMain.ps1 file – in the appropriate place. And finally, its best not to change the AutoSPInstallerFunctions.ps1.</p>
<h2>BONUS &#8211; Oh Wait, There&#8217;s More?</h2>
<p>I wanted to give everyone a bonus tip and another example of extended AutoSPInstaller, so here goes!</p>
<p>I&#8217;d like to add a bookmark/favorite to Internet Explorer for Central Admin auto-magically. So, I&#8217;ve created this function:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p703code29'); return false;">View Code</a> POWERSHELL</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p70329"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
</pre></td><td class="code" id="p703code29"><pre class="powershell" style="font-family:monospace;"><span style="color: #008000;">#Region Create CA Favorite</span>
<span style="color: #008000;"># ===================================================================================</span>
<span style="color: #008000;"># Func: Create-CAFavorite</span>
<span style="color: #008000;"># Desc: Adds the Central Administration URL to the Favorite bar</span>
<span style="color: #008000;"># ===================================================================================</span>
<span style="color: #0000FF;">Function</span> Create<span style="color: pink;">-</span>CAFavorite<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#91;</span><span style="color: #008080;">xml</span><span style="color: #000000;">&#93;</span><span style="color: #800080;">$xmlinput</span><span style="color: #000000;">&#41;</span> <span style="color: #000000;">&#123;</span>
<span style="color: #008000;">#$url = &quot;https://someone.local/test&quot;</span>
<span style="color: #800080;">$url</span> <span style="color: pink;">=</span> <span style="color: #800080;">$centraladminurl</span>
<span style="color: #008000;">#Get IE Version</span>
<span style="color: #800080;">$iepath</span> <span style="color: pink;">=</span> <span style="color: #008080; font-weight: bold;">Get-ItemProperty</span> <span style="color: #800000;">'HKLM:\SOFTWARE\Microsoft\Internet Explorer'</span>
<span style="color: #800080;">$ieVer</span> <span style="color: pink;">=</span> <span style="color: #800080;">$iepath</span>.Version
&nbsp;
<span style="color: #0000FF;">If</span> <span style="color: #000000;">&#40;</span><span style="color: #800080;">$ieVer</span> <span style="color: #FF0000;">-like</span> <span style="color: #800000;">&quot;8*&quot;</span><span style="color: #000000;">&#41;</span> <span style="color: #000000;">&#123;</span>
	<span style="color: #008000;">#Favorites Bar location for IE8</span>
	<span style="color: #800080;">$favdir</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;$env:userprofile\Favorites\Links&quot;</span>
<span style="color: #000000;">&#125;</span>
<span style="color: #0000FF;">Else</span> <span style="color: #000000;">&#123;</span>
	<span style="color: #008000;">#Favorites Bar location for IE9</span>
	<span style="color: #800080;">$favdir</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;$env:userprofile\Favorites\Favorites Bar&quot;</span>
&nbsp;
<span style="color: #000000;">&#125;</span>
&nbsp;
<span style="color: #800080;">$fav</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;[InternetShortcut]
<span style="color: #008080; font-weight: bold;">`U</span>RL=$url&quot;</span>
<span style="color: #800080;">$fav</span> <span style="color: pink;">|</span> <span style="color: #008080; font-weight: bold;">Out<span style="color: #FF0000;">-File</span></span> <span style="color: #800000;">&quot;$favdir\Central Administration.url&quot;</span>
<span style="color: #000000;">&#125;</span>
<span style="color: #008000;">#EndRegion</span></pre></td></tr></table></div>

<p>Just some notes before you guys start screaming and yelling at me. This is only adding the IE Favorite to the profile running AutoSPInstaller (your setup account). And I know I may get some missing links in CA unless I run from the start menu, but I like having this anyway.</p>
<p>So again, that&#8217;s in my AutoSPInstallerCustomFunctions.ps1 file. Then I add a reference to it in AutoSPInstallerMain.ps1. By the way, here&#8217;s a snippet of that file, the only part that I&#8217;ve changed:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p703code30'); return false;">View Code</a> POWERSHELL</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p70330"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
</pre></td><td class="code" id="p703code30"><pre class="powershell" style="font-family:monospace;">Try 
<span style="color: #000000;">&#123;</span>
	<span style="color: #008000;"># Some custom functions</span>
	Add<span style="color: pink;">-</span>LowRiskFileTypes
	Import<span style="color: pink;">-</span>509Certificate <span style="color: #008000;"># This loads my root CA cert</span>
	Import<span style="color: pink;">-</span>PfxCertificate <span style="color: #008000;"># This loads the wildcard cert for *.us.myCompany.corp</span>
&nbsp;
	<span style="color: #008000;"># Default / orginal functions</span>
	PrepForInstall
	Run<span style="color: pink;">-</span>Install
	Setup<span style="color: pink;">-</span>Farm
	Setup<span style="color: pink;">-</span>Services
	Finalize<span style="color: pink;">-</span>Install 
&nbsp;
	<span style="color: #008000;"># Some more custom functions	</span>
	Create<span style="color: pink;">-</span>CAFavorite <span style="color: #008000;"># This creates an IE Favorite for Central Admin</span>
<span style="color: #000000;">&#125;</span></pre></td></tr></table></div>

<p>Happy SharePoint-ing!</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?a=xYTsurqpQDg:ipL-7mbCAKg:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?a=xYTsurqpQDg:ipL-7mbCAKg:BGfa-dtoa6M"><img src="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?i=xYTsurqpQDg:ipL-7mbCAKg:BGfa-dtoa6M" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?a=xYTsurqpQDg:ipL-7mbCAKg:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?i=xYTsurqpQDg:ipL-7mbCAKg:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/WahidsSharepointBlog/~4/xYTsurqpQDg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.wahidsaleemi.com/2012/01/autospinstaller-extending-and-customizing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<series:name><![CDATA[AutoSPInstaller]]></series:name>
	<feedburner:origLink>http://www.wahidsaleemi.com/2012/01/autospinstaller-extending-and-customizing/</feedburner:origLink></item>
		<item>
		<title>AutoSPInstaller: Execution</title>
		<link>http://feedproxy.google.com/~r/WahidsSharepointBlog/~3/q74EO6-9npA/</link>
		<comments>http://www.wahidsaleemi.com/2011/11/autospinstaller-execution/#comments</comments>
		<pubDate>Tue, 29 Nov 2011 18:45:09 +0000</pubDate>
		<dc:creator>Wahid Saleemi</dc:creator>
				<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[Automating and Scripting SharePoint Administration]]></category>
		<category><![CDATA[Automation]]></category>
		<category><![CDATA[AutoSPInstaller]]></category>
		<category><![CDATA[Brian Lalancette]]></category>
		<category><![CDATA[CodePlex]]></category>
		<category><![CDATA[config]]></category>
		<category><![CDATA[configuration files]]></category>
		<category><![CDATA[farm account]]></category>
		<category><![CDATA[Office Web Apps]]></category>
		<category><![CDATA[powershell]]></category>
		<category><![CDATA[scripts]]></category>
		<category><![CDATA[sharepoint 2010]]></category>

		<guid isPermaLink="false">http://www.wahidsaleemi.com/?p=628</guid>
		<description><![CDATA[Introduction In the two previous related posts (here and here), I showed you how to setup and configure AutoSPInstaller to automate your SharePoint installation. So now, we get to see the fruits of our labor. In this post, I&#8217;ll share the screenshots based on those configurations. You could use these to see what&#8217;s supposed to [...]]]></description>
			<content:encoded><![CDATA[<p></p><h2>Introduction</h2>
<p>In the two previous related posts (<a href="http://www.wahidsaleemi.com/2011/11/autospinstaller-getting-prepared/">here</a> and <a href="http://www.wahidsaleemi.com/2011/11/autospinstaller-configuration-2/">here</a>), I showed you how to setup and configure AutoSPInstaller to automate your SharePoint installation. So now, we get to see the fruits of our labor.</p>
<p>In this post, I&#8217;ll share the screenshots based on those configurations. You could use these to see what&#8217;s supposed to happen and perhaps adjust your settings so AutoSPInstaller completes. For the most part, AutoSPInstaller has good error handling and will let you know what&#8217;s failed. Many of the errors are simply what you&#8217;d get if you run the PowerShell equivalent of whatever the current process is. Some of these errors are not descriptive or could lead you down the wrong path (for example, &quot;could not contact server&quot; when you just have incorrect credentials).</p>
<h2>In Pictures</h2>
<p>I&#8217;ll have notes following each screenshot:</p>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image26.png" title="image" rel="lightbox[628]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb26 AutoSPInstaller: Execution" src="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image_thumb26.png" width="484" height="242" /></a></p>
<p>Here, you&#8217;ll note AutoSPInstaller has started a transcript/log. Take note of the location (the desktop by default). It&#8217;s also validating your accounts to prevent errors later on. And, its creating your SQL alias if you specified one.</p>
<p>&#160;</p>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image27.png" title="image" rel="lightbox[628]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb27 AutoSPInstaller: Execution" src="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image_thumb27.png" width="484" height="248" /></a></p>
<p>Some more pre-checks here for SQL Server permissions as well as using the correct XML configuration file. I specified disabling services so it does that up front.</p>
<p>&#160;</p>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image28.png" title="image" rel="lightbox[628]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb28 AutoSPInstaller: Execution" src="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image_thumb28.png" width="484" height="305" /></a></p>
<p>This is the prerequisite installer kicking off. Depending on your security policy, you may get a prompt to allow/trust the installer to run. I explained in my previous post how to allow it without a prompt.</p>
<p>&#160;</p>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image29.png" title="image" rel="lightbox[628]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb29 AutoSPInstaller: Execution" src="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image_thumb29.png" width="402" height="364" /></a></p>
<p>After IIS logging is configured, SharePoint installation starts.</p>
<p>&#160;</p>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image30.png" title="image" rel="lightbox[628]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb30 AutoSPInstaller: Execution" src="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image_thumb30.png" width="484" height="241" /></a></p>
<p>Next, Office Web Apps are installed and so are any language packs we specified. There&#8217;s also the TaxonomyPicker.ascx fix, a very annoying event log entry if you don&#8217;t do this. Also note, we&#8217;re adding our Farm account to the local Administrators at this point.</p>
<p>&#160;</p>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image31.png" title="image" rel="lightbox[628]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb31 AutoSPInstaller: Execution" src="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image_thumb31.png" width="484" height="240" /></a></p>
<p>Ignore the &quot;Local farm is not accessible.&quot; warning, it&#8217;s not accessible because it doesn&#8217;t exist; AutoSPInstaller continues joining the farm. Here, we&#8217;re creating the Central Admin site as well. I enabled SSL on it so it will assign a certificate.</p>
<p>&#160;</p>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image32.png" title="image" rel="lightbox[628]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb32 AutoSPInstaller: Execution" src="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image_thumb32.png" width="484" height="240" /></a></p>
<p>The certificate handling is excellent. Note that it didn&#8217;t find one, so its creating a new self-signed certificate. We also configure ULS at this point.</p>
<p>&#160;</p>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image33.png" title="image" rel="lightbox[628]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb33 AutoSPInstaller: Execution" src="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image_thumb33.png" width="484" height="239" /></a></p>
<p>This is where we start to configure language packs. Basically, we&#8217;re running PSCONFIG.</p>
<p>&#160;</p>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image34.png" title="image" rel="lightbox[628]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb34 AutoSPInstaller: Execution" src="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image_thumb34.png" width="484" height="243" /></a></p>
<p>Things don&#8217;t always go perfectly, but AutoSPInstaller has some good error handling. Here, the upgrade for Language Packs didn&#8217;t work using PowerShell cmdlets (known issue) so we start the GUI. If you do not include Service Pack 1 for any language packs, you can avoid this and have a truly unattended install. Just install the Service Pack later manually and re-run PSCONFIGUI</p>
<p>&#160;</p>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image35.png" title="image" rel="lightbox[628]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb35 AutoSPInstaller: Execution" src="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image_thumb35.png" width="484" height="248" /></a></p>
<p>So, AutoSPInstaller launches the GUI (PSCONFIGUI). Just hit next. It will ask if its OK to stop some services, press Yes and the install will continue in GUI. After it completes, you&#8217;ll have to hit Finish.</p>
<p>&#160;</p>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image36.png" title="image" rel="lightbox[628]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb36 AutoSPInstaller: Execution" src="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image_thumb36.png" width="484" height="244" /></a></p>
<p>We simply add managed accounts here and start creating the Web Applications.</p>
<p>&#160;</p>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image37.png" title="image" rel="lightbox[628]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb37 AutoSPInstaller: Execution" src="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image_thumb37.png" width="484" height="244" /></a></p>
<p>From the above screenshot, you can see that AutoSPInstaller is doing some cool things while creating our Web Apps. It includes setting up managed paths, SSL certificate assignment, setting locale and time format, applying the object cache accounts, etc. Doing all of this manually or even with PowerShell, would be quite tedious.</p>
<p>&#160;</p>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image38.png" title="image" rel="lightbox[628]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb38 AutoSPInstaller: Execution" src="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image_thumb38.png" width="484" height="242" /></a></p>
<p>After the Web Apps are created, including the MySite host, we start provisioning some Service Applications.</p>
<p>&#160;</p>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image39.png" title="image" rel="lightbox[628]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb39 AutoSPInstaller: Execution" src="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image_thumb39.png" width="484" height="242" /></a></p>
<p>More Service Applications, including properly provisioning the User Profile Service. This part could take some time, just wait. The most common cause for this taking too long is that the server doesn&#8217;t have sufficient resources (at least 2 vCPU and 8GB of RAM).</p>
<p>&#160;</p>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image40.png" title="image" rel="lightbox[628]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb40 AutoSPInstaller: Execution" src="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image_thumb40.png" width="484" height="241" /></a></p>
<p>Even more Service Applications here as well as Usage Logging.</p>
<p>&#160;</p>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image41.png" title="image" rel="lightbox[628]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb41 AutoSPInstaller: Execution" src="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image_thumb41.png" width="484" height="249" /></a></p>
<p>Continuing Usage Logging configuration and starting Web Analytics.</p>
<p>&#160;</p>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image42.png" title="image" rel="lightbox[628]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb42 AutoSPInstaller: Execution" src="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image_thumb42.png" width="484" height="242" /></a></p>
<p>Creating and configuring Secure Store – doing this manually is really a pain, especially setting up the keys. We&#8217;re also adding our Service Application account to some built-in Windows groups.</p>
<p>&#160;</p>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image43.png" title="image" rel="lightbox[628]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb43 AutoSPInstaller: Execution" src="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image_thumb43.png" width="484" height="244" /></a></p>
<p>Provisioning Enterprise Search and all of its components plus configuring the actual search topology. This could also take some time, be patient.</p>
<p>&#160;</p>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image44.png" title="image" rel="lightbox[628]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb44 AutoSPInstaller: Execution" src="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image_thumb44.png" width="484" height="242" /></a></p>
<p>A bunch more Service Applications including BDC and Excel Services. Some of the Excel Services configuration is done for us, such as setting the unattended account credentials and adding your &quot;Portal&quot; Web Application as a trusted source.</p>
<p>&#160;</p>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image45.png" title="image" rel="lightbox[628]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb45 AutoSPInstaller: Execution" src="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image_thumb45.png" width="484" height="246" /></a></p>
<p>More Enterprise Service Applications being provisioned such as Access and Visio services.</p>
<p>&#160;</p>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image46.png" title="image" rel="lightbox[628]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb46 AutoSPInstaller: Execution" src="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image_thumb46.png" width="484" height="245" /></a></p>
<p>More Service Applications, including PerformancePoint, Word Automation and PowerPoint services. Note that the script also gives the Farm account the proper permissions to the PerformancePoint database, which isn&#8217;t done by default when manually provisioning via PowerShell.</p>
<p>&#160;</p>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image47.png" title="image" rel="lightbox[628]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb47 AutoSPInstaller: Execution" src="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image_thumb47.png" width="484" height="244" /></a></p>
<p>Here you can see that Outgoing Email is configured and we start configuring Adobe PDF iFilter. Since the installer wasn&#8217;t present, AutoSPInstaller will download it for me.</p>
<p>&#160;</p>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image48.png" title="image" rel="lightbox[628]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb48 AutoSPInstaller: Execution" src="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image_thumb48.png" width="484" height="244" /></a></p>
<p>Still transferring. The script uses BITS protocol for the transfer.</p>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image49.png" title="image" rel="lightbox[628]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb49 AutoSPInstaller: Execution" src="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image_thumb49.png" width="484" height="245" /></a></p>
<p>All done with the PDF iFilter, several configuration steps are completed, including renaming the icon and modifying SharePoint&#8217;s DOCICON.XML file.</p>
<p>&#160;</p>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image50.png" title="image" rel="lightbox[628]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb50 AutoSPInstaller: Execution" src="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image_thumb50.png" width="484" height="281" /></a></p>
<p>After an IIS restart, it&#8217;s time to install Forefront Protection for SharePoint. Notice the STSADM command prompt window. It&#8217;ll auto-close.</p>
<p>&#160;</p>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image51.png" title="image" rel="lightbox[628]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb51 AutoSPInstaller: Execution" src="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image_thumb51.png" width="484" height="241" /></a></p>
<p>Some final things are executed, such as running the Health Analyzer jobs and launching Central Admin before being complete. </p>
<p>After you press a key, the log file will also automatically open in WordPad (by default) and the PowerShell window will close. Review the log for any errors or warnings.</p>
<p>We&#8217;re done. Let&#8217;s take a look at our databases:</p>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image52.png" title="image" rel="lightbox[628]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb52 AutoSPInstaller: Execution" src="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image_thumb52.png" width="241" height="364" /></a></p>
<p>Neat! As you can see, my databases are prefixed with SOPS, like I wanted and the default underscore character was used as a separator. Also notice, there are no GUIDs and everything has a nice descriptive name. I enabled pretty much every service and installed everything on one server for demonstration purposes. I&#8217;d never advise to do on a production server. Choose your topology appropriately depending on your needs (for example, use dedicated servers for Search and separate servers for Web Servers (WFEs)).</p>
<h2>Conclusion</h2>
<p>Sometimes, you&#8217;ll get errors and the script will abort. This happened to me because I didn&#8217;t create a MySite, but tried to start the User Profile Service. The script needs both. All you need to do is adjust your settings, in my case I set UPS to false in the XML file and then re-run the script. It will skip the parts that are already done. </p>
<p>And as a reminder, although I don&#8217;t mind answering questions or responding to comments on my blog, if you have specific questions related to AutoSPInstaller, its best to use the discussion boards there: <a href="http://autospinstaller.codeplex.com/discussions">http://autospinstaller.codeplex.com/discussions</a></p>
<p>I do respond there and so do others, so your chances of getting an answer, more quickly, are much greater.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?a=q74EO6-9npA:0AEI0C8kSno:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?a=q74EO6-9npA:0AEI0C8kSno:BGfa-dtoa6M"><img src="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?i=q74EO6-9npA:0AEI0C8kSno:BGfa-dtoa6M" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?a=q74EO6-9npA:0AEI0C8kSno:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?i=q74EO6-9npA:0AEI0C8kSno:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/WahidsSharepointBlog/~4/q74EO6-9npA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.wahidsaleemi.com/2011/11/autospinstaller-execution/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<series:name><![CDATA[AutoSPInstaller]]></series:name>
	<feedburner:origLink>http://www.wahidsaleemi.com/2011/11/autospinstaller-execution/</feedburner:origLink></item>
		<item><title>San Fernando Valley group to celebrate its one year anniversary with free drinks [Digg]</title><link>http://feedproxy.google.com/~r/WahidsSharepointBlog/~3/Bt49vVSlCXM/san_fernando_valley_group_to_celebrate_its_one_year_anniversary_with_free_drinks</link><dc:creator>Digg</dc:creator><pubDate>Mon, 28 Nov 2011 12:10:42 PST</pubDate><guid isPermaLink="false">http://digg.com/news/technology/san_fernando_valley_group_to_celebrate_its_one_year_anniversary_with_free_drinks</guid><description>North Hollywood,California,United States of America: Latest breaking news - The San Fernando Valley SharePoint User Group is hosting a Holiday Party with free appetizers and drinks following its December meeting. See the site for more details at http://sfvspug.org. You can’t miss out this news San Fernando Valley group to celebrate its one year anniversary with free drinks to get latest information about Information industry.The news will also gives detailed information about San Fernando Valley SharePoint User Group.&lt;img src="http://feeds.feedburner.com/~r/WahidsSharepointBlog/~4/Bt49vVSlCXM" height="1" width="1"/&gt;</description><digg:diggCount xmlns:digg="http://digg.com/docs/diggrss/">
			1
		</digg:diggCount><digg:category xmlns:digg="http://digg.com/docs/diggrss/">
			Technology
		</digg:category><digg:commentCount xmlns:digg="http://digg.com/docs/diggrss/">
			0
		</digg:commentCount><digg:userActivity xmlns:digg="http://digg.com/docs/diggrss/">
			digg
		</digg:userActivity><digg:userActivity xmlns:digg="http://digg.com/docs/diggrss/">
			submission
		</digg:userActivity><feedburner:origLink>http://digg.com/news/technology/san_fernando_valley_group_to_celebrate_its_one_year_anniversary_with_free_drinks?utm_campaign=Feed%3A+http%3A%2F%2Fservices.digg.com%2F2.0%2Fuser.getActivity%3Ftype%3Drss%26activity_type%3Ddigg%26username%3Dcraveness&amp;utm_medium=feed&amp;utm_source=diggapi</feedburner:origLink></item><item>
		<title>AutoSPInstaller: Configuration</title>
		<link>http://feedproxy.google.com/~r/WahidsSharepointBlog/~3/kdFo3_3Ijek/</link>
		<comments>http://www.wahidsaleemi.com/2011/11/autospinstaller-configuration-2/#comments</comments>
		<pubDate>Fri, 18 Nov 2011 23:21:32 +0000</pubDate>
		<dc:creator>Wahid Saleemi</dc:creator>
				<category><![CDATA[CodePlex]]></category>
		<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[Automating and Scripting SharePoint Administration]]></category>
		<category><![CDATA[Automation]]></category>
		<category><![CDATA[AutoSPInstaller]]></category>
		<category><![CDATA[Brian Lalancette]]></category>
		<category><![CDATA[config]]></category>
		<category><![CDATA[configuration files]]></category>
		<category><![CDATA[farm account]]></category>
		<category><![CDATA[Office Web Apps]]></category>
		<category><![CDATA[powershell]]></category>
		<category><![CDATA[scripts]]></category>
		<category><![CDATA[sharepoint 2010]]></category>
		<category><![CDATA[Spence Harbar]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://www.wahidsaleemi.com/?p=630</guid>
		<description><![CDATA[This is a continuation of my previous post titled &#8220;AutoSPInstaller: Getting Prepared&#8221; In my previous post, I showed you how to stage all the software. Do this once, you&#8217;re set for life! OK, maybe not for life, but at least for any SharePoint server installs you&#8217;ll need to do now or later. Next, we need [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>This is a continuation of my previous post titled <a href="http://www.wahidsaleemi.com/2011/11/autospinstaller-getting-prepared/">&#8220;AutoSPInstaller: Getting Prepared&#8221;</a></p>
<p>In my previous post, I showed you how to stage all the software. Do this once, you&#8217;re set for life! OK, maybe not for life, but at least for any SharePoint server installs you&#8217;ll need to do now or later. Next, we need to configure several files.</p>
<h2>Configuration Files</h2>
<p>Here&#8217;s the list of files we need to configure:</p>
<ul>
<li><strong>answerfile-ForeFront.xml</strong> – Optional. This is the configuration file if you&#8217;re installing ForeFront Protection 2010 for SharePoint. </li>
<li><strong>config.xml</strong> – Required. This is the settings for the SharePoint installer. </li>
<li><strong>config-OWA.xml</strong> – Optional. This file is used to configure Office Web Apps. </li>
<li><strong>AutoSPInstallerInput.xml</strong> – Required. This is the file where we&#8217;ll configure all the options for AutoSPInstaller, the actual configuration of SharePoint. </li>
</ul>
<p>The main file we need to configure (AutoSPInstallerInput.xml) is also the most complex, so let&#8217;s save it for later. Use your favorite XML editor, avoid Notepad or WordPad, they make things harder. Personally, I like Notepad++ which can be downloaded <a href="http://notepad-plus-plus.org/download/" target="_blank">here</a>.</p>
<h2>ForeFront</h2>
<p>AutoSPInstaller will call &#8220;answerfile-ForeFront.xml,&#8221; which replaces the &#8220;answerfile.xml&#8221; that you&#8217;ll find in the ForeFront folder. Most of the options are self-explanatory so I just want to point out one section:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p630code48'); return false;">View Code</a> XML</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p63048"><td class="line_numbers"><pre>1
2
3
4
</pre></td><td class="code" id="p630code48"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SharePointInformation<span style="color: #000000; font-weight: bold;">&gt;</span></span></span> 
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;UserName<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>COCOLYNN\svc.spFarm<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;UserName</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span> 
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Password<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>pass@word1<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Password</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span> 
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/SharePointInformation<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></td></tr></table></div>

<p>Specify a user account and password for database access. This account should be entered using the <em>Domain</em>&#92;<em>Account</em> format when the server is part of a domain. This account needs a lot of privileges, it must:</p>
<ul>
<li>Be a member of the Local Administrators group on the SharePoint server(s). </li>
<li>have SharePoint Farm Administrators privileges. </li>
<li>Be a member of the SQL sysadmin role on the database server. </li>
</ul>
<p>These fields must be populated with valid credentials or unattended installations will fail. I&#8217;m using the Farm account. Why? Because it requires <a href="http://technet.microsoft.com/en-us/library/cc678863.aspx" target="_blank">similar permissions</a>. The Farm account needs to be a local administrator at least for provisioning User Profile Service. Even after initially installing UPS, it needs that right to be able to restart (re-provision) after backups. It needs to be a Farm Administrator (of course) and although it doesn&#8217;t require sysadmin role on the database server, it does require dbcreator, securityadmin and dbo on all the databases. Sysadmin role is not a far stretch from that.</p>
<p>In the end, I&#8217;d rather give my Farm account a bit more permissions to run ForeFront than to have another account with very high privileges. Now, I just need to secure/audit this one account.</p>
<p>For detailed information on all the options in this configuration file, check out the <a href="http://technet.microsoft.com/en-us/library/dd639434.aspx" target="_blank">TechNet article here</a>.</p>
<h2>SharePoint Installer</h2>
<p>The &#8220;config.xml&#8221; is the same as the one found on the SharePoint DVD or ISO file. It&#8217;s where we configure SharePoint installer options. Let&#8217;s look at some of the options.</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p630code49'); return false;">View Code</a> XML</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p63049"><td class="line_numbers"><pre>1
2
</pre></td><td class="code" id="p630code49"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;INSTALLLOCATION</span> <span style="color: #000066;">Value</span>=<span style="color: #ff0000;">&quot;%PROGRAMFILES%\Microsoft Office Servers\&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span> 
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;PIDKEY</span> <span style="color: #000066;">Value</span>=<span style="color: #ff0000;">&quot;&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span></pre></td></tr></table></div>

<p>The INSTALLLOCATION tells SharePoint where to install the binaries (bits). For example, if you wanted to install to a non-system drive (e.g., E:\), this is where you&#8217;d change it. I recommend leaving the default.</p>
<p>The PIDKEY Value is your key for SharePoint, so you&#8217;ll enter 25-character license key here. <strong>This is required!</strong></p>
<p>Don&#8217;t worry about the terminology in this file, such as &#8220;spswfe&#8221; or SERVERROLE Application. These will not determine your server roles and don&#8217;t need to be changed. To find out more about what can be configured here, check out the <a href="http://technet.microsoft.com/en-us/library/cc261668.aspx#QuickRef" target="_blank">TechNet article here</a>.</p>
<p>For my install, I&#8217;ve kept all the defaults and just added my 25-character license key for &#8220;PIDKEY Value&#8221;.</p>
<h2>Office Web Apps</h2>
<p>The &#8220;config-OWA.xml&#8221; contains the configuration options for Office Web Apps. It replaces the &#8220;config.xml&#8221; files in the OfficeWebApps folder (under the Setup sub-folder). This is similar to the file above. You must edit this with your license key, just like config.xml. So, I&#8217;ve updated this file with my 25-character license key for PIDKEY Value and kept all the other defaults.</p>
<h2>AutoSPInstaller Configuration</h2>
<p>Recently, the configuration file for AutoSPInstaller has matured and is now heavily commented. So, I won&#8217;t go through all of the options but I&#8217;ll highlight a few of them here. </p>
<p>Before we get to that though, let me explain how this works. When you&#8217;re ready, you&#8217;ll launch AutoSPInstaller using the <strong>&#8220;AutoSPInstallerLaunch.bat&#8221;</strong> batch file. The batch file will check for an XML file with the following names, in order:</p>
<ul>
<li>AutoSPInstallerInput-COMPUTERNAME.xml </li>
<li>AutoSPInstallerInput-DOMAIN.xml </li>
<li>AutoSPInstallerInput.xml </li>
</ul>
<p>My preference is to use one configuration file for each server in my farm. You can also just use one file but I&#8217;ve seen people have problems with this method. So, I&#8217;ll make a copy of the file and name it AutoSPInstallerInput-SHARECLOUD.xml</p>
<p>Note: You will not be passing the xml file as a parameter to AutoSPInstaller so you must name it according to one of the options listed above.</p>
<p>So, lets start.</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p630code50'); return false;">View Code</a> XML</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p63050"><td class="line_numbers"><pre>1
</pre></td><td class="code" id="p630code50"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Configuration</span> <span style="color: #000066;">Environment</span>=<span style="color: #ff0000;">&quot;Prod&quot;</span> <span style="color: #000066;">Version</span>=<span style="color: #ff0000;">&quot;2.5.7&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span></pre></td></tr></table></div>

<p>Change this to your environment. I often have Dev, Test, and Prod environments so I like to specify one of those. It&#8217;s just here for your personal reference. I&#8217;ll change mine to Prod and leave the version alone. The Version is for the version of AutoSPInstaller you&#8217;re using. You must use the XML configuration file for the version of AutoSPInstaller being used, don&#8217;t mix and match.</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p630code51'); return false;">View Code</a> XML</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p63051"><td class="line_numbers"><pre>1
</pre></td><td class="code" id="p630code51"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;OfflineInstall<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>true<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/OfflineInstall<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></td></tr></table></div>

<p>In my first post, I downloaded the prerequisite files, so I&#8217;m going to set this to true.</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p630code52'); return false;">View Code</a> XML</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p63052"><td class="line_numbers"><pre>1
</pre></td><td class="code" id="p630code52"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Disable<span style="color: #000000; font-weight: bold;">&gt;</span></span></span> {...} <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Disable<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></td></tr></table></div>

<p>I&#8217;m going to set all of these to true. Although disabling LoopbackCheck isn&#8217;t exactly the proper way, adding BackConnectionHostNames is too much work for what I&#8217;m doing here, trying to automate. See <a href="http://support.microsoft.com/kb/896861" target="_blank">this article</a> for more information.</p>
<p>The same reasoning applies to CRL Checking and IE Enhanced Security. For me, these do more harm than good but set the options according to your preference.</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p630code53'); return false;">View Code</a> XML</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p63053"><td class="line_numbers"><pre>1
</pre></td><td class="code" id="p630code53"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Account</span> <span style="color: #000066;">AddToLocalAdminsDuringSetup</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000066;">LeaveInLocalAdmins</span>=<span style="color: #ff0000;">&quot;true&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span></pre></td></tr></table></div>

<p>The principle of least privilege prescribes that accounts should not be given more privileges than necessary. So, why am I setting LeaveInLocalAdmins to true? Two reasons. For me, its too much of a pain to add the Farm account back in every time I do a backup or troubleshoot UPS. Second, and more importantly in this case, I&#8217;m using the Farm account for ForeFront which requires local administrator rights.</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p630code54'); return false;">View Code</a> XML</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p63054"><td class="line_numbers"><pre>1
2
3
4
</pre></td><td class="code" id="p630code54"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;DBServer<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Alias_SPSQL<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/DBServer<span style="color: #000000; font-weight: bold;">&gt;</span></span></span> 
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;DBAlias</span> <span style="color: #000066;">Create</span>=<span style="color: #ff0000;">&quot;true&quot;</span> </span>
<span style="color: #009900;">         <span style="color: #000066;">DBInstance</span>=<span style="color: #ff0000;">&quot;SQL2008R2&quot;</span> </span>
<span style="color: #009900;">         <span style="color: #000066;">DBPort</span>=<span style="color: #ff0000;">&quot;&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span></pre></td></tr></table></div>

<p>OK, so I do want to create a SQL alias because I always do. I&#8217;ve written about this before, <a href="http://www.wahidsaleemi.com/2010/12/working-with-sql-aliases-2/" target="_blank">here</a> and <a href="http://www.wahidsaleemi.com/2011/09/a-follow-up-note-on-sql-aliases/" target="_blank">here</a>. Basically, there are times when you NEED an alias and other times when you don&#8217;t. Instead of trying to remember when, I just create one and use a naming convention that tells me its an alias. That way, the next guy won&#8217;t be looking for a server name &#8220;SPSQL&#8221; somewhere on the network.</p>
<p>For DBInstance, you&#8217;ll either put the SQL Server name (as I have) when you&#8217;re using the default instance, or put the SERVERNAME\INSTANCE when you&#8217;re using a named instance or a cluster. I left DBPort blank so that the default port of 1433 will be assigned.</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p630code55'); return false;">View Code</a> XML</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p63055"><td class="line_numbers"><pre>1
</pre></td><td class="code" id="p630code55"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;DBPrefix<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>SOPS<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/DBPrefix<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></td></tr></table></div>

<p>Just a note on DBPrefix; by default the XML file has “localhost” which will be changed to the computer name. You’ll probably want to change this. Set it to blank for no prefix. You don’t need to put a separator value here, it will append an underscore ( _ ) automatically. If you want to change that separator value, see <a href="http://autospinstaller.codeplex.com/discussions/242127">this posting</a> for a tip.</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p630code56'); return false;">View Code</a> XML</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p63056"><td class="line_numbers"><pre>1
</pre></td><td class="code" id="p630code56"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ClaimsToWindowsTokenService</span> <span style="color: #000066;">Start</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span></pre></td></tr></table></div>

<p>The Claims To Windows Token Service (C2WTS) must be started locally on any server where you have a service (such as Excel Services) that will use it. AutoSPInstaller won&#8217;t check this for you, so keep that in mind. In my case, I&#8217;ll be starting Excel Services on my Web Server (and perhaps Application Server) so I&#8217;m setting it to true.</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p630code57'); return false;">View Code</a> XML</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p63057"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
</pre></td><td class="code" id="p630code57"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ManagedAccounts<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>   
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ManagedAccount</span> <span style="color: #000066;">CommonName</span>=<span style="color: #ff0000;">&quot;spservice&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;username<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>COCOLYNN\svc.spapps<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/username<span style="color: #000000; font-weight: bold;">&gt;</span></span></span> 
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Password<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>pass@word1<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Password<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/ManagedAccount<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ManagedAccount</span> <span style="color: #000066;">CommonName</span>=<span style="color: #ff0000;">&quot;portalapppool&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;username<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>COCOLYNN\svc.spapppool<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/username<span style="color: #000000; font-weight: bold;">&gt;</span></span></span> 
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Password<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>pass@word1<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Password<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/ManagedAccount<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ManagedAccount</span> <span style="color: #000066;">CommonName</span>=<span style="color: #ff0000;">&quot;mysiteapppool&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;username<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>COCOLYNN\svc.spmypool<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/username<span style="color: #000000; font-weight: bold;">&gt;</span></span></span> 
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Password<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>pass@word1<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Password<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/ManagedAccount<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ManagedAccount</span> <span style="color: #000066;">CommonName</span>=<span style="color: #ff0000;">&quot;searchservice&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;username<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>COCOLYNN\svc.spsearch<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/username<span style="color: #000000; font-weight: bold;">&gt;</span></span></span> 
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Password<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>pass@word1<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Password<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/ManagedAccount<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/ManagedAccounts<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></td></tr></table></div>

<p>The &#8220;CommonName&#8221; cannot be changed. AutoSPInstaller uses the names to reference these accounts. I recommend filling in the passwords, you could leave them blank and be prompted for them later but that defeats the automation aspect. I’d rather find another way to secure the configuration file, such as zipping them up with a password or use encryption software.</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p630code58'); return false;">View Code</a> XML</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p63058"><td class="line_numbers"><pre>1
</pre></td><td class="code" id="p630code58"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;WebApplications</span> <span style="color: #000066;">AddURLsToHOSTS</span>=<span style="color: #ff0000;">&quot;true&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span></pre></td></tr></table></div>

<p>I want my URLs added to my servers hosts file. In most of my configurations, I&#8217;m using a load balancer and I want to avoid directing SharePoint services through it, plus I need to be sure when I&#8217;m on the server that it&#8217;s using itself. This is especially useful for the crawler (my crawl server is always a web server as well).</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p630code59'); return false;">View Code</a> XML</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p63059"><td class="line_numbers"><pre>1
</pre></td><td class="code" id="p630code59"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;LogDiskSpaceUsageGB<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>20<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/LogDiskSpaceUsageGB<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></td></tr></table></div>

<p>By default, this parameter is blank which means unlimited. I’m wary of setting anything to unlimited. Since I’m not changing my log location (to something other than the system drive), I certainly need a limit here. Without one, I risk running out of disk space, potentially causing my machine not to boot. </p>
<p></p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p630code60'); return false;">View Code</a> XML</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p63060"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
</pre></td><td class="code" id="p630code60"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;WebApplication</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;Portal&quot;</span></span>
<span style="color: #009900;">		<span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;Collaboration&quot;</span></span>
<span style="color: #009900;">		<span style="color: #000066;">applicationPool</span>=<span style="color: #ff0000;">&quot;Collab&quot;</span></span>
<span style="color: #009900;">		<span style="color: #000066;">applicationPoolAccount</span>=<span style="color: #ff0000;">&quot;COCOLYNN\svc.spAppPool&quot;</span></span>
<span style="color: #009900;">		<span style="color: #000066;">url</span>=<span style="color: #ff0000;">&quot;https://collab.cocolynn.com&quot;</span></span>
<span style="color: #009900;">		<span style="color: #000066;">port</span>=<span style="color: #ff0000;">&quot;443&quot;</span></span>
<span style="color: #009900;">		<span style="color: #000066;">AddURLToLocalIntranetZone</span>=<span style="color: #ff0000;">&quot;true&quot;</span></span>
<span style="color: #009900;">		<span style="color: #000066;">databaseName</span>=<span style="color: #ff0000;">&quot;Collab_Content&quot;</span></span>
<span style="color: #009900;">		<span style="color: #000066;">useClaims</span>=<span style="color: #ff0000;">&quot;false&quot;</span></span>
<span style="color: #009900;">		<span style="color: #000066;">useBasicAuthentication</span>=<span style="color: #ff0000;">&quot;false&quot;</span></span>
<span style="color: #009900;">		<span style="color: #000066;">useOnlineWebPartCatalog</span>=<span style="color: #ff0000;">&quot;false&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span></pre></td></tr></table></div>

<p>AutoSPInstallerInput.xml is very well commented for this section so I’ll just reiterate some points. First, don’t change the type. In this case, consider the type to mean “first web app.” It doesn’t have to be a portal, in my case it’s just going to be a team site. However, since it is the “first web app,” AutoSPInstaller will take some “nice to have” actions for you. For example, it will add this web app to the Excel Services trusted file location and as a “Portal Site Collection.” If you don’t need it, either comment it out (this section) or just remember to go back in later and delete the web app; that’s the easiest way.</p>
<p>In my case, I do want this as sort of a “root” site and I want it to be SSL-enabled. So I’ve updated the URL and port. The script will try to find the correct certificate and assign it in IIS. <em>It can also create self-signed certificates if no match is found!</em> However, you should check it afterwards and correct it if needed. I believe a limitation in IIS/Certificate PowerShell cmdlets make it impossible to specify a certificate name to assign.</p>
<p>I’m not using Claims. Here’s a tip, if you don’t NEED Claims, don’t use it. If you don’t know if you need it, you don’t. You can always convert to Claims later, but you can’t convert back (not supported).</p>
<p>I will use the same settings for URL, name, etc. in the next section for Site Collection (not shown). That section is also where you specify the template and I’ll change it from the default of SPSPORTAL#0 (Collaboration Portal) to STS#0 (Team Site). For a nice post on templates, including a list of what’s what, check out <a href="http://blog.randomdust.com/index.php/2011/06/sharepoint-2010-web-templates/" target="_blank">this blog post</a>.</p>
<p>The same advice applies to the MySite section. Don’t change the type and in this case, also don’t change the Template for the Site Collection.</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p630code61'); return false;">View Code</a> XML</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p63061"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
</pre></td><td class="code" id="p630code61"><pre class="xml" style="font-family:monospace;"> <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;UserProfileServiceApp</span> <span style="color: #000066;">Provision</span>=<span style="color: #ff0000;">&quot;true&quot;</span></span>
<span style="color: #009900;">			<span style="color: #000066;">Name</span>=<span style="color: #ff0000;">&quot;User Profile Service Application&quot;</span></span>
<span style="color: #009900;">			<span style="color: #000066;">ProxyName</span>=<span style="color: #ff0000;">&quot;User Profile Service Application&quot;</span></span>
<span style="color: #009900;">			<span style="color: #000066;">EnableNetBIOSDomainNames</span>=<span style="color: #ff0000;">&quot;false&quot;</span></span>
<span style="color: #009900;">			<span style="color: #000066;">StartProfileSync</span>=<span style="color: #ff0000;">&quot;true&quot;</span></span>
<span style="color: #009900;">			<span style="color: #000066;">CreateDefaultSyncConnection</span>=<span style="color: #ff0000;">&quot;false&quot;</span></span>
<span style="color: #009900;">			<span style="color: #000066;">SyncConnectionAccount</span>=<span style="color: #ff0000;">&quot;DOMAIN\UPSync&quot;</span></span>
<span style="color: #009900;">			<span style="color: #000066;">SyncConnectionAccountPassword</span>=<span style="color: #ff0000;">&quot;&quot;</span> <span style="color: #000000; font-weight: bold;">&gt;</span></span></pre></td></tr></table></div>

<p>I’m going to provision the User Profile Service (UPS). If you do want to provision this, make sure you’ve created your My Site Host earlier. If you don’t, the script will error out. I’ve left the defaults of starting UPS Sync and not creating default sync connections. I recommend not automating the sync connections because its far from perfect and unsupported:</p>
<p><strong><em>Please note that these cmdlets are only intended for use within SharePoint Online environments by SharePoint Online engineers. Their use in on premises deployments is NOT supported.</em></strong></p>
<p>That’s taken from Spence Harbar’s (<a href="http://twitter.com/#!/harbars">@harbars</a>) <a href="http://harbar.net/archive/2011/07/12/332.aspx" target="_blank">post</a> on the topic. </p>
<p></p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p630code62'); return false;">View Code</a> XML</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p63062"><td class="line_numbers"><pre>1
2
3
</pre></td><td class="code" id="p630code62"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;CrawlServers<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Server</span> <span style="color: #000066;">Name</span>=<span style="color: #ff0000;">&quot;localhost&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/CrawlServers<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></td></tr></table></div>

<p>I’m going to make this server a Crawl and Query server as well. I can always change the topology later. Remember, anywhere you have “localhost,” it will be changed automatically to the local server name.</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p630code63'); return false;">View Code</a> XML</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p63063"><td class="line_numbers"><pre>1
</pre></td><td class="code" id="p630code63"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;OfficeWebApps</span> <span style="color: #000066;">Install</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000066;">ConfigFile</span>=<span style="color: #ff0000;">&quot;config-OWA.xml&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span></pre></td></tr></table></div>

<p></p>
<p>In the OfficeWebApps section, I’m setting Install to true and will also provision all of the Office Web Apps to true as well, EXCEPT Excel. I’ve already created an Excel Service app, you don’t need two unless you just really want two. For this and any other service, follow the <a href="http://technet.microsoft.com/en-us/library/ff758645.aspx" target="_blank">capacity planning guidance</a> available on TechNet.</p>
<p>I’ve skipped over a lot of settings because I believe they need no further explanation. Here&#8217;s a copy of the AutoSPInstallerInput configuration file I&#8217;ve configured, with the comments removed for easier readability. <strong><em>Click the arrow to expand.</strong></em></p>

<div class="wp_codebox_msgheader wp_codebox_hide"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p630code64'); return false;">View Code</a> XML</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p63064"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
</pre></td><td class="code" id="p630code64"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;?xml</span> <span style="color: #000066;">version</span>=<span style="color: #ff0000;">&quot;1.0&quot;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Configuration</span> <span style="color: #000066;">Environment</span>=<span style="color: #ff0000;">&quot;Prod&quot;</span> <span style="color: #000066;">Version</span>=<span style="color: #ff0000;">&quot;2.5.7&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Install<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ConfigFile<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>config.xml<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/ConfigFile<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;OfflineInstall<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>true<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/OfflineInstall<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Disable<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;LoopbackCheck<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>true<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/LoopbackCheck<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;UnusedServices<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>true<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/UnusedServices<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;IEEnhancedSecurity<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>true<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/IEEnhancedSecurity<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;CertificateRevocationListCheck<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>true<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/CertificateRevocationListCheck<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Disable<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Install<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Farm<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Passphrase<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>pass@word1<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Passphrase<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Account</span> <span style="color: #000066;">AddToLocalAdminsDuringSetup</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000066;">LeaveInLocalAdmins</span>=<span style="color: #ff0000;">&quot;true&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Username<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>COCOLYNN\svc.spFarm<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Username<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Password<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>pass@word1<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Password<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Email<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>helpdesk@cocolynn.com<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Email<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Account<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;CentralAdmin</span> <span style="color: #000066;">Provision</span>=<span style="color: #ff0000;">&quot;true&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Database<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>AdminContentDB<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Database<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Port<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>7777<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Port<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;UseSSL<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>true<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/UseSSL<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/CentralAdmin<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Database<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;DBServer<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Alias_SPSQL<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/DBServer<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;DBAlias</span> <span style="color: #000066;">Create</span>=<span style="color: #ff0000;">&quot;true&quot;</span></span>
<span style="color: #009900;">                     <span style="color: #000066;">DBInstance</span>=<span style="color: #ff0000;">&quot;SQL2008R2&quot;</span></span>
<span style="color: #009900;">                     <span style="color: #000066;">DBPort</span>=<span style="color: #ff0000;">&quot;&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;DBPrefix<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>SOPS<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/DBPrefix<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ConfigDB<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Config<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/ConfigDB<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Database<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Services<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SandboxedCodeService</span> <span style="color: #000066;">Start</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ClaimsToWindowsTokenService</span> <span style="color: #000066;">Start</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SearchQueryAndSiteSettingsService</span> <span style="color: #000066;">Start</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SMTP</span> <span style="color: #000066;">Install</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;OutgoingEmail</span> <span style="color: #000066;">Configure</span>=<span style="color: #ff0000;">&quot;true&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
                <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SMTPServer<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>SHARECLOUD<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/SMTPServer<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
                <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;EmailAddress<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>helpdesk@cocolynn.com<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/EmailAddress<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
                <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ReplyToEmail<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>spadmin@cocolynn.com<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/ReplyToEmail<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/OutgoingEmail<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Services<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ManagedAccounts<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ManagedAccount</span> <span style="color: #000066;">CommonName</span>=<span style="color: #ff0000;">&quot;spservice&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
                <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;username<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>COCOLYNN\svc.spApps<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/username<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
                <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Password<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>pass@word1<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Password<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/ManagedAccount<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ManagedAccount</span> <span style="color: #000066;">CommonName</span>=<span style="color: #ff0000;">&quot;portalapppool&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
                <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;username<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>COCOLYNN\svc.spAppPool<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/username<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
                <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Password<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>pass@word1<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Password<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/ManagedAccount<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ManagedAccount</span> <span style="color: #000066;">CommonName</span>=<span style="color: #ff0000;">&quot;mysiteapppool&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
                <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;username<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>COCOLYNN\svc.spMySitePool<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/username<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
                <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Password<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>pass@word1<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Password<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/ManagedAccount<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ManagedAccount</span> <span style="color: #000066;">CommonName</span>=<span style="color: #ff0000;">&quot;searchservice&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
                <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;username<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>COCOLYNN\svc.spSearch<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/username<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
                <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Password<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>pass@word1<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Password<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/ManagedAccount<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/ManagedAccounts<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ObjectCacheAccounts<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SuperUser<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>COCOLYNN\svc.spCacheUser<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/SuperUser<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SuperReader<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>COCOLYNN\svc.spCacheRead<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/SuperReader<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/ObjectCacheAccounts<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Logging<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;IISLogs</span> <span style="color: #000066;">Compress</span>=<span style="color: #ff0000;">&quot;true&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
                <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Path<span style="color: #000000; font-weight: bold;">&gt;</span></span><span style="color: #000000; font-weight: bold;">&lt;/Path<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/IISLogs<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ULSLogs</span> <span style="color: #000066;">Compress</span>=<span style="color: #ff0000;">&quot;true&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
                <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;LogLocation<span style="color: #000000; font-weight: bold;">&gt;</span></span><span style="color: #000000; font-weight: bold;">&lt;/LogLocation<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
                <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;LogDiskSpaceUsageGB<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>20<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/LogDiskSpaceUsageGB<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
                <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;DaysToKeepLogs<span style="color: #000000; font-weight: bold;">&gt;</span></span><span style="color: #000000; font-weight: bold;">&lt;/DaysToKeepLogs<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
                <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;LogCutInterval<span style="color: #000000; font-weight: bold;">&gt;</span></span><span style="color: #000000; font-weight: bold;">&lt;/LogCutInterval<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/ULSLogs<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;UsageLogs</span> <span style="color: #000066;">Compress</span>=<span style="color: #ff0000;">&quot;true&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
                <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;UsageLogDir<span style="color: #000000; font-weight: bold;">&gt;</span></span><span style="color: #000000; font-weight: bold;">&lt;/UsageLogDir<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
                <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;UsageLogMaxSpaceGB<span style="color: #000000; font-weight: bold;">&gt;</span></span><span style="color: #000000; font-weight: bold;">&lt;/UsageLogMaxSpaceGB<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
                <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;UsageLogCutTime<span style="color: #000000; font-weight: bold;">&gt;</span></span><span style="color: #000000; font-weight: bold;">&lt;/UsageLogCutTime<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/UsageLogs<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Logging<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Farm<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;WebApplications</span> <span style="color: #000066;">AddURLsToHOSTS</span>=<span style="color: #ff0000;">&quot;true&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;WebApplication</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;Portal&quot;</span></span>
<span style="color: #009900;">                        <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;Collaboration&quot;</span></span>
<span style="color: #009900;">                        <span style="color: #000066;">applicationPool</span>=<span style="color: #ff0000;">&quot;Collab&quot;</span></span>
<span style="color: #009900;">                        <span style="color: #000066;">applicationPoolAccount</span>=<span style="color: #ff0000;">&quot;COCOLYNN\svc.spAppPool&quot;</span></span>
<span style="color: #009900;">                        <span style="color: #000066;">url</span>=<span style="color: #ff0000;">&quot;https://collab.cocolynn.com&quot;</span></span>
<span style="color: #009900;">                        <span style="color: #000066;">port</span>=<span style="color: #ff0000;">&quot;443&quot;</span></span>
<span style="color: #009900;">                        <span style="color: #000066;">AddURLToLocalIntranetZone</span>=<span style="color: #ff0000;">&quot;true&quot;</span></span>
<span style="color: #009900;">                        <span style="color: #000066;">databaseName</span>=<span style="color: #ff0000;">&quot;Collab_Content&quot;</span></span>
<span style="color: #009900;">                        <span style="color: #000066;">useClaims</span>=<span style="color: #ff0000;">&quot;false&quot;</span></span>
<span style="color: #009900;">                        <span style="color: #000066;">useBasicAuthentication</span>=<span style="color: #ff0000;">&quot;false&quot;</span></span>
<span style="color: #009900;">                        <span style="color: #000066;">useOnlineWebPartCatalog</span>=<span style="color: #ff0000;">&quot;false&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ManagedPaths<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
                <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ManagedPath</span> <span style="color: #000066;">relativeUrl</span>=<span style="color: #ff0000;">&quot;help&quot;</span> <span style="color: #000066;">explicit</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/ManagedPaths<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SiteCollections<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
                <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SiteCollection</span> <span style="color: #000066;">siteUrl</span>=<span style="color: #ff0000;">&quot;https://collab.cocolynn.com&quot;</span></span>
<span style="color: #009900;">                                <span style="color: #000066;">owner</span>=<span style="color: #ff0000;">&quot;COCOLYNN\svc.spFarm&quot;</span></span>
<span style="color: #009900;">                                <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;Collab&quot;</span></span>
<span style="color: #009900;">                                <span style="color: #000066;">description</span>=<span style="color: #ff0000;">&quot;Collaboration Services&quot;</span></span>
<span style="color: #009900;">                                <span style="color: #000066;">SearchUrl</span>=<span style="color: #ff0000;">&quot;https://collab.cocolynn.com/search&quot;</span></span>
<span style="color: #009900;">                                <span style="color: #000066;">CustomTemplate</span>=<span style="color: #ff0000;">&quot;false&quot;</span></span>
<span style="color: #009900;">                                <span style="color: #000066;">Template</span>=<span style="color: #ff0000;">&quot;STS#0&quot;</span></span>
<span style="color: #009900;">                                <span style="color: #000066;">LCID</span>=<span style="color: #ff0000;">&quot;1033&quot;</span></span>
<span style="color: #009900;">                                <span style="color: #000066;">Locale</span>=<span style="color: #ff0000;">&quot;en-us&quot;</span></span>
<span style="color: #009900;">                                <span style="color: #000066;">Time24</span>=<span style="color: #ff0000;">&quot;false&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
                <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/SiteCollection<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/SiteCollections<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/WebApplication<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;WebApplication</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;MySiteHost&quot;</span></span>
<span style="color: #009900;">                        <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;MySite Host&quot;</span></span>
<span style="color: #009900;">                        <span style="color: #000066;">applicationPool</span>=<span style="color: #ff0000;">&quot;MySites&quot;</span></span>
<span style="color: #009900;">                        <span style="color: #000066;">applicationPoolAccount</span>=<span style="color: #ff0000;">&quot;COCOLYNN\svc.spMySitePool&quot;</span></span>
<span style="color: #009900;">                        <span style="color: #000066;">url</span>=<span style="color: #ff0000;">&quot;http://mysites.cocolynn.com&quot;</span></span>
<span style="color: #009900;">                        <span style="color: #000066;">port</span>=<span style="color: #ff0000;">&quot;80&quot;</span></span>
<span style="color: #009900;">                        <span style="color: #000066;">AddURLToLocalIntranetZone</span>=<span style="color: #ff0000;">&quot;true&quot;</span></span>
<span style="color: #009900;">                        <span style="color: #000066;">databaseName</span>=<span style="color: #ff0000;">&quot;MySites_Content&quot;</span></span>
<span style="color: #009900;">                        <span style="color: #000066;">useClaims</span>=<span style="color: #ff0000;">&quot;false&quot;</span></span>
<span style="color: #009900;">                        <span style="color: #000066;">useBasicAuthentication</span>=<span style="color: #ff0000;">&quot;false&quot;</span></span>
<span style="color: #009900;">                        <span style="color: #000066;">useOnlineWebPartCatalog</span>=<span style="color: #ff0000;">&quot;false&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SiteCollections<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
                <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SiteCollection</span> <span style="color: #000066;">siteUrl</span>=<span style="color: #ff0000;">&quot;http://mysites.cocolynn.com&quot;</span></span>
<span style="color: #009900;">                                <span style="color: #000066;">owner</span>=<span style="color: #ff0000;">&quot;COCOLYNN\svc.spFarm&quot;</span></span>
<span style="color: #009900;">                                <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;My Site Host&quot;</span></span>
<span style="color: #009900;">                                <span style="color: #000066;">description</span>=<span style="color: #ff0000;">&quot;Root site for hosting MySites&quot;</span></span>
<span style="color: #009900;">                                <span style="color: #000066;">SearchUrl</span>=<span style="color: #ff0000;">&quot;https://collab.cocolynn.com/search&quot;</span></span>
<span style="color: #009900;">                                <span style="color: #000066;">CustomTemplate</span>=<span style="color: #ff0000;">&quot;false&quot;</span></span>
<span style="color: #009900;">                                <span style="color: #000066;">Template</span>=<span style="color: #ff0000;">&quot;SPSMSITEHOST#0&quot;</span></span>
<span style="color: #009900;">                                <span style="color: #000066;">LCID</span>=<span style="color: #ff0000;">&quot;1033&quot;</span></span>
<span style="color: #009900;">                                <span style="color: #000066;">Locale</span>=<span style="color: #ff0000;">&quot;en-us&quot;</span></span>
<span style="color: #009900;">                                <span style="color: #000066;">Time24</span>=<span style="color: #ff0000;">&quot;false&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
                <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/SiteCollection<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/SiteCollections<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ManagedPaths<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
                <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ManagedPath</span> <span style="color: #000066;">relativeUrl</span>=<span style="color: #ff0000;">&quot;personal&quot;</span> <span style="color: #000066;">explicit</span>=<span style="color: #ff0000;">&quot;false&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span>
                <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ManagedPath</span> <span style="color: #000066;">relativeUrl</span>=<span style="color: #ff0000;">&quot;sites&quot;</span> <span style="color: #000066;">delete</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/ManagedPaths<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/WebApplication<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/WebApplications<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ServiceApps<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ManagedMetadataServiceApp</span> <span style="color: #000066;">Provision</span>=<span style="color: #ff0000;">&quot;true&quot;</span></span>
<span style="color: #009900;">                                   <span style="color: #000066;">Name</span>=<span style="color: #ff0000;">&quot;Managed Metadata Service&quot;</span></span>
<span style="color: #009900;">                                   <span style="color: #000066;">ProxyName</span>=<span style="color: #ff0000;">&quot;Managed Metadata Service&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Database<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Metadata<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Database<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/ManagedMetadataServiceApp<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;UserProfileServiceApp</span> <span style="color: #000066;">Provision</span>=<span style="color: #ff0000;">&quot;true&quot;</span></span>
<span style="color: #009900;">                               <span style="color: #000066;">Name</span>=<span style="color: #ff0000;">&quot;User Profile Service Application&quot;</span></span>
<span style="color: #009900;">                               <span style="color: #000066;">ProxyName</span>=<span style="color: #ff0000;">&quot;User Profile Service Application&quot;</span></span>
<span style="color: #009900;">                               <span style="color: #000066;">EnableNetBIOSDomainNames</span>=<span style="color: #ff0000;">&quot;false&quot;</span></span>
<span style="color: #009900;">                               <span style="color: #000066;">StartProfileSync</span>=<span style="color: #ff0000;">&quot;true&quot;</span></span>
<span style="color: #009900;">                               <span style="color: #000066;">CreateDefaultSyncConnection</span>=<span style="color: #ff0000;">&quot;false&quot;</span></span>
<span style="color: #009900;">                               <span style="color: #000066;">SyncConnectionAccount</span>=<span style="color: #ff0000;">&quot;DOMAIN\UPSync&quot;</span></span>
<span style="color: #009900;">                               <span style="color: #000066;">SyncConnectionAccountPassword</span>=<span style="color: #ff0000;">&quot;&quot;</span> <span style="color: #000000; font-weight: bold;">&gt;</span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ProfileDB<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Profile<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/ProfileDB<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SyncDB<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Sync<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/SyncDB<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SocialDB<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Social<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/SocialDB<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/UserProfileServiceApp<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;EnterpriseSearchService</span> <span style="color: #000066;">Provision</span>=<span style="color: #ff0000;">&quot;true&quot;</span></span>
<span style="color: #009900;">                                 <span style="color: #000066;">ContactEmail</span>=<span style="color: #ff0000;">&quot;helpdesk@cocolynn.com&quot;</span></span>
<span style="color: #009900;">                                 <span style="color: #000066;">ConnectionTimeout</span>=<span style="color: #ff0000;">&quot;60&quot;</span></span>
<span style="color: #009900;">                                 <span style="color: #000066;">AcknowledgementTimeout</span>=<span style="color: #ff0000;">&quot;60&quot;</span></span>
<span style="color: #009900;">                                 <span style="color: #000066;">ProxyType</span>=<span style="color: #ff0000;">&quot;Default&quot;</span></span>
<span style="color: #009900;">                                 <span style="color: #000066;">IgnoreSSLWarnings</span>=<span style="color: #ff0000;">&quot;true&quot;</span></span>
<span style="color: #009900;">                                 <span style="color: #000066;">InternetIdentity</span>=<span style="color: #ff0000;">&quot;Mozilla/4.0 (compatible; MSIE 4.01; Windows NT; MS Search 6.0 Robot)&quot;</span></span>
<span style="color: #009900;">                                 <span style="color: #000066;">IndexLocation</span>=<span style="color: #ff0000;">&quot;C:\Program Files\Microsoft Office Servers\14.0\Data\Office Server\Applications&quot;</span></span>
<span style="color: #009900;">                                 <span style="color: #000066;">PerformanceLevel</span>=<span style="color: #ff0000;">&quot;PartlyReduced&quot;</span></span>
<span style="color: #009900;">                                 <span style="color: #000066;">Account</span>=<span style="color: #ff0000;">&quot;COCOLYNN\svc.spSearch&quot;</span></span>
<span style="color: #009900;">                                 <span style="color: #000066;">Password</span>=<span style="color: #ff0000;">&quot;pass@word1&quot;</span></span>
<span style="color: #009900;">                                 <span style="color: #000066;">ShareName</span>=<span style="color: #ff0000;">&quot;SearchIndex&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;EnterpriseSearchServiceApplications<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
                <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;EnterpriseSearchServiceApplication</span> <span style="color: #000066;">Name</span>=<span style="color: #ff0000;">&quot;Search Service Application&quot;</span></span>
<span style="color: #009900;">                                                    <span style="color: #000066;">DatabaseServer</span>=<span style="color: #ff0000;">&quot;Alias_SPSQL&quot;</span></span>
<span style="color: #009900;">                                                    <span style="color: #000066;">DatabaseName</span>=<span style="color: #ff0000;">&quot;Search&quot;</span></span>
<span style="color: #009900;">                                                    <span style="color: #000066;">FailoverDatabaseServer</span>=<span style="color: #ff0000;">&quot;&quot;</span></span>
<span style="color: #009900;">                                                    <span style="color: #000066;">Partitioned</span>=<span style="color: #ff0000;">&quot;false&quot;</span></span>
<span style="color: #009900;">                                                    <span style="color: #000066;">Partitions</span>=<span style="color: #ff0000;">&quot;1&quot;</span></span>
<span style="color: #009900;">                                                    <span style="color: #000066;">SearchServiceApplicationType</span>=<span style="color: #ff0000;">&quot;Regular&quot;</span></span>
<span style="color: #009900;">                                                    <span style="color: #000066;">ContentAccessAccount</span>=<span style="color: #ff0000;">&quot;COCOLYNN\svc.spCrawl&quot;</span></span>
<span style="color: #009900;">                                                    <span style="color: #000066;">ContentAccessAccountPassword</span>=<span style="color: #ff0000;">&quot;pass@word1&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
                    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ApplicationPool</span> <span style="color: #000066;">Name</span>=<span style="color: #ff0000;">&quot;SharePoint Search Application Pool&quot;</span> <span style="color: #000066;">Account</span>=<span style="color: #ff0000;">&quot;COCOLYNN\svc.spSearchPool&quot;</span> <span style="color: #000066;">Password</span>=<span style="color: #ff0000;">&quot;pass@word1&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
                    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;CrawlServers<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
                        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Server</span> <span style="color: #000066;">Name</span>=<span style="color: #ff0000;">&quot;localhost&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
                    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/CrawlServers<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
                    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;QueryServers<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
                        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Server</span> <span style="color: #000066;">Name</span>=<span style="color: #ff0000;">&quot;localhost&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
                    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/QueryServers<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
                    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SearchQueryAndSiteSettingsServers<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
                        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Server</span> <span style="color: #000066;">Name</span>=<span style="color: #ff0000;">&quot;localhost&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
                    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/SearchQueryAndSiteSettingsServers<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
                    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;AdminComponent<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
                        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Server</span> <span style="color: #000066;">Name</span>=<span style="color: #ff0000;">&quot;localhost&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
                        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ApplicationPool</span> <span style="color: #000066;">Name</span>=<span style="color: #ff0000;">&quot;SharePoint Search Application Pool&quot;</span> <span style="color: #000066;">Account</span>=<span style="color: #ff0000;">&quot;COCOLYNN\svc.spSearchPool&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
                    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/AdminComponent<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
                    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Proxy</span> <span style="color: #000066;">Name</span>=<span style="color: #ff0000;">&quot;Search Service Application&quot;</span> <span style="color: #000066;">Partitioned</span>=<span style="color: #ff0000;">&quot;false&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
                        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ProxyGroup</span> <span style="color: #000066;">Name</span>=<span style="color: #ff0000;">&quot;Default&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
                    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Proxy<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
                <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/EnterpriseSearchServiceApplication<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/EnterpriseSearchServiceApplications<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/EnterpriseSearchService<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;StateService</span> <span style="color: #000066;">Provision</span>=<span style="color: #ff0000;">&quot;true&quot;</span></span>
<span style="color: #009900;">                      <span style="color: #000066;">Name</span>=<span style="color: #ff0000;">&quot;State Service&quot;</span></span>
<span style="color: #009900;">                      <span style="color: #000066;">ProxyName</span>=<span style="color: #ff0000;">&quot;State Service&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Database<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>StateService<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Database<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/StateService<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;WebAnalyticsService</span> <span style="color: #000066;">Provision</span>=<span style="color: #ff0000;">&quot;true&quot;</span></span>
<span style="color: #009900;">                             <span style="color: #000066;">Name</span>=<span style="color: #ff0000;">&quot;Web Analytics Service Application&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ReportingDB<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>WebAnalyticsReporting<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/ReportingDB<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;StagingDB<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>WebAnalyticsStaging<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/StagingDB<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/WebAnalyticsService<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SPUsageService</span> <span style="color: #000066;">Provision</span>=<span style="color: #ff0000;">&quot;true&quot;</span></span>
<span style="color: #009900;">                        <span style="color: #000066;">Name</span>=<span style="color: #ff0000;">&quot;Usage and Health Data Collection&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Database<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>UsageAndHealth<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Database<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/SPUsageService<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SecureStoreService</span> <span style="color: #000066;">Provision</span>=<span style="color: #ff0000;">&quot;true&quot;</span></span>
<span style="color: #009900;">                            <span style="color: #000066;">Name</span>=<span style="color: #ff0000;">&quot;Secure Store Service&quot;</span></span>
<span style="color: #009900;">                            <span style="color: #000066;">ProxyName</span>=<span style="color: #ff0000;">&quot;Secure Store Service&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Database<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>SecureStore<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Database<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/SecureStoreService<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;BusinessDataConnectivity</span> <span style="color: #000066;">Provision</span>=<span style="color: #ff0000;">&quot;true&quot;</span></span>
<span style="color: #009900;">                                  <span style="color: #000066;">Name</span>=<span style="color: #ff0000;">&quot;Business Data Connectivity Service&quot;</span></span>
<span style="color: #009900;">                                  <span style="color: #000066;">ProxyName</span>=<span style="color: #ff0000;">&quot;Business Data Connectivity Service&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Database<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>BusinessDataCatalog<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Database<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/BusinessDataConnectivity<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;WordAutomationService</span> <span style="color: #000066;">Provision</span>=<span style="color: #ff0000;">&quot;true&quot;</span></span>
<span style="color: #009900;">                               <span style="color: #000066;">Name</span>=<span style="color: #ff0000;">&quot;Word Automation Services&quot;</span></span>
<span style="color: #009900;">                               <span style="color: #000066;">ProxyName</span>=<span style="color: #ff0000;">&quot;Word Automation Services&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Database<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>WordAutomation<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Database<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/WordAutomationService<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/ServiceApps<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;EnterpriseServiceApps<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ExcelServices</span> <span style="color: #000066;">Provision</span>=<span style="color: #ff0000;">&quot;true&quot;</span></span>
<span style="color: #009900;">                       <span style="color: #000066;">Name</span>=<span style="color: #ff0000;">&quot;Excel Services Application&quot;</span></span>
<span style="color: #009900;">                       <span style="color: #000066;">UnattendedIDUser</span>=<span style="color: #ff0000;">&quot;COCOLYNN\svc.spUnattend&quot;</span></span>
<span style="color: #009900;">                       <span style="color: #000066;">UnattendedIDPassword</span>=<span style="color: #ff0000;">&quot;pass@word1&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/ExcelServices<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;VisioService</span> <span style="color: #000066;">Provision</span>=<span style="color: #ff0000;">&quot;true&quot;</span></span>
<span style="color: #009900;">                      <span style="color: #000066;">Name</span>=<span style="color: #ff0000;">&quot;Visio Graphics Service&quot;</span></span>
<span style="color: #009900;">                      <span style="color: #000066;">ProxyName</span>=<span style="color: #ff0000;">&quot;Visio Graphics Service&quot;</span></span>
<span style="color: #009900;">                      <span style="color: #000066;">UnattendedIDUser</span>=<span style="color: #ff0000;">&quot;COCOLYNN\svc.spUnattend&quot;</span></span>
<span style="color: #009900;">                      <span style="color: #000066;">UnattendedIDPassword</span>=<span style="color: #ff0000;">&quot;pass@word1&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/VisioService<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;AccessService</span> <span style="color: #000066;">Provision</span>=<span style="color: #ff0000;">&quot;true&quot;</span></span>
<span style="color: #009900;">                       <span style="color: #000066;">Name</span>=<span style="color: #ff0000;">&quot;Access Services&quot;</span></span>
<span style="color: #009900;">                       <span style="color: #000066;">ProxyName</span>=<span style="color: #ff0000;">&quot;Access Services&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/AccessService<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;PerformancePointService</span> <span style="color: #000066;">Provision</span>=<span style="color: #ff0000;">&quot;true&quot;</span></span>
<span style="color: #009900;">                      <span style="color: #000066;">Name</span>=<span style="color: #ff0000;">&quot;PerformancePoint Service&quot;</span></span>
<span style="color: #009900;">                      <span style="color: #000066;">ProxyName</span>=<span style="color: #ff0000;">&quot;PerformancePoint Service&quot;</span></span>
<span style="color: #009900;">                      <span style="color: #000066;">UnattendedIDUser</span>=<span style="color: #ff0000;">&quot;COCOLYNN\svc.spPerfPoint&quot;</span></span>
<span style="color: #009900;">                      <span style="color: #000066;">UnattendedIDPassword</span>=<span style="color: #ff0000;">&quot;pass@word1&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Database<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>PerformancePoint<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Database<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/PerformancePointService<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/EnterpriseServiceApps<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;OfficeWebApps</span> <span style="color: #000066;">Install</span>=<span style="color: #ff0000;">&quot;true&quot;</span></span>
<span style="color: #009900;">                   <span style="color: #000066;">ConfigFile</span>=<span style="color: #ff0000;">&quot;config-OWA.xml&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ExcelService</span> <span style="color: #000066;">Provision</span>=<span style="color: #ff0000;">&quot;false&quot;</span></span>
<span style="color: #009900;">                      <span style="color: #000066;">Name</span>=<span style="color: #ff0000;">&quot;Excel Web App&quot;</span></span>
<span style="color: #009900;">                      <span style="color: #000066;">ProxyName</span>=<span style="color: #ff0000;">&quot;Excel Web App&quot;</span></span>
<span style="color: #009900;">                      <span style="color: #000066;">UnattendedIDUser</span>=<span style="color: #ff0000;">&quot;DOMAIN\ExcelUser&quot;</span></span>
<span style="color: #009900;">                      <span style="color: #000066;">UnattendedIDPassword</span>=<span style="color: #ff0000;">&quot;&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/ExcelService<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;WordViewingService</span> <span style="color: #000066;">Provision</span>=<span style="color: #ff0000;">&quot;true&quot;</span></span>
<span style="color: #009900;">                            <span style="color: #000066;">Name</span>=<span style="color: #ff0000;">&quot;Word Viewing Service&quot;</span></span>
<span style="color: #009900;">                            <span style="color: #000066;">ProxyName</span>=<span style="color: #ff0000;">&quot;Word Viewing Service&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/WordViewingService<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;PowerPointService</span> <span style="color: #000066;">Provision</span>=<span style="color: #ff0000;">&quot;true&quot;</span></span>
<span style="color: #009900;">                           <span style="color: #000066;">Name</span>=<span style="color: #ff0000;">&quot;PowerPoint Service Application&quot;</span></span>
<span style="color: #009900;">                           <span style="color: #000066;">ProxyName</span>=<span style="color: #ff0000;">&quot;PowerPoint Service Application&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/PowerPointService<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/OfficeWebApps<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;AdobePDF<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;iFilter</span> <span style="color: #000066;">Install</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Icon</span> <span style="color: #000066;">Configure</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;MIMEType</span> <span style="color: #000066;">Configure</span>=<span style="color: #ff0000;">&quot;true&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/AdobePDF<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ForeFront</span> <span style="color: #000066;">Install</span>=<span style="color: #ff0000;">&quot;true&quot;</span></span>
<span style="color: #009900;">               <span style="color: #000066;">ConfigFile</span>=<span style="color: #ff0000;">&quot;answerfile-ForeFront.xml&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Configuration<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></td></tr></table></div>

<p>Almost done. It’s common for typos and syntax errors to pop up because the XML file is so long and has so much information. We need to run it through a validator. So, head over to <a title="http://www.w3schools.com/xml/xml_validator.asp" href="http://www.w3schools.com/xml/xml_validator.asp">http://www.w3schools.com/xml/xml_validator.asp</a> and paste your entire XML in the validator.</p>
<p>No errors? Now, we&#8217;re ready to go! In the next post in this series, I&#8217;ll show you how to run this and how it looks as it progresses. </p>
<h2>Service Accounts</h2>
<p>As a reference, here are the service accounts I’ll be using and what they get assigned using the default options in the XML configuration file.</p>
<table border="1" cellspacing="0" cellpadding="1" width="476">
<tbody>
<tr>
<td valign="top" width="242">
<p align="center"><strong>CommonName or<br />
            <br /></strong><strong>XML Node</strong></p>
</td>
<td valign="top" width="96">
<p align="center"><strong>Account</strong></p>
</td>
<td valign="top" width="136">
<p align="center"><strong>Notes</strong></p>
</td>
</tr>
<tr>
<td valign="top" width="242">spservice</td>
<td valign="top" width="96">svc.spApps<br />
        <br />(Managed Account)</td>
<td valign="top" width="136">Runs following services: </p>
<ul>
<li>SharePoint 2010 Tracing </li>
<li>SharePoint 2010 User Code Host </li>
<li>Web Analytics Service </li>
</ul>
<p>Runs IIS App Pools: </p>
<ul>
<li>PowerPoint </li>
<li>Access Data Server </li>
<li>Word Server </li>
<li>Conversion Service </li>
<li>Excel Calculation Server </li>
<li>Managed Metadata </li>
<li>PPS Monitoring Server </li>
<li>Visio Graphics Server </li>
<li>Web Analytics </li>
<li>Secure Store </li>
<li>BDC </li>
</ul>
</td>
</tr>
<tr>
<td valign="top" width="242">portalapppool</td>
<td valign="top" width="96">svc.spAppPool<br />
        <br />(Managed Account)</td>
<td valign="top" width="136">Runs IIS App Pool for Portal Web Application.<br />
        <br />Site Collection owner for Portal site (by default).</td>
</tr>
<tr>
<td valign="top" width="242">mysiteapppool</td>
<td valign="top" width="96">svc.spMySitePool<br />
        <br />(Managed Account)</td>
<td valign="top" width="136">Runs IIS App Pool for MySite Web Application.<br />
        <br />Site Collection owner for MySite host (by default).</td>
</tr>
<tr>
<td valign="top" width="242">searchservice<br />
        <br />and </p>
<p>&lt;EnterpriseSearchServiceApplication&gt;</td>
<td valign="top" width="96">svc.spSearch<br />
        <br />(Managed Account)</td>
<td valign="top" width="136">
<p>Runs following services:</p>
<ul>
<li>SharePoint Server Search 14 </li>
</ul>
</td>
</tr>
<tr>
<td valign="top" width="242">&lt;SuperUser&gt;</td>
<td valign="top" width="96">svc.spCacheUser</td>
<td valign="top" width="136">Full Control User Policy on Portal Web Application (and other Web Apps you create).</td>
</tr>
<tr>
<td valign="top" width="242">&lt;SuperReader&gt;</td>
<td valign="top" width="96">svc.spCacheRead</td>
<td valign="top" width="136">Full Read User Policy on Portal Web Application (and other Web Apps you create).</td>
</tr>
<tr>
<td valign="top" width="242">&lt;Farm&gt;</td>
<td valign="top" width="96">svc.spFarm</td>
<td valign="top" width="136">Runs the following services: </p>
<ul>
<li>SharePoint 2010 Timer </li>
<li>Forefront Identity Manager Service </li>
<li>Forefront Identity Manager Synchronization </li>
<li>Microsoft Forefront Server Protection Controller for SharePoint </li>
</ul>
<p>Runs IIS App Pool for:</p>
<ul>
<li>Central Admin Web App </li>
<li>Topology Service </li>
<li>STS for each Web App (CA, Portal, Mysite) </li>
<li>STS Service </li>
</ul>
</td>
</tr>
<tr>
<td valign="top" width="242">&lt;EnterpriseSearchServiceApplication&gt;</td>
<td valign="top" width="96">svc.spCrawl</td>
<td valign="top" width="136">Default Content Access account will be used under Search Service Application.</td>
</tr>
<tr>
<td valign="top" width="242">&lt;EnterpriseSearchServiceApplication&gt;</td>
<td valign="top" width="96">svc.spSearchPool</td>
<td valign="top" width="136">Runs IIS App Pool for Search Service.</td>
</tr>
<tr>
<td valign="top" width="242">&lt;EnterpriseServiceApps&gt;</td>
<td valign="top" width="96">svc.spUnattend</td>
<td valign="top" width="136">config’d in Secure Store?</td>
</tr>
<tr>
<td valign="top" width="242">&lt;EnterpriseServiceApps&gt;</td>
<td valign="top" width="96">svc.spPerfPoint</td>
<td valign="top" width="136"> </td>
</tr>
<tr>
<td valign="top" width="242"> </td>
<td valign="top" width="96"> </td>
<td valign="top" width="136"> </td>
</tr>
<tr>
<td valign="top" width="242">Not Configured in Script</td>
<td valign="top" width="96">LocalSystem</td>
<td valign="top" width="136">Run the following services:<br />
        </p>
<ul>
<li>SharePoint 2010 Administration </li>
<li>SharePoint 2010 VSS Writer </li>
<li>SharePoint Foundation Search V14 (Disabled) </li>
<li>Office Document Conversions Launcher (Disabled) </li>
<li>Office Document Conversions Load Balancer (Disabled) </li>
</ul>
</td>
</tr>
</tbody>
</table>
<p>And as a reminder, although I don’t mind answering questions or responding to comments on my blog, if you have specific questions related to AutoSPInstaller, its best to use the discussion boards there: <a href="http://autospinstaller.codeplex.com/discussions">http://autospinstaller.codeplex.com/discussions</a></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?a=kdFo3_3Ijek:lJj5UHQbTzo:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?a=kdFo3_3Ijek:lJj5UHQbTzo:BGfa-dtoa6M"><img src="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?i=kdFo3_3Ijek:lJj5UHQbTzo:BGfa-dtoa6M" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?a=kdFo3_3Ijek:lJj5UHQbTzo:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?i=kdFo3_3Ijek:lJj5UHQbTzo:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/WahidsSharepointBlog/~4/kdFo3_3Ijek" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.wahidsaleemi.com/2011/11/autospinstaller-configuration-2/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
	
		<series:name><![CDATA[AutoSPInstaller]]></series:name>
	<feedburner:origLink>http://www.wahidsaleemi.com/2011/11/autospinstaller-configuration-2/</feedburner:origLink></item>
		<item>
		<title>AutoSPInstaller: Getting Prepared</title>
		<link>http://feedproxy.google.com/~r/WahidsSharepointBlog/~3/kc64s321Pjg/</link>
		<comments>http://www.wahidsaleemi.com/2011/11/autospinstaller-getting-prepared/#comments</comments>
		<pubDate>Wed, 09 Nov 2011 15:40:40 +0000</pubDate>
		<dc:creator>Wahid Saleemi</dc:creator>
				<category><![CDATA[CodePlex]]></category>
		<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[Windows PowerShell]]></category>
		<category><![CDATA[AutoSPInstaller]]></category>
		<category><![CDATA[Brian Lalancette]]></category>
		<category><![CDATA[OfficeWebApps]]></category>
		<category><![CDATA[powershell]]></category>
		<category><![CDATA[scripts]]></category>
		<category><![CDATA[SharePoint Server 2010]]></category>
		<category><![CDATA[slipstream]]></category>
		<category><![CDATA[SP1]]></category>
		<category><![CDATA[Todd Klindt]]></category>
		<category><![CDATA[Update Resource Center]]></category>
		<category><![CDATA[Updates]]></category>

		<guid isPermaLink="false">http://www.wahidsaleemi.com/?p=584</guid>
		<description><![CDATA[This post will focus on how to get started with AutoSPInstaller. Along the way, I&#8217;ll write some tips that I&#8217;ve learned and hope to give readers some more details on how to most effectively use AutoSPInstaller. Tobias Lekman (@tobiaslekman) also has a step-by-step guide on his blog here. AutoSPInstaller is a CodePlex project started by [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>This post will focus on how to get started with AutoSPInstaller. Along the way, I&#8217;ll write some tips that I&#8217;ve learned and hope to give readers some more details on how to most effectively use AutoSPInstaller. Tobias Lekman (<a href="http://twitter.com/#!/tobiaslekman" target="_blank">@tobiaslekman</a>) also has a step-by-step guide on his blog <a href="http://blog.lekman.com/2010/11/automated-sharepoint-2010-installations.html" target="_blank">here</a>.</p>
<p>AutoSPInstaller is a CodePlex project started by Brian Lalancette (<a href="http://twitter.com/#!/brianlala" target="_blank">@brianlala</a>). The aim of the project is to provide a set of unified scripts to install SharePoint by following best practices. You can find more on the project by visiting <a title="http://autospinstaller.codeplex.com/" href="http://autospinstaller.codeplex.com/">http://autospinstaller.codeplex.com/</a></p>
<h2>Assumptions</h2>
<ul>
<li>You have at least one SQL Server (or cluster) up and running that will be used for the SharePoint databases.</li>
<li>You have a Windows Server 2008 R2 server up and running. The server is joined to your domain, has network connectivity and the firewall is turned off. No pre-requisites, server roles, or features are installed yet.</li>
<li>You have access to a file share (could be a local drive) where we&#8217;ll stage the software.</li>
<li>You have (at least) SharePoint 2010 Foundation. In this example, I&#8217;m going to use Enterprise edition and additional software such as Office Web Apps. These are not required though.</li>
</ul>
<h2>Scenario</h2>
<ul>
<li>I&#8217;m going to install SharePoint using AutoSPInstaller and my locale is en-US (United States). </li>
<li>My SQL Server name is SQL2008R2 and I have a default instance installed (MSSQLSERVER).</li>
<li>My SharePoint server is called SHARECLOUD and I have set the PowerShell policy to Unrestricted (Set-ExecutionPolicy Unrestricted).</li>
<li>My install account is svc.spsetup; always use a common install account. This account is a local administrator on my SharePoint server(s).</li>
<li>My file share is mapped to the Z: drive, svc.spsetup (my install account) has Full Control.</li>
</ul>
<h2>Preparing the file share</h2>
<p>The first step is to prepare the file share. </p>
<h3>Step 1. Extract AutoSPInstaller:</h3>
<p> I&#8217;m going to start with AutoSPInstaller. Download a copy from <a href="http://autospinstaller.codeplex.com">http://autospinstaller.codeplex.com</a> and extract the files to your file share.</p>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image.png" title="image" rel="lightbox[584]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb AutoSPInstaller: Getting Prepared" src="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image_thumb.png" width="244" height="120" /></a></p>
<h3>Step 2. Copy SharePoint bits:</h3>
<p> Once extracted, AutoSPInstaller gives you the proper folder structure. You have to stick to this because the scripts use relatives paths (for example: ../../xyz.exe) in many places.</p>
<p>So now, I&#8217;m going to take a copy of my SharePoint DVD or extract the contents of my SharePoint ISO to the SP2010\SharePoint folder, as shown here:</p>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image1.png" title="image" rel="lightbox[584]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb1 AutoSPInstaller: Getting Prepared" src="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image_thumb1.png" width="244" height="100" /></a></p>
<p><em><strong>Tip:</strong> If you have an ISO, consider using 7-zip to extract its contents.</em></p>
<h3>Step3: Tweak Windows settings (optional)</h3>
<p>I do this to prevent pop-ups regarding untrusted locations. Without this, your install can&#8217;t really be unattended because you&#8217;ll have to click Continue (or Cancel) when the warning for Open File Security shows up. This happens when you copy files from the internet (as we&#8217;re doing with the AutoSPInstaller scripts) or from file shares, even a DVD (as with the SharePoint bits).</p>
<ul>
<li>First, make sure you are logged in as the setup account. This is a user-based setting. Click Start –&gt; Run –&gt; gpedit.msc –&gt; Press Enter or OK</li>
<li>Browse to User Configuration –&gt; Administrative Templates –&gt; Windows Components –&gt; Attachment Manager –&gt; Inclusion list for low file types.</li>
<li>Add .exe;.ps1;.bat to the list, as shown.</li>
</ul>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image2.png" title="image" rel="lightbox[584]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb2 AutoSPInstaller: Getting Prepared" src="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image_thumb2.png" width="244" height="225" /></a></p>
<h3>Step 4. Copy SharePoint Prerequisites:</h3>
<p> Since I may be installing a large farm, I don&#8217;t want to keep downloading the prerequisites each time. I want to keep a copy of the files and use the offline installation method (faster).</p>
<p>I&#8217;m going to go back to <a href="http://autospinstaller.codeplex.com">http://autospinstaller.codeplex.com</a> and click on the Downloads tab. On the right-hand side, under &quot;Other Downloads&quot; there&#8217;s a script to download all the prerequisites. Download and save that somewhere. I choose to put it in the SP2010\SharePoint folder.</p>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image3.png" title="image" rel="lightbox[584]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb3 AutoSPInstaller: Getting Prepared" src="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image_thumb3.png" width="244" height="105" /></a></p>
<p>Now run the PowerShell script. It will ask for a folder, I&#8217;ve specified current folder in my screenshot. The script will use the existing PrerequisiteInstallerFiles folder or create one if there isn&#8217;t any in the folder you specify. This is how it looks while its running.</p>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image4.png" title="image" rel="lightbox[584]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb4 AutoSPInstaller: Getting Prepared" src="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image_thumb4.png" width="244" height="58" /></a></p>
<p>When its done, you&#8217;ll see all the files downloaded to the folder you specified. They should be in the SP2010\SharePoint\PrerequisiteInstallerFiles folder.</p>
<h3>Step 5: Slipstream Updates</h3>
<p>Your media may already have SharePoint 2010 Service Pack 1, mine doesn&#8217;t so I&#8217;m going to slipstream it. I&#8217;ll also slipstream the latest cumulative update (CU) that I&#8217;ve tested. Find out more information on SharePoint 2010 at the <a href="http://technet.microsoft.com/en-us/sharepoint/ff800847" target="_blank">Update Resource Center</a>.</p>
<p>First, I need to download the update for SharePoint Server 2010 (<a href="http://www.microsoft.com/download/en/details.aspx?displaylang=en&amp;id=26623" target="_blank">link</a>). I&#8217;ll save this to my desktop (or a temp folder). Next, I&#8217;m going to grab the CU, which should be optional and is intended to fix an issue you&#8217;re experiencing. However, this statement posted on the KB for Service Pack 1 encourages installing a CU:</p>
<p><strong><em>&quot;After you install SharePoint Foundation 2010 SP1 or SharePoint Server 2010 SP1, you must also install the corresponding June 2011 Cumulative Update refresh package.&quot;</em></strong></p>
<p>As of this writing, the latest is the October 2011 CU. However, this contains regressions that I don&#8217;t want to deal with. For a list of known regressions, Todd Klindt (<a href="http://twitter.com/#!/toddklindt" target="_blank">@toddklindt</a>) has been keeping track on his blog: <a title="http://www.toddklindt.com/blog/Regressions/Home.aspx" href="http://www.toddklindt.com/blog/Regressions/Home.aspx">http://www.toddklindt.com/blog/Regressions/Home.aspx</a></p>
<p>I&#8217;m going to go with the August 2011 CU. This also means that I don&#8217;t need two packages (one for SharePoint Foundation and one of SharePoint Server). Prior cumulative updates required both packages. So, the August CU is available <a href="http://support.microsoft.com/kb/2553048" target="_blank">here</a>, lets download that to the desktop as well.</p>
<p>In a command prompt, I&#8217;m going to type in the following:</p>
<pre>officeserver2010sp1-kb2460045-x64-fullfile-en-us.exe /extract:Z:\SP2010\SharePoint\Updates</pre>
<p>Then:</p>
<pre>office2010-kb2553048-fullfile-x64-glb.exe /extract:Z:\SP2010\SharePoint\Updates</pre>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image5.png" title="image" rel="lightbox[584]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb5 AutoSPInstaller: Getting Prepared" src="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image_thumb5.png" width="244" height="142" /></a></p>
<p>If you&#8217;d like a walk through, Todd Klindt comes to the rescue again. View his blog post here: <a title="http://www.toddklindt.com/blog/Lists/Posts/Post.aspx?ID=295" href="http://www.toddklindt.com/blog/Lists/Posts/Post.aspx?ID=295">http://www.toddklindt.com/blog/Lists/Posts/Post.aspx?ID=295</a></p>
<h3>Step 6: <del datetime="2011-11-12T02:16:18+00:00">Download Adobe PDF iFilter (optional)</del></h3>
<p><del datetime="2011-11-12T02:16:18+00:00"> I want to be able to search and index PDF files so I&#8217;ll need the Adobe PDF iFilter. AutoSPInstaller can set this up for me. I just need to do a couple things to prepare.</del> </p>
<ul>
<li><del datetime="2011-11-12T02:16:18+00:00">First download the iFilter zip from <a href="http://download.adobe.com/pub/adobe/acrobat/win/9.x/PDFiFilter64installer.zip" target="_blank">here</a> and place it in the SP2010\PDF folder.</del></li>
<li><del datetime="2011-11-12T02:16:18+00:00">Second, download the PDF icon from <a href="http://www.adobe.com/images/pdficon_small.gif" target="_blank" rel="lightbox[584]">here</a> and place it in the same folder. Rename it to icpdf.gif</del></li>
</ul>
<p> <strong>UPDATE:</strong> Brian informed me that the PDF function in AutoSPInstaller will do all of this for you. So, if you want the PDF stuff, just enable it in the configuration. There are no preparatory steps needed.</p>
<h3>Step 7: Extract Office Web Apps (optional)</h3>
<p>If you&#8217;d like to install Office Web Apps, download and extract the installation to the SP2010\OfficeWebApps folder. Office Web Apps is generally available to enterprise customers, you can&#8217;t just go online somewhere and download it, so if you&#8217;re interested talk to your Microsoft licensing representative. </p>
<p>Here, I&#8217;ve downloaded the Office Web Apps installer to my desktop and am extracting it to the SP2010\OfficeWebApps folder.</p>
<pre>en_office_web_apps_x64_517488.exe /extract:Z:\SP2010\OfficeWebApps</pre>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image6.png" title="image" rel="lightbox[584]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb6 AutoSPInstaller: Getting Prepared" src="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image_thumb6.png" width="244" height="100" /></a></p>
<p>
Since I&#8217;m installing Service Pack 1 for SharePoint, I need SP1 for Office Web Apps too. I downloaded it from <a href="http://www.microsoft.com/download/en/details.aspx?id=26639">this site</a>, and extract it to the &#8220;Updates&#8221; folder under SP2010\OfficeWebApps.</p>
<pre>
wacserver2010sp1-kb2460073-x64-fullfile-en-us.exe /extract:Z:\SP2010\OfficeWebApps\Updates
</pre>
<h3>Step 8: Extract Forefront Protection 2010 for SharePoint (optional)</h3>
<p>Similar to Office Web Apps, you may not have this or may chose not to use it. SharePoint can use anti-malware software from several vendors. In this case, I&#8217;ve downloaded Forefront Protection 2010 for SharePoint to my desktop and am extracting it to the SP2010\ForeFront folder. It&#8217;s an ISO in my case, so I&#8217;m using 7-zip to extract it. That gives me the setup file. I still need to extract that so, in the command line I type in:</p>
<pre>C:\Users\svc.spsetup\Desktop>FOREFRONTSHAREPOINTSETUP.EXE /extract:Z:\SP2010\ForeFront</pre>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image7.png" title="image" rel="lightbox[584]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb7 AutoSPInstaller: Getting Prepared" src="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image_thumb7.png" width="244" height="81" /></a></p>
<h3>Step 9: Slipstream Language Packs (optional)</h3>
<p>I saved this for last because it can be complex and there are a couple ways to do this. However, I&#8217;m going to show you my preference. I like this method because it ensures that Service Pack 1 for my language packs also get installed properly.</p>
<p>For my example, I&#8217;m going to use French and Spanish language packs. To make things easier, I&#8217;m going to use another CodePlex project. The SharePoint 2010 Language Pack Downloader <a href="http://sp2010dl.codeplex.com/" target="_blank">here</a>. I simply select my languages and the folder.</p>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image8.png" title="image" rel="lightbox[584]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb8 AutoSPInstaller: Getting Prepared" src="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image_thumb8.png" width="244" height="244" /></a></p>
<ul>
<li>I&#8217;ll download the original language packs for each language I want and then download the service pack for each of those.</li>
<li>Next, I need to extract them to a subfolder that I&#8217;ll create. The subfolder will be named for the &quot;Culture Short Code&quot; of the language. For a list of culture short codes see this <a href="http://technet.microsoft.com/en-us/library/system.globalization.cultureinfo(VS.85).aspx" target="_blank">MSDN article</a>.</li>
</ul>
<pre>For example: SpanishLanguagePack.exe /extract:Z:\SP2010\Language Packs\es-es</pre>
<ul>
<li>Finally, I need to extract the service pack for each language into the &quot;Updates&quot; folder for that language pack.</li>
</ul>
<p>For example:
<pre>SpanishLanguagePack_SP1.exe /extract:Z:\SP2010\LanguagePacks\es-es\Updates</pre>
</p>
<p>Here&#8217;s how my four commands look:</p>
<p><a href="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image9.png" title="image" rel="lightbox[584]"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image thumb9 AutoSPInstaller: Getting Prepared" src="http://www.wahidsaleemi.com/wp-content/uploads/2011/11/image_thumb9.png" width="244" height="154" /></a></p>
<p>For now, we&#8217;ve accomplished our goal of preparing our file share. From here, we have everything ready to install a single server or 10 servers, in the same farm or multiple farms. Our SP2010 folder is now over 4 GB.</p>
<p>In the next post in the series, we&#8217;ll continue by configuring several files that will help automate our SharePoint deployment.</p>
<p>And as a note, although I don&#8217;t mind answering questions or responding to comments on my blog, if you have specific questions related to AutoSPInstaller, its best to use the discussion boards there: <a href="http://autospinstaller.codeplex.com/discussions">http://autospinstaller.codeplex.com/discussions</a></p>
<p>I do respond there and so do others, so your chances of getting an answer, more quickly are greater.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?a=kc64s321Pjg:FPbz3psOMlU:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?a=kc64s321Pjg:FPbz3psOMlU:BGfa-dtoa6M"><img src="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?i=kc64s321Pjg:FPbz3psOMlU:BGfa-dtoa6M" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?a=kc64s321Pjg:FPbz3psOMlU:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?i=kc64s321Pjg:FPbz3psOMlU:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/WahidsSharepointBlog/~4/kc64s321Pjg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.wahidsaleemi.com/2011/11/autospinstaller-getting-prepared/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<series:name><![CDATA[AutoSPInstaller]]></series:name>
	<feedburner:origLink>http://www.wahidsaleemi.com/2011/11/autospinstaller-getting-prepared/</feedburner:origLink></item>
		<item><title>San Fernando Valley User Group discusses SharePoint Lists [Digg]</title><link>http://feedproxy.google.com/~r/WahidsSharepointBlog/~3/xwB-zt2NTIc/san_fernando_valley_user_group_discusses_sharepoint_lists</link><dc:creator>Digg</dc:creator><pubDate>Fri, 28 Oct 2011 13:55:39 PDT</pubDate><guid isPermaLink="false">http://digg.com/news/technology/san_fernando_valley_user_group_discusses_sharepoint_lists</guid><description>Sherman Oaks,California,United States of America: Latest breaking news - The List is the most used feature in SharePoint. Nedra Allmond will present the differences between the current and former versions of SharePoint and she uncovers some lesser known features.. You can’t miss out this news San Fernando Valley User Group discusses SharePoint Lists to get latest information about Information industry.&lt;img src="http://feeds.feedburner.com/~r/WahidsSharepointBlog/~4/xwB-zt2NTIc" height="1" width="1"/&gt;</description><digg:diggCount xmlns:digg="http://digg.com/docs/diggrss/">
			1
		</digg:diggCount><digg:category xmlns:digg="http://digg.com/docs/diggrss/">
			Technology
		</digg:category><digg:commentCount xmlns:digg="http://digg.com/docs/diggrss/">
			0
		</digg:commentCount><digg:userActivity xmlns:digg="http://digg.com/docs/diggrss/">
			digg
		</digg:userActivity><digg:userActivity xmlns:digg="http://digg.com/docs/diggrss/">
			submission
		</digg:userActivity><feedburner:origLink>http://digg.com/news/technology/san_fernando_valley_user_group_discusses_sharepoint_lists?utm_campaign=Feed%3A+http%3A%2F%2Fservices.digg.com%2F2.0%2Fuser.getActivity%3Ftype%3Drss%26activity_type%3Ddigg%26username%3Dcraveness&amp;utm_medium=feed&amp;utm_source=diggapi</feedburner:origLink></item><item>
		<title>SPC11: Enterprise Deployment of User Profile Service</title>
		<link>http://feedproxy.google.com/~r/WahidsSharepointBlog/~3/8Bcnln_zf7o/</link>
		<comments>http://www.wahidsaleemi.com/2011/10/spc11-enterprise-deployment-of-user-profile-service-2/#comments</comments>
		<pubDate>Thu, 06 Oct 2011 21:30:50 +0000</pubDate>
		<dc:creator>Wahid Saleemi</dc:creator>
				<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[MySites]]></category>
		<category><![CDATA[social]]></category>
		<category><![CDATA[Social Networking]]></category>
		<category><![CDATA[UPA]]></category>
		<category><![CDATA[UPS]]></category>
		<category><![CDATA[User Profile]]></category>
		<category><![CDATA[User Profile Application]]></category>
		<category><![CDATA[user profile service]]></category>

		<guid isPermaLink="false">http://www.wahidsaleemi.com/?p=560</guid>
		<description><![CDATA[Spence Harbar discussed the User Profile Service and considerations for Enterprise Deployments. Right off, he stated that the MCM class spends 6 hours on UPS! Certainly, 90 minutes is not sufficient to cover everything but I took some notes that you’ll find in this article. Spence spoke about Identity Management as a key foundation for [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>Spence Harbar discussed the User Profile Service and considerations for Enterprise Deployments. Right off, he stated that the MCM class spends 6 hours on UPS! Certainly, 90 minutes is not sufficient to cover everything but I took some notes that you’ll find in this article.</p>
<p>Spence spoke about Identity Management as a key foundation for UPS and the fact that it’s a very political topic (10% technology, 90% business/politics). To help ensure a good identity management foundation exists, we need to answer some key questions:</p>
<ul>
<li><strong>Ownership:</strong> Who owns the data? Where’s the authoritative source? </li>
<li><strong>Data Quality:</strong> Does the data exist? Is it up to date and accurate? Is it compliant? </li>
<li><strong>System Quality:</strong> What’s the health of systems managing the data (AD Health?) </li>
<li><strong>Access:</strong> How do you authenticate and access the systems managing identity data. </li>
</ul>
<p><em><strong>Tip:</strong> Be friendly to your directory services management team. You’ll need coordination, communication, and change control.</em></p>
<h1>Architecture</h1>
<p>There are 3 related databases for user profiles:</p>
<ul>
<li>SocialDB: This holds things like tags, notes, and ratings. </li>
<li>ProfileDB: Hold the profile data for users and the organization and activity feeds. Should grow very large if your SharePoint deployment is focused on social networking. </li>
<li>SyncDB: Hold configuration and staging information for synchronization data. </li>
</ul>
<p>The User Profile Application (UPA) talks <em>directly</em> to SQL, this is why it’s not supported over the WAN (as a federated service).</p>
<p>SharePoint includes FIM “light,”&#160; provisioning UPS Service Instance is effectively installing and configuring FIM.</p>
<p><em><strong>Tip:</strong> The SyncDB is a temporary holding area for synchronization data. Deleting (and re-creating) it should not be an issue. All the important (actual) data is stored in the other two related databases, SocialDB and ProfileDB.</em></p>
<h1>Provisioning</h1>
<p>Using Central Administration for provisioning UPS is not recommended. Using PowerShell for UPA provisioning provides more options, control and provides a repeatable process (since issues could easily arise). However there are some limitations or problems when using PowerShell to create the User Profile Application.</p>
<h2>Limitations: </h2>
<p>When using PowerShell to create the UPA, there is a Default Schema issue. The Farm Account default schema is set incorrectly in Sync DB, UPS will never start under this case. Because the user is logged in as the server administrator, that account will be dbo (rather than the Farm account).</p>
<h2>Workarounds</h2>
<ol>
<li>Log on to machine as Farm Account and under UAC elevation run the PowerShell to create UPA; not recommended. </li>
<li>Fix default schema manually (not supported) using SQL Server Management Studio or TSQL; not recommended. </li>
<li>Best method is to start PowerShell process using RunAs, pass the Farm Account credentials, and run the PowerShell script to create UPA. Essentially, you’re running a PowerShell script from a PowerShell script. <a href="http://autospinstaller.codeplex.com">AutoSPInstaller</a> uses this method (I believe). See Spence’s post here for details: <a title="http://www.harbar.net/articles/sp2010ups.aspx" href="http://www.harbar.net/articles/sp2010ups.aspx">http://www.harbar.net/articles/sp2010ups.aspx</a> </li>
</ol>
<h1>Deployment Guidance</h1>
<p>Planning is paramount! Define what properties you’ll need and how “social” features will be used in your organization. Plan, plan, plan.</p>
<p>Ensure the data is accurate (remember: garbage in, garbage out) and ensure systems managing the user directory are healthy. Consider using Microsoft services to deliver an Active Directory Risk Assessment (AD RAP) when deploying large scale social deployment.</p>
<p><strong>Design Constraints</strong></p>
<p>You can only have one UPS Service Instance per Service Application. “Effectively replaces the Index role (from MOSS 2007) as the single point of failure.” The only way to get high-availability (HA), is to start UPS on another machine (will automatically un-provision on first machine).</p>
<p>Keep in mind that you cannot log ship Sync DB (its unsupported – see <a href="http://technet.microsoft.com/en-us/library/ff628971.aspx#Section3">this article</a> for other databases that cannot be log-shipped). Clustering is the only option to get some level of high availability. Since the Sync DB is just a temporary staging environment, you can easily create a new UPA and use your existing Profile and Social DB with no data loss.</p>
<p>Deploy Sync DB on dedicated SQL instance (it loves RAM) to get best sync time for large number of users.</p>
<h2>MySites</h2>
<ul>
<li>MySite Host can only be in a single language. Recommend using primary language of your organization. Only the default will be used for phonetic matching during search. </li>
<li>Pre-creating MySites is not recommended, you’ll end up with tons of empty or unused site collections. Its very unlikely that every user will try to create a MySite during the launch of your new SharePoint Farm. </li>
<li>Limit the profile properties you want to manage, it can add too much complexity and unnecessary load. Get the important things but don’t go overboard. </li>
<li>Using the full version of FIM to <em>change</em> configuration settings with SharePoint puts your in unsupported state. </li>
<li>You can use distributed MySites by creating multiple farms and&#160; a UPA in each Farm. Each MySite is added to Trusted MySite Locations. Audiences are used to redirect users to correct host. Multiple UPAs in a single Farm is not supported. </li>
</ul>
<p><strong>Considerations for Claims</strong></p>
<p>The following are some considerations when using a SharePoint Farm in Claims-mode:</p>
<ul>
<li>Audiences can only be property based. No groups. </li>
<li>Mapping to claims user requires manual configuration. FULL Sync required after configuration. </li>
<li>You’ll need custom code for people picker to work as expected. </li>
<li>Outlook Social Connector is Windows authentication only. </li>
</ul>
<p><em><strong>Tip:</strong> Deploy Service Pack 1 and the June 2011 Cumulative Update (CU) for SharePoint 2010 as these provide enhancements related to the User Profiles.</em></p>
<p>Service Pack 1 provides many enhancements including the following:</p>
<ul>
<li>Activity feed enabled by default </li>
<li>Performance increase during synchronization </li>
<li>Organization Browser fixes </li>
<li>Customized security trimming </li>
</ul>
<p>In addition, the June 2011 CU provides enhancements including the following:</p>
<ul>
<li>A 33% performance improvement during sync </li>
<li>Improved ULS logging </li>
</ul>
<h1>Major Farm Lifecycle Events</h1>
<p>Finally, Spence addressed some consideration for major farm lifecycle events (such as upgrades, updates, and backups). For example, installing a Cumulative Update (CU) requires re-provisioning of UPS. There is no “pause” method for UPS and PSConfig is not aware of Sync DB. Therefore,&#160; schema updates are taken care of during UPS provisioning.</p>
<p>UPS is stopped before a backup occurs and requires re-provisioning with many 3rd party backup solutions. Farm account must be a local admin during provisioning. If not, it will not provision (correctly).</p>
<p>Maintaining databases is important, however be careful. The SyncDB can become large, don’t use TSQL to fix – it’s unsupported. Spence mentioned there are scripts on the interwebz that show you how to do this but remember, they are unsupported. So, what can you do?</p>
<p>Just throw away UPA and recreate, use existing ProfileDB and SocialDB, no data loss incurred.</p>
<h1>Conclusion</h1>
<p>This was truly a 400-level session and there was much too much information to consume and regurgitate! I hope I’ve captured some key points and hope this is helpful. Spence did say that TechNet is an excellent resource. In addition, visit Spence’s blog and the resources listed here:</p>
<ul>
<li><a href="http://www.harbar.net/">Spencer Harbar’s Blog</a> </li>
<li><a href="http://www.harbar.net/articles/sp2010ups.aspx">Rational Guide to Implementing SharePoint Server 2010 User Profile Synchronization</a> </li>
<li><a href="http://www.harbar.net/articles/sp2010ups2.aspx">“Stuck on Starting”: Common Issues with SharePoint Server 2010 User Profile Synchronization</a> </li>
</ul>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?a=8Bcnln_zf7o:tYhmxdjDFeo:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?a=8Bcnln_zf7o:tYhmxdjDFeo:BGfa-dtoa6M"><img src="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?i=8Bcnln_zf7o:tYhmxdjDFeo:BGfa-dtoa6M" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?a=8Bcnln_zf7o:tYhmxdjDFeo:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/WahidsSharepointBlog?i=8Bcnln_zf7o:tYhmxdjDFeo:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/WahidsSharepointBlog/~4/8Bcnln_zf7o" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.wahidsaleemi.com/2011/10/spc11-enterprise-deployment-of-user-profile-service-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.wahidsaleemi.com/2011/10/spc11-enterprise-deployment-of-user-profile-service-2/</feedburner:origLink></item>
	<item><title>San Fernando Valley SPUG Meeting #2 [Digg]</title><link>http://feedproxy.google.com/~r/WahidsSharepointBlog/~3/S8_QwqxAkzk/san_fernando_valley_spug_meeting_2</link><dc:creator>Digg</dc:creator><pubDate>Fri, 11 Feb 2011 18:35:21 PST</pubDate><guid isPermaLink="false">http://digg.com/news/technology/san_fernando_valley_spug_meeting_2</guid><description>Come out and get some free training and insights from some SharePoint experts. If you live in the San Fernando Valley (California) area (or Ventura County, LA&lt;img src="http://feeds.feedburner.com/~r/WahidsSharepointBlog/~4/S8_QwqxAkzk" height="1" width="1"/&gt;</description><digg:diggCount xmlns:digg="http://digg.com/docs/diggrss/">
			1
		</digg:diggCount><digg:category xmlns:digg="http://digg.com/docs/diggrss/">
			Technology
		</digg:category><digg:commentCount xmlns:digg="http://digg.com/docs/diggrss/">
			0
		</digg:commentCount><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="62" url="http://cdn2.diggstatic.com/story/san_fernando_valley_spug_meeting_2/t.png" width="62" /><media:group xmlns:media="http://search.yahoo.com/mrss/">
			<media:content height="160" url="http://cdn1.diggstatic.com/story/san_fernando_valley_spug_meeting_2/l.png" width="160" />
			<media:content height="48" url="http://cdn3.diggstatic.com/story/san_fernando_valley_spug_meeting_2/s.png" width="48" />
			<media:content height="120" url="http://cdn2.diggstatic.com/story/san_fernando_valley_spug_meeting_2/m.png" width="120" />
			<media:content height="62" url="http://cdn2.diggstatic.com/story/san_fernando_valley_spug_meeting_2/t.png" width="62" />
		</media:group><digg:userActivity xmlns:digg="http://digg.com/docs/diggrss/">
			digg
		</digg:userActivity><digg:userActivity xmlns:digg="http://digg.com/docs/diggrss/">
			submission
		</digg:userActivity><feedburner:origLink>http://digg.com/news/technology/san_fernando_valley_spug_meeting_2?utm_campaign=Feed%3A+http%3A%2F%2Fservices.digg.com%2F2.0%2Fuser.getActivity%3Ftype%3Drss%26activity_type%3Ddigg%26username%3Dcraveness&amp;utm_medium=feed&amp;utm_source=diggapi</feedburner:origLink></item><item><title>Microsoft Awards Up to $8 Million in Cash and Software to Help Veterans Get Jobs: Microsoft today awarded grants to six organizations that help veterans and their spouses find jobs. The grants were part of the company’s Elevate America Veterans Initiative, a series of training and placement programs. [Digg]</title><link>http://feedproxy.google.com/~r/WahidsSharepointBlog/~3/wufFPc8jUks/microsoft_awards_up_to_8_million_in_cash_and_software_to_help_veterans_get_jobs_microsoft_today_awarded_grants_to_six_organizations_that_help_veterans_and_their_spouses_find_jobs_the_grants_were_part_of_the_company_s_elevate_america_veterans_initiative_a_series_of_training_and_placement_programs</link><dc:creator>Digg</dc:creator><pubDate>Wed, 10 Nov 2010 09:38:33 PST</pubDate><guid isPermaLink="false">http://digg.com/news/business/microsoft_awards_up_to_8_million_in_cash_and_software_to_help_veterans_get_jobs_microsoft_today_awarded_grants_to_six_organizations_that_help_veterans_and_their_spouses_find_jobs_the_grants_were_part_of_the_company_s_elevate_america_veterans_initiative_a_series_of_training_and_placement_programs</guid><description>Microsoft today awarded grants to six organizations that help veterans and their spouses find jobs. The grants were part of the company’s Elevate America Veterans Initiative, a series of training and placement programs.&lt;img src="http://feeds.feedburner.com/~r/WahidsSharepointBlog/~4/wufFPc8jUks" height="1" width="1"/&gt;</description><digg:diggCount xmlns:digg="http://digg.com/docs/diggrss/">
			2
		</digg:diggCount><digg:category xmlns:digg="http://digg.com/docs/diggrss/">
			Business
		</digg:category><digg:commentCount xmlns:digg="http://digg.com/docs/diggrss/">
			0
		</digg:commentCount><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="62" url="http://cdn2.diggstatic.com/story/microsoft_awards_up_to_8_million_in_cash_and_software_to_help_veterans_get_jobs_microsoft_today_awarded_grants_to_six_organizations_that_help_veterans_and_their_spouses_find_jobs_the_grants_were_part_of_the_company_s_elevate_america_veterans_initiative_a_series_of_training_and_placement_programs/t.png" width="62" /><media:group xmlns:media="http://search.yahoo.com/mrss/">
			<media:content height="160" url="http://cdn3.diggstatic.com/story/microsoft_awards_up_to_8_million_in_cash_and_software_to_help_veterans_get_jobs_microsoft_today_awarded_grants_to_six_organizations_that_help_veterans_and_their_spouses_find_jobs_the_grants_were_part_of_the_company_s_elevate_america_veterans_initiative_a_series_of_training_and_placement_programs/l.png" width="160" />
			<media:content height="48" url="http://cdn3.diggstatic.com/story/microsoft_awards_up_to_8_million_in_cash_and_software_to_help_veterans_get_jobs_microsoft_today_awarded_grants_to_six_organizations_that_help_veterans_and_their_spouses_find_jobs_the_grants_were_part_of_the_company_s_elevate_america_veterans_initiative_a_series_of_training_and_placement_programs/s.png" width="48" />
			<media:content height="120" url="http://cdn3.diggstatic.com/story/microsoft_awards_up_to_8_million_in_cash_and_software_to_help_veterans_get_jobs_microsoft_today_awarded_grants_to_six_organizations_that_help_veterans_and_their_spouses_find_jobs_the_grants_were_part_of_the_company_s_elevate_america_veterans_initiative_a_series_of_training_and_placement_programs/m.png" width="120" />
			<media:content height="62" url="http://cdn2.diggstatic.com/story/microsoft_awards_up_to_8_million_in_cash_and_software_to_help_veterans_get_jobs_microsoft_today_awarded_grants_to_six_organizations_that_help_veterans_and_their_spouses_find_jobs_the_grants_were_part_of_the_company_s_elevate_america_veterans_initiative_a_series_of_training_and_placement_programs/t.png" width="62" />
		</media:group><digg:userActivity xmlns:digg="http://digg.com/docs/diggrss/">
			digg
		</digg:userActivity><digg:userActivity xmlns:digg="http://digg.com/docs/diggrss/">
			submission
		</digg:userActivity><feedburner:origLink>http://digg.com/news/business/microsoft_awards_up_to_8_million_in_cash_and_software_to_help_veterans_get_jobs_microsoft_today_awarded_grants_to_six_organizations_that_help_veterans_and_their_spouses_find_jobs_the_grants_were_part_of_the_company_s_elevate_america_veterans_initiative_a_series_of_training_and_placement_programs?utm_campaign=Feed%3A+http%3A%2F%2Fservices.digg.com%2F2.0%2Fuser.getActivity%3Ftype%3Drss%26activity_type%3Ddigg%26username%3Dcraveness&amp;utm_medium=feed&amp;utm_source=diggapi</feedburner:origLink></item><item><title>SharePoint’s Explosive Job Growth | EndUserSharePoint.com [Digg]</title><link>http://feedproxy.google.com/~r/WahidsSharepointBlog/~3/4pSrieyDLVw/sharepoint_s_explosive_job_growth_endusersharepoint_com</link><dc:creator>Digg</dc:creator><pubDate>Thu, 26 Aug 2010 16:07:28 PDT</pubDate><guid isPermaLink="false">http://digg.com/news/technology/sharepoint_s_explosive_job_growth_endusersharepoint_com</guid><description>As you can see, the growth of SharePoint related jobs in the past 5 years has skyrocketed.&lt;img src="http://feeds.feedburner.com/~r/WahidsSharepointBlog/~4/4pSrieyDLVw" height="1" width="1"/&gt;</description><digg:diggCount xmlns:digg="http://digg.com/docs/diggrss/">
			1
		</digg:diggCount><digg:category xmlns:digg="http://digg.com/docs/diggrss/">
			Technology
		</digg:category><digg:commentCount xmlns:digg="http://digg.com/docs/diggrss/">
			1
		</digg:commentCount><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="62" url="http://cdn2.diggstatic.com/story/sharepoint_s_explosive_job_growth_endusersharepoint_com/t.png" width="62" /><media:group xmlns:media="http://search.yahoo.com/mrss/">
			<media:content height="160" url="http://cdn1.diggstatic.com/story/sharepoint_s_explosive_job_growth_endusersharepoint_com/l.png" width="160" />
			<media:content height="48" url="http://cdn1.diggstatic.com/story/sharepoint_s_explosive_job_growth_endusersharepoint_com/s.png" width="48" />
			<media:content height="120" url="http://cdn2.diggstatic.com/story/sharepoint_s_explosive_job_growth_endusersharepoint_com/m.png" width="120" />
			<media:content height="62" url="http://cdn2.diggstatic.com/story/sharepoint_s_explosive_job_growth_endusersharepoint_com/t.png" width="62" />
		</media:group><digg:userActivity xmlns:digg="http://digg.com/docs/diggrss/">
			comment
		</digg:userActivity><digg:userActivity xmlns:digg="http://digg.com/docs/diggrss/">
			digg
		</digg:userActivity><digg:userActivity xmlns:digg="http://digg.com/docs/diggrss/">
			submission
		</digg:userActivity><feedburner:origLink>http://digg.com/news/technology/sharepoint_s_explosive_job_growth_endusersharepoint_com?utm_campaign=Feed%3A+http%3A%2F%2Fservices.digg.com%2F2.0%2Fuser.getActivity%3Ftype%3Drss%26activity_type%3Ddigg%26username%3Dcraveness&amp;utm_medium=feed&amp;utm_source=diggapi</feedburner:origLink></item><item><title>Updated Guidance on SharePoint 2010 Upgrade and the FAB 40 application templates - SharePoint Joel's SharePoint Land [Digg]</title><link>http://feedproxy.google.com/~r/WahidsSharepointBlog/~3/tTBjwc-TKuQ/updated_guidance_on_sharepoint_2010_upgrade_and_the_fab_40_application_templates_sharepoint_joel_s_sharepoint_land</link><dc:creator>Digg</dc:creator><pubDate>Thu, 26 Aug 2010 16:02:39 PDT</pubDate><guid isPermaLink="false">http://digg.com/news/technology/updated_guidance_on_sharepoint_2010_upgrade_and_the_fab_40_application_templates_sharepoint_joel_s_sharepoint_land</guid><description>I’ve been telling people that Microsoft would be providing some guidance, and some of that guidance has come. Samantha Robertson a technical writer on the SharePoint team who is the author for much of the upgrade content on 2007 and 2010 on TechNet often without credit has posted some guidance.&lt;img src="http://feeds.feedburner.com/~r/WahidsSharepointBlog/~4/tTBjwc-TKuQ" height="1" width="1"/&gt;</description><digg:diggCount xmlns:digg="http://digg.com/docs/diggrss/">
			1
		</digg:diggCount><digg:category xmlns:digg="http://digg.com/docs/diggrss/">
			Technology
		</digg:category><digg:commentCount xmlns:digg="http://digg.com/docs/diggrss/">
			0
		</digg:commentCount><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="62" url="http://cdn2.diggstatic.com/story/updated_guidance_on_sharepoint_2010_upgrade_and_the_fab_40_application_templates_sharepoint_joel_s_sharepoint_land/t.png" width="62" /><media:group xmlns:media="http://search.yahoo.com/mrss/">
			<media:content height="160" url="http://cdn1.diggstatic.com/story/updated_guidance_on_sharepoint_2010_upgrade_and_the_fab_40_application_templates_sharepoint_joel_s_sharepoint_land/l.png" width="160" />
			<media:content height="48" url="http://cdn3.diggstatic.com/story/updated_guidance_on_sharepoint_2010_upgrade_and_the_fab_40_application_templates_sharepoint_joel_s_sharepoint_land/s.png" width="48" />
			<media:content height="120" url="http://cdn1.diggstatic.com/story/updated_guidance_on_sharepoint_2010_upgrade_and_the_fab_40_application_templates_sharepoint_joel_s_sharepoint_land/m.png" width="120" />
			<media:content height="62" url="http://cdn2.diggstatic.com/story/updated_guidance_on_sharepoint_2010_upgrade_and_the_fab_40_application_templates_sharepoint_joel_s_sharepoint_land/t.png" width="62" />
		</media:group><digg:userActivity xmlns:digg="http://digg.com/docs/diggrss/">
			digg
		</digg:userActivity><digg:userActivity xmlns:digg="http://digg.com/docs/diggrss/">
			submission
		</digg:userActivity><feedburner:origLink>http://digg.com/news/technology/updated_guidance_on_sharepoint_2010_upgrade_and_the_fab_40_application_templates_sharepoint_joel_s_sharepoint_land?utm_campaign=Feed%3A+http%3A%2F%2Fservices.digg.com%2F2.0%2Fuser.getActivity%3Ftype%3Drss%26activity_type%3Ddigg%26username%3Dcraveness&amp;utm_medium=feed&amp;utm_source=diggapi</feedburner:origLink></item><item><title>Microsoft Online Services (BPOS) migration and on-boarding deep dive - UK SBSC - Site Home - TechNet Blogs [Digg]</title><link>http://feedproxy.google.com/~r/WahidsSharepointBlog/~3/H1Qox7uqNPQ/microsoft_online_services_bpos_migration_and_on_boarding_deep_dive_uk_sbsc_site_home_technet_blogs</link><dc:creator>Digg</dc:creator><pubDate>Thu, 26 Aug 2010 16:01:34 PDT</pubDate><guid isPermaLink="false">http://digg.com/news/technology/microsoft_online_services_bpos_migration_and_on_boarding_deep_dive_uk_sbsc_site_home_technet_blogs</guid><description>This two-day instructor-led course provides students with the skills to identify key technical issues that can prevent an organisation moving to Microsoft Online Services.&lt;img src="http://feeds.feedburner.com/~r/WahidsSharepointBlog/~4/H1Qox7uqNPQ" height="1" width="1"/&gt;</description><digg:diggCount xmlns:digg="http://digg.com/docs/diggrss/">
			1
		</digg:diggCount><digg:category xmlns:digg="http://digg.com/docs/diggrss/">
			Technology
		</digg:category><digg:commentCount xmlns:digg="http://digg.com/docs/diggrss/">
			0
		</digg:commentCount><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="62" url="http://cdn2.diggstatic.com/story/microsoft_online_services_bpos_migration_and_on_boarding_deep_dive_uk_sbsc_site_home_technet_blogs/t.png" width="62" /><media:group xmlns:media="http://search.yahoo.com/mrss/">
			<media:content height="160" url="http://cdn3.diggstatic.com/story/microsoft_online_services_bpos_migration_and_on_boarding_deep_dive_uk_sbsc_site_home_technet_blogs/l.png" width="160" />
			<media:content height="48" url="http://cdn1.diggstatic.com/story/microsoft_online_services_bpos_migration_and_on_boarding_deep_dive_uk_sbsc_site_home_technet_blogs/s.png" width="48" />
			<media:content height="120" url="http://cdn3.diggstatic.com/story/microsoft_online_services_bpos_migration_and_on_boarding_deep_dive_uk_sbsc_site_home_technet_blogs/m.png" width="120" />
			<media:content height="62" url="http://cdn2.diggstatic.com/story/microsoft_online_services_bpos_migration_and_on_boarding_deep_dive_uk_sbsc_site_home_technet_blogs/t.png" width="62" />
		</media:group><digg:userActivity xmlns:digg="http://digg.com/docs/diggrss/">
			digg
		</digg:userActivity><digg:userActivity xmlns:digg="http://digg.com/docs/diggrss/">
			submission
		</digg:userActivity><feedburner:origLink>http://digg.com/news/technology/microsoft_online_services_bpos_migration_and_on_boarding_deep_dive_uk_sbsc_site_home_technet_blogs?utm_campaign=Feed%3A+http%3A%2F%2Fservices.digg.com%2F2.0%2Fuser.getActivity%3Ftype%3Drss%26activity_type%3Ddigg%26username%3Dcraveness&amp;utm_medium=feed&amp;utm_source=diggapi</feedburner:origLink></item><item><title>Audi Confirms RS5 Coupe For U.S., Coming In 2012 [Digg]</title><link>http://feedproxy.google.com/~r/WahidsSharepointBlog/~3/FOS6NIS6-Xw/Audi_Confirms_RS5_Coupe_For_U_S_Coming_In_2012</link><dc:creator>Digg</dc:creator><pubDate>Fri, 23 Jul 2010 15:26:57 PDT</pubDate><guid isPermaLink="false">http://digg.com/news/lifestyle/Audi_Confirms_RS5_Coupe_For_U_S_Coming_In_2012</guid><description>Get ready for some raucous Audi awesomeness, America. The Audi RS5 Coupe has just been confirmed for your driving pleasure. The only bad news: it won't get here until 2012. In the meantime, you can put your spare cash to use with the just-priced 1,000 R8 Spyder 5.2 quattro.&lt;img src="http://feeds.feedburner.com/~r/WahidsSharepointBlog/~4/FOS6NIS6-Xw" height="1" width="1"/&gt;</description><digg:diggCount xmlns:digg="http://digg.com/docs/diggrss/">
			289
		</digg:diggCount><digg:category xmlns:digg="http://digg.com/docs/diggrss/">
			Lifestyle
		</digg:category><digg:commentCount xmlns:digg="http://digg.com/docs/diggrss/">
			24
		</digg:commentCount><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="62" url="http://cdn2.diggstatic.com/story/Audi_Confirms_RS5_Coupe_For_U_S_Coming_In_2012/t.png" width="62" /><media:group xmlns:media="http://search.yahoo.com/mrss/">
			<media:content height="160" url="http://cdn3.diggstatic.com/story/Audi_Confirms_RS5_Coupe_For_U_S_Coming_In_2012/l.png" width="160" />
			<media:content height="48" url="http://cdn1.diggstatic.com/story/Audi_Confirms_RS5_Coupe_For_U_S_Coming_In_2012/s.png" width="48" />
			<media:content height="120" url="http://cdn3.diggstatic.com/story/Audi_Confirms_RS5_Coupe_For_U_S_Coming_In_2012/m.png" width="120" />
			<media:content height="62" url="http://cdn2.diggstatic.com/story/Audi_Confirms_RS5_Coupe_For_U_S_Coming_In_2012/t.png" width="62" />
		</media:group><digg:userActivity xmlns:digg="http://digg.com/docs/diggrss/">
			digg
		</digg:userActivity><feedburner:origLink>http://digg.com/news/lifestyle/Audi_Confirms_RS5_Coupe_For_U_S_Coming_In_2012?utm_campaign=Feed%3A+http%3A%2F%2Fservices.digg.com%2F2.0%2Fuser.getActivity%3Ftype%3Drss%26activity_type%3Ddigg%26username%3Dcraveness&amp;utm_medium=feed&amp;utm_source=diggapi</feedburner:origLink></item><item><title>BBC News - £260m 'wasted' in axing school building plans [Digg]</title><link>http://feedproxy.google.com/~r/WahidsSharepointBlog/~3/VL6abYHTErI/BBC_News_p260m_wasted_in_axing_school_building_plans</link><dc:creator>Digg</dc:creator><pubDate>Tue, 13 Jul 2010 14:21:01 PDT</pubDate><guid isPermaLink="false">http://digg.com/news/business/BBC_News_p260m_wasted_in_axing_school_building_plans</guid><description>Councils and construction firms say they have lost large sums in the scrapping of school building plans.&lt;img src="http://feeds.feedburner.com/~r/WahidsSharepointBlog/~4/VL6abYHTErI" height="1" width="1"/&gt;</description><digg:diggCount xmlns:digg="http://digg.com/docs/diggrss/">
			1
		</digg:diggCount><digg:category xmlns:digg="http://digg.com/docs/diggrss/">
			Business
		</digg:category><digg:commentCount xmlns:digg="http://digg.com/docs/diggrss/">
			0
		</digg:commentCount><digg:userActivity xmlns:digg="http://digg.com/docs/diggrss/">
			digg
		</digg:userActivity><feedburner:origLink>http://digg.com/news/business/BBC_News_p260m_wasted_in_axing_school_building_plans?utm_campaign=Feed%3A+http%3A%2F%2Fservices.digg.com%2F2.0%2Fuser.getActivity%3Ftype%3Drss%26activity_type%3Ddigg%26username%3Dcraveness&amp;utm_medium=feed&amp;utm_source=diggapi</feedburner:origLink></item><item><title>Mother jailed for sex with son she gave up for adoption [Digg]</title><link>http://feedproxy.google.com/~r/WahidsSharepointBlog/~3/HVGsKPS4Po8/Mother_jailed_for_sex_with_son_she_gave_up_for_adoption</link><dc:creator>Digg</dc:creator><pubDate>Mon, 12 Jul 2010 22:16:11 PDT</pubDate><guid isPermaLink="false">http://digg.com/news/offbeat/Mother_jailed_for_sex_with_son_she_gave_up_for_adoption</guid><description>A US woman who pleaded guilty to having sex with the biological son she gave up for adoption and later tracked down on the internet has been sentenced to up to nine years in prison.&lt;img src="http://feeds.feedburner.com/~r/WahidsSharepointBlog/~4/HVGsKPS4Po8" height="1" width="1"/&gt;</description><digg:diggCount xmlns:digg="http://digg.com/docs/diggrss/">
			340
		</digg:diggCount><digg:category xmlns:digg="http://digg.com/docs/diggrss/">
			Offbeat
		</digg:category><digg:commentCount xmlns:digg="http://digg.com/docs/diggrss/">
			235
		</digg:commentCount><digg:userActivity xmlns:digg="http://digg.com/docs/diggrss/">
			digg
		</digg:userActivity><feedburner:origLink>http://digg.com/news/offbeat/Mother_jailed_for_sex_with_son_she_gave_up_for_adoption?utm_campaign=Feed%3A+http%3A%2F%2Fservices.digg.com%2F2.0%2Fuser.getActivity%3Ftype%3Drss%26activity_type%3Ddigg%26username%3Dcraveness&amp;utm_medium=feed&amp;utm_source=diggapi</feedburner:origLink></item></channel>
</rss>

