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

<channel>
	<title>ARB Security Solutions</title>
	<atom:link href="http://www.sharepointsecurity.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.sharepointsecurity.com</link>
	<description>The Authorative Resource For SharePoint Security Articles, Research, Software, And Security Integration Consulting</description>
	<lastBuildDate>Thu, 18 Mar 2010 23:12:36 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Automating BizTalk 2009 Builds With TFS</title>
		<link>http://www.sharepointsecurity.com/sharepoint/team-foundation-server/automating-biztalk-2009-builds-with-tfs/</link>
		<comments>http://www.sharepointsecurity.com/sharepoint/team-foundation-server/automating-biztalk-2009-builds-with-tfs/#comments</comments>
		<pubDate>Thu, 18 Mar 2010 15:08:21 +0000</pubDate>
		<dc:creator>adam</dc:creator>
				<category><![CDATA[Team Foundation Server]]></category>

		<guid isPermaLink="false">http://www.sharepointsecurity.com/?p=3569</guid>
		<description><![CDATA[I was at a client today, working on a TFS 2008 cube corruption problem (I hate the super common code churn crap it always throws, requiring weird InstanceInfo and SetupWarehouse voodoo) when the subject of automating BizTalk 2009 projects came up. 
The company heavily uses BizTalk, so they threw up a staging server with BizTalk [...]]]></description>
			<content:encoded><![CDATA[<p>I was at a client today, working on a TFS 2008 cube corruption problem (I hate the super common code churn crap it always throws, requiring weird InstanceInfo and SetupWarehouse voodoo) when the subject of automating BizTalk 2009 projects came up. </p>
<p>The company heavily uses BizTalk, so they threw up a staging server with BizTalk 2009 on it and ran the Team Foundation Server Build Setup. After this, building non-BizTalk projects was working just fine, but BizTalk projects fail to build. After examining the box, they had copied various things from a BizTalk development workstation, but none of the additions had any effect. The rationale behind this was they don&#8217;t want Visual Studio on the staging server, but without it when running the BizTalk install the Developer Tools and SDK option is not selectable.</p>
<p>To get around this, look during the installation of BizTalk under Additional Software, and find the Project Build Component feature. While this allows for builds without Visual Studio, it should be noted that you can&#8217;t generate MSI packages, just build stuff.</p>
<a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fwww.sharepointsecurity.com%2Fsharepoint%2Fteam-foundation-server%2Fautomating-biztalk-2009-builds-with-tfs%2F&amp;linkname=Automating%20BizTalk%202009%20Builds%20With%20TFS"><img src="http://www.sharepointsecurity.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a>
	<h4>Related posts</h4>
	<ul class="st-related-posts">
	<li>No related posts.</li>
	</ul>

]]></content:encoded>
			<wfw:commentRss>http://www.sharepointsecurity.com/sharepoint/team-foundation-server/automating-biztalk-2009-builds-with-tfs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>TFS 2010 &#8211; Sequential As Opposed To Parallel Builds</title>
		<link>http://www.sharepointsecurity.com/sharepoint/team-foundation-server/tfs-2010-sequential-as-opposed-to-parallel-builds/</link>
		<comments>http://www.sharepointsecurity.com/sharepoint/team-foundation-server/tfs-2010-sequential-as-opposed-to-parallel-builds/#comments</comments>
		<pubDate>Thu, 18 Mar 2010 14:56:53 +0000</pubDate>
		<dc:creator>adam</dc:creator>
				<category><![CDATA[Team Foundation Server]]></category>

		<guid isPermaLink="false">http://www.sharepointsecurity.com/?p=3567</guid>
		<description><![CDATA[A client was asking me this today so I decided to make a quick note and send a link  
In TFS 2010 when trying to make Sequential builds (i.e. for one you have several interdependent solutions in your automation strategy) in the DefaultTemplate XAML file you have to change the  tag to . [...]]]></description>
			<content:encoded><![CDATA[<p>A client was asking me this today so I decided to make a quick note and send a link <img src='http://www.sharepointsecurity.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' title="TFS 2010   Sequential As Opposed To Parallel Builds" /> </p>
<p>In TFS 2010 when trying to make Sequential builds (i.e. for one you have several interdependent solutions in your automation strategy) in the DefaultTemplate XAML file you have to change the <code><Parallel></code> tag to <code><Sequence></code>. It should be noted that this is a lot different than TFS 2008. In TFS 2008, in the <strong>TFSBuild.proj</strong> file the solutions were just ordered correctly and made use of the <strong>BuildSolutionsInParallel</strong> property. This also required changing the setting for the <strong>MaxProcesses</strong> in the tfsbuildservice.exe.config file on the build server to a value greater 1, and also to restarting the build service on the build server. This is a lot more cumbersome than changing the type tag mentioned above.</p>
<a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fwww.sharepointsecurity.com%2Fsharepoint%2Fteam-foundation-server%2Ftfs-2010-sequential-as-opposed-to-parallel-builds%2F&amp;linkname=TFS%202010%20%26%238211%3B%20Sequential%20As%20Opposed%20To%20Parallel%20Builds"><img src="http://www.sharepointsecurity.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a>
	<h4>Related posts</h4>
	<ul class="st-related-posts">
	<li>No related posts.</li>
	</ul>

]]></content:encoded>
			<wfw:commentRss>http://www.sharepointsecurity.com/sharepoint/team-foundation-server/tfs-2010-sequential-as-opposed-to-parallel-builds/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ForeFront for SharePoint High Memory Utilization</title>
		<link>http://www.sharepointsecurity.com/sharepoint/forefront/forefront-for-sharepoint-high-memory-utilization/</link>
		<comments>http://www.sharepointsecurity.com/sharepoint/forefront/forefront-for-sharepoint-high-memory-utilization/#comments</comments>
		<pubDate>Fri, 19 Feb 2010 01:14:11 +0000</pubDate>
		<dc:creator>adam</dc:creator>
				<category><![CDATA[Forefront]]></category>

		<guid isPermaLink="false">http://www.sharepointsecurity.com/?p=3318</guid>
		<description><![CDATA[At a client of mine today, who has a robust FSSP environment, similar to the larger one I wrote about in this MSDN article:
http://msdn.microsoft.com/en-us/library/ee412237.aspx
or if you are just interested in the specific image:
http://i.msdn.microsoft.com/Ee412237.792e5c8b-f1b7-4cb4-9b87-5689c44973da(en-us,office.12).gif
was experiencing an abnormal amount of memory utilization on the WFE’s I had built for them. While they wanted a quick fix, it [...]]]></description>
			<content:encoded><![CDATA[<p>At a client of mine today, who has a robust FSSP environment, similar to the larger one I wrote about in this MSDN article:</p>
<p>http://msdn.microsoft.com/en-us/library/ee412237.aspx</p>
<p>or if you are just interested in the specific image:</p>
<p>http://i.msdn.microsoft.com/Ee412237.792e5c8b-f1b7-4cb4-9b87-5689c44973da(en-us,office.12).gif</p>
<p>was experiencing an abnormal amount of memory utilization on the WFE’s I had built for them. While they wanted a quick fix, it is important to remember that the scanning processes of FSSP will cause memory consumption depending on how you balance the engines being used. Forefront uses in-memory scanning (<strong>FSCRealtimeScanner.exe</strong>) and up to 5 scan engines can be employed so each scan process will load the engines that you have enabled under <strong>SETTINGS>Anti Virus</strong>. </p>
<p>For each of the scanning processes ~ 200-300MB RAM will generally be consumed depending the file being processed since the file being scanned is loaded into memory. Thus, if a scan is being executed on a file that is 200 MB and further 200MB RAM utilized. Once the scan is complete, this memory will return to the available pool.</p>
<p>All this being said, explicit reduction of processes spawned is controllable by modifying the <strong>RealtimeProcessCount</strong> registry value (<strong>HKLM\SOFTWARE\Wow6432Node\Microsoft\Forefront Server Security\SharePoint</strong>), which would require restarting FSSP and SharePoint services, however this should be approached with caution since having several real-time processes allow FSSP to scan more than one file, thus avoiding scan-related bottlenecks.</p>
<p>The only recommendation that can be made is a review of the memory consumption to establish whether the memory consumption is normal, and thus requires expanding the available RAM or whether there is a separate problem. </p>
<a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fwww.sharepointsecurity.com%2Fsharepoint%2Fforefront%2Fforefront-for-sharepoint-high-memory-utilization%2F&amp;linkname=ForeFront%20for%20SharePoint%20High%20Memory%20Utilization"><img src="http://www.sharepointsecurity.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a>
	<h4>Related posts</h4>
	<ul class="st-related-posts">
	<li>No related posts.</li>
	</ul>

]]></content:encoded>
			<wfw:commentRss>http://www.sharepointsecurity.com/sharepoint/forefront/forefront-for-sharepoint-high-memory-utilization/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Developer Turnover and Maintaining Valid TFS Historical Data &#8211; TFS Error TF20015</title>
		<link>http://www.sharepointsecurity.com/sharepoint/team-foundation-server/developer-turnover-and-maintaining-valid-tfs-historical-data-tfs-error-tf20015/</link>
		<comments>http://www.sharepointsecurity.com/sharepoint/team-foundation-server/developer-turnover-and-maintaining-valid-tfs-historical-data-tfs-error-tf20015/#comments</comments>
		<pubDate>Wed, 17 Feb 2010 15:00:36 +0000</pubDate>
		<dc:creator>adam</dc:creator>
				<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[account]]></category>
		<category><![CDATA[active]]></category>
		<category><![CDATA[AD]]></category>
		<category><![CDATA[custom]]></category>
		<category><![CDATA[data]]></category>
		<category><![CDATA[date]]></category>
		<category><![CDATA[definition]]></category>
		<category><![CDATA[developer]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[director]]></category>
		<category><![CDATA[E]]></category>
		<category><![CDATA[environment]]></category>
		<category><![CDATA[fact]]></category>
		<category><![CDATA[field]]></category>
		<category><![CDATA[issue]]></category>
		<category><![CDATA[list]]></category>
		<category><![CDATA[maintaining]]></category>
		<category><![CDATA[order]]></category>
		<category><![CDATA[past]]></category>
		<category><![CDATA[port]]></category>
		<category><![CDATA[requirement]]></category>
		<category><![CDATA[restricted]]></category>
		<category><![CDATA[rms]]></category>
		<category><![CDATA[support]]></category>
		<category><![CDATA[template]]></category>
		<category><![CDATA[term]]></category>
		<category><![CDATA[terms]]></category>
		<category><![CDATA[TFS]]></category>
		<category><![CDATA[There]]></category>
		<category><![CDATA[update]]></category>
		<category><![CDATA[updates]]></category>
		<category><![CDATA[work]]></category>

		<guid isPermaLink="false">http://www.sharepointsecurity.com/?p=3287</guid>
		<description><![CDATA[When maintaining a TFS environment where WI&#8217;s become crucial in terms of development artifacts, you may notice an issue with removed AD accounts causing a problem where WI’s are not privy to updates because the account has been removed from Active Directory. This becomes a huge issue because updates to the WI are no longer [...]]]></description>
			<content:encoded><![CDATA[<p>When maintaining a TFS environment where WI&#8217;s become crucial in terms of development artifacts, you may notice an issue with removed AD accounts causing a problem where WI’s are not privy to updates because the account has been removed from Active Directory. This becomes a huge issue because updates to the WI are no longer supported.</p>
<p>Generally, this will throw the error:</p>
<blockquote><p>TFS Error: TF20015, stating that a field contains a value that is not on the supported list</p></blockquote>
<p>This leads to the requirement where a developer, even though they have gone onto greener pastures, has an invalid account value, within a value restricted field. Bad news bear.</p>
<p>Fortunately, there is a supported route you can take with TFS in order to overcome this issue. Using the <strong>ALLOWEXISTINGVALUE</strong> rule allows entered value to still be valid even if that value is no longer a valid value.  By customizing the process template work item types and use this definition for the field with invalid values.</p>
<p>Bada bing, good to go!</p>
<a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fwww.sharepointsecurity.com%2Fsharepoint%2Fteam-foundation-server%2Fdeveloper-turnover-and-maintaining-valid-tfs-historical-data-tfs-error-tf20015%2F&amp;linkname=Developer%20Turnover%20and%20Maintaining%20Valid%20TFS%20Historical%20Data%20%26%238211%3B%20TFS%20Error%20TF20015"><img src="http://www.sharepointsecurity.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a>
	<h4>Related posts</h4>
	<ul class="st-related-posts">
	<li><a href="http://www.sharepointsecurity.com/sharepoint/team-foundation-server/tfs-proxy-server-unexpected-shutdowns/" title="TFS Proxy Server Unexpected Shutdowns (February 15, 2010)">TFS Proxy Server Unexpected Shutdowns</a> (2)</li>
	<li><a href="http://www.sharepointsecurity.com/sharepoint/isa-server/forefront-tmg-and-active-ftp-issues/" title="ForeFront TMG and Active FTP Issues (February 9, 2010)">ForeFront TMG and Active FTP Issues</a> (1)</li>
	<li><a href="http://www.sharepointsecurity.com/sharepoint/team-foundation-server/high-querybuildqueue-execution-time-no-problem/" title="High QueryBuildQueue Execution Time? No Problem! (February 12, 2010)">High QueryBuildQueue Execution Time? No Problem!</a> (0)</li>
	<li><a href="http://www.sharepointsecurity.com/sharepoint/claims-based-authentication/sharepoint-claims-based-authentication-architectures-explained-part-8-design-principles-for-claims-based-applications/" title="SharePoint Claims Based Authentication Architectures Explained – Part 8 – Design Principles for Claims Based Applications (December 8, 2009)">SharePoint Claims Based Authentication Architectures Explained – Part 8 – Design Principles for Claims Based Applications</a> (0)</li>
	<li><a href="http://www.sharepointsecurity.com/sharepoint/claims-based-authentication/sharepoint-claims-based-authentication-architectures-explained-part-7-transforming-identity-in-sharepoint/" title="SharePoint Claims Based Authentication Architectures Explained – Part 7 – Transforming Identity In SharePoint (December 8, 2009)">SharePoint Claims Based Authentication Architectures Explained – Part 7 – Transforming Identity In SharePoint</a> (1)</li>
</ul>

]]></content:encoded>
			<wfw:commentRss>http://www.sharepointsecurity.com/sharepoint/team-foundation-server/developer-turnover-and-maintaining-valid-tfs-historical-data-tfs-error-tf20015/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Exploding TFS Groups For User Investigation</title>
		<link>http://www.sharepointsecurity.com/sharepoint/team-foundation-server/exploding-tfs-groups-for-user-investigation/</link>
		<comments>http://www.sharepointsecurity.com/sharepoint/team-foundation-server/exploding-tfs-groups-for-user-investigation/#comments</comments>
		<pubDate>Tue, 16 Feb 2010 15:00:31 +0000</pubDate>
		<dc:creator>adam</dc:creator>
				<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[E]]></category>
		<category><![CDATA[explorer]]></category>
		<category><![CDATA[format]]></category>
		<category><![CDATA[group]]></category>
		<category><![CDATA[groups]]></category>
		<category><![CDATA[important]]></category>
		<category><![CDATA[issue]]></category>
		<category><![CDATA[limitation]]></category>
		<category><![CDATA[list]]></category>
		<category><![CDATA[members]]></category>
		<category><![CDATA[membership]]></category>
		<category><![CDATA[MIT]]></category>
		<category><![CDATA[port]]></category>
		<category><![CDATA[project]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[settings]]></category>
		<category><![CDATA[specific]]></category>
		<category><![CDATA[team]]></category>
		<category><![CDATA[TFS]]></category>
		<category><![CDATA[tool]]></category>
		<category><![CDATA[user]]></category>
		<category><![CDATA[users]]></category>
		<category><![CDATA[view]]></category>
		<category><![CDATA[visual]]></category>
		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://www.sharepointsecurity.com/?p=3285</guid>
		<description><![CDATA[When users are using Team Explorer and viewing the group membership for a particular project (Team Project Settings -> Group Membership) it’s pretty easy because explicit users and groups are listed. However, this becomes a problem when you want to view all the users of that particular group. This is very, very evident when the [...]]]></description>
			<content:encoded><![CDATA[<p>When users are using Team Explorer and viewing the group membership for a particular project (<strong>Team Project Settings</strong> -> <strong>Group Membership</strong>) it’s pretty easy because explicit users and groups are listed. However, this becomes a problem when you want to view all the users of that particular group. This is very, very evident when the groups are chained, i.e. Group X contains Group Y, which contains Group z, and so forth. This becomes an issue because viewing the security information for a particular security group becomes very limited.</p>
<p>Fortunately, to get around this limitation you can use the <strong>TfsSecurity</strong> tool, specifically the <strong>TfsSecurity /imx</strong> command, to get the direct members of the specified group.</p>
<p>It is important to remember that <strong>TfsSecurity.exe</strong> comes from Team Explorer, not the Visual Studio shell. </p>
<a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fwww.sharepointsecurity.com%2Fsharepoint%2Fteam-foundation-server%2Fexploding-tfs-groups-for-user-investigation%2F&amp;linkname=Exploding%20TFS%20Groups%20For%20User%20Investigation"><img src="http://www.sharepointsecurity.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a>
	<h4>Related posts</h4>
	<ul class="st-related-posts">
	<li><a href="http://www.sharepointsecurity.com/sharepoint/team-foundation-server/tfs-proxy-server-unexpected-shutdowns/" title="TFS Proxy Server Unexpected Shutdowns (February 15, 2010)">TFS Proxy Server Unexpected Shutdowns</a> (2)</li>
	<li><a href="http://www.sharepointsecurity.com/sharepoint/claims-based-authentication/sharepoint-claims-based-authentication-architectures-explained-part-8-design-principles-for-claims-based-applications/" title="SharePoint Claims Based Authentication Architectures Explained – Part 8 – Design Principles for Claims Based Applications (December 8, 2009)">SharePoint Claims Based Authentication Architectures Explained – Part 8 – Design Principles for Claims Based Applications</a> (0)</li>
	<li><a href="http://www.sharepointsecurity.com/sharepoint/claims-based-authentication/sharepoint-claims-based-authentication-architectures-explained-part-1-intro-to-claims-architectures/" title="SharePoint Claims Based Authentication Architectures Explained &#8211; Part 1 &#8211; Intro To Claims Architectures (December 8, 2009)">SharePoint Claims Based Authentication Architectures Explained &#8211; Part 1 &#8211; Intro To Claims Architectures</a> (0)</li>
	<li><a href="http://www.sharepointsecurity.com/sharepoint/sharepoint-development/free-sharepoint-redirection-webpart-programming-sharepoint-webparts-with-linq-to-active-directory-part-1/" title="Free SharePoint Redirection WebPart  &#8211; Programming SharePoint WebParts With LINQ to Active Directory &#8211; Part 1 (October 31, 2009)">Free SharePoint Redirection WebPart  &#8211; Programming SharePoint WebParts With LINQ to Active Directory &#8211; Part 1</a> (2)</li>
	<li><a href="http://www.sharepointsecurity.com/sharepoint/claims-based-authentication/sharepoint-claims-based-authentication-architectures-explained-part-9-specifying-the-identity-of-a-given-user/" title="SharePoint Claims Based Authentication Architectures Explained – Part 9 – Specifying the Identity of a Given User (December 8, 2009)">SharePoint Claims Based Authentication Architectures Explained – Part 9 – Specifying the Identity of a Given User</a> (0)</li>
</ul>

]]></content:encoded>
			<wfw:commentRss>http://www.sharepointsecurity.com/sharepoint/team-foundation-server/exploding-tfs-groups-for-user-investigation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>TFS Proxy Server Unexpected Shutdowns</title>
		<link>http://www.sharepointsecurity.com/sharepoint/team-foundation-server/tfs-proxy-server-unexpected-shutdowns/</link>
		<comments>http://www.sharepointsecurity.com/sharepoint/team-foundation-server/tfs-proxy-server-unexpected-shutdowns/#comments</comments>
		<pubDate>Mon, 15 Feb 2010 15:00:11 +0000</pubDate>
		<dc:creator>adam</dc:creator>
				<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[AD]]></category>
		<category><![CDATA[App Pool]]></category>
		<category><![CDATA[application]]></category>
		<category><![CDATA[architect]]></category>
		<category><![CDATA[caching]]></category>
		<category><![CDATA[change]]></category>
		<category><![CDATA[client]]></category>
		<category><![CDATA[config]]></category>
		<category><![CDATA[configuration]]></category>
		<category><![CDATA[control]]></category>
		<category><![CDATA[current]]></category>
		<category><![CDATA[data]]></category>
		<category><![CDATA[developer]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[director]]></category>
		<category><![CDATA[E]]></category>
		<category><![CDATA[environment]]></category>
		<category><![CDATA[essential]]></category>
		<category><![CDATA[experience]]></category>
		<category><![CDATA[figure]]></category>
		<category><![CDATA[file]]></category>
		<category><![CDATA[files]]></category>
		<category><![CDATA[folder]]></category>
		<category><![CDATA[format]]></category>
		<category><![CDATA[HTTP]]></category>
		<category><![CDATA[iis]]></category>
		<category><![CDATA[issue]]></category>
		<category><![CDATA[message]]></category>
		<category><![CDATA[MIT]]></category>
		<category><![CDATA[ML]]></category>
		<category><![CDATA[net]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[order]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[point]]></category>
		<category><![CDATA[pps]]></category>
		<category><![CDATA[proxy server]]></category>
		<category><![CDATA[recycle]]></category>
		<category><![CDATA[registration]]></category>
		<category><![CDATA[requirement]]></category>
		<category><![CDATA[server]]></category>
		<category><![CDATA[servers]]></category>
		<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[SharePoint Development]]></category>
		<category><![CDATA[storage]]></category>
		<category><![CDATA[team]]></category>
		<category><![CDATA[tec]]></category>
		<category><![CDATA[TFS]]></category>
		<category><![CDATA[true]]></category>
		<category><![CDATA[url]]></category>
		<category><![CDATA[visual]]></category>
		<category><![CDATA[Visual Studio]]></category>
		<category><![CDATA[web.config]]></category>
		<category><![CDATA[web.config file]]></category>
		<category><![CDATA[work]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://www.sharepointsecurity.com/?p=3282</guid>
		<description><![CDATA[TFS Proxy Servers are essential for my current client’s TFSenvironment because they allow the disparate SharePoint development environment to experience improved network performance by caching copies of VC files. Since this particular environment is geo-distributed, this is a necessary architectural requirement in order to maintain appropriate developer efficiency. 
Recently, a strange issue was occurring with [...]]]></description>
			<content:encoded><![CDATA[<p>TFS Proxy Servers are essential for my current client’s TFSenvironment because they allow the disparate SharePoint development environment to experience improved network performance by caching copies of VC files. Since this particular environment is geo-distributed, this is a necessary architectural requirement in order to maintain appropriate developer efficiency. </p>
<p>Recently, a strange issue was occurring with my clients geo-environment where the proxy servers would start shutting down repetitively. The exact error you may run into is:</p>
<blockquote><p>
The VSTF Proxy Server stopped at [server]. The application is being shutdown for the following reason: HostingEnvironment. For more information ....."
</p></blockquote>
<p>Now this can happen for a variety of reasons, but first thing is you should enable proxy server tracing to get some more relevant error information by opening the <strong>web.config</strong> in the <strong>VersionControlProxy</strong> folder by setting the <strong>traceDirectoryName </strong> to a familiar storage location and changing <strong>traceWriter</strong> to <strong>true</strong>. For this particular error, one of the error returns can be:</p>
<blockquote><p>
Detailed Message: TF53002: Unable to obtain registration data for application VersionControl.<br />
TF30055: Visual Studio could not find or read the Team Foundation Server server name in the configuration file. Contact your Team Foundation Server administrator. (type VstfNotConfiguredException)
</p></blockquote>
<p>If you get this error, the <strong>TfsNameUrl</strong> appsetting is not configured in the web.config file for the proxy server. Locate the:</p>
<div class="igBar"><span id="lxml-2"><a href="#" onclick="javascript:showPlainTxt('xml-2'); return false;">PLAIN TEXT</a></span></div>
<div class="syntax_hilite"><span class="langName">XML:</span>
<div id="xml-2">
<div class="xml">
<ol>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;add</span> <span style="color: #000066;">key</span>=<span style="color: #ff0000;">"TFSNameUrl"</span> <span style="color: #000066;">value</span>=<span style="color: #ff0000;">"http://TFSServerName:8080"</span> <span style="font-weight: bold; color: black;">/&gt;</span></span> </div>
</li>
</ol>
</div>
</div>
</div>
<p></p>
<p>element and change it. After, check your IIS app pool setting and check that the recycle interval or memory limit. After, you should be good to go!</p>
<a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fwww.sharepointsecurity.com%2Fsharepoint%2Fteam-foundation-server%2Ftfs-proxy-server-unexpected-shutdowns%2F&amp;linkname=TFS%20Proxy%20Server%20Unexpected%20Shutdowns"><img src="http://www.sharepointsecurity.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a>
	<h4>Related posts</h4>
	<ul class="st-related-posts">
	<li><a href="http://www.sharepointsecurity.com/sharepoint/claims-based-authentication/sharepoint-claims-based-authentication-architectures-explained-part-1-intro-to-claims-architectures/" title="SharePoint Claims Based Authentication Architectures Explained &#8211; Part 1 &#8211; Intro To Claims Architectures (December 8, 2009)">SharePoint Claims Based Authentication Architectures Explained &#8211; Part 1 &#8211; Intro To Claims Architectures</a> (0)</li>
	<li><a href="http://www.sharepointsecurity.com/sharepoint/claims-based-authentication/sharepoint-claims-based-authentication-architectures-explained-part-2-sharepoint-as-a-browser-based-application/" title="SharePoint Claims Based Authentication Architectures Explained – Part 3 – SharePoint As A Browser Based Application (December 8, 2009)">SharePoint Claims Based Authentication Architectures Explained – Part 3 – SharePoint As A Browser Based Application</a> (1)</li>
	<li><a href="http://www.sharepointsecurity.com/sharepoint/isa-server/forefront-tmg-and-active-ftp-issues/" title="ForeFront TMG and Active FTP Issues (February 9, 2010)">ForeFront TMG and Active FTP Issues</a> (1)</li>
	<li><a href="http://www.sharepointsecurity.com/sharepoint/isa-server/tmg-web-publishing-for-sharepoint-https-no-certificate-usage-on-tmg/" title="TMG Web publishing for SharePoint HTTPS, No Certificate Usage On TMG (February 10, 2010)">TMG Web publishing for SharePoint HTTPS, No Certificate Usage On TMG</a> (1)</li>
	<li><a href="http://www.sharepointsecurity.com/sharepoint/team-foundation-server/developer-turnover-and-maintaining-valid-tfs-historical-data-tfs-error-tf20015/" title="Developer Turnover and Maintaining Valid TFS Historical Data &#8211; TFS Error TF20015 (February 17, 2010)">Developer Turnover and Maintaining Valid TFS Historical Data &#8211; TFS Error TF20015</a> (0)</li>
</ul>

]]></content:encoded>
			<wfw:commentRss>http://www.sharepointsecurity.com/sharepoint/team-foundation-server/tfs-proxy-server-unexpected-shutdowns/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>High QueryBuildQueue Execution Time? No Problem!</title>
		<link>http://www.sharepointsecurity.com/sharepoint/team-foundation-server/high-querybuildqueue-execution-time-no-problem/</link>
		<comments>http://www.sharepointsecurity.com/sharepoint/team-foundation-server/high-querybuildqueue-execution-time-no-problem/#comments</comments>
		<pubDate>Fri, 12 Feb 2010 15:00:03 +0000</pubDate>
		<dc:creator>adam</dc:creator>
				<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[AD]]></category>
		<category><![CDATA[commands]]></category>
		<category><![CDATA[connect]]></category>
		<category><![CDATA[connection]]></category>
		<category><![CDATA[E]]></category>
		<category><![CDATA[environment]]></category>
		<category><![CDATA[issue]]></category>
		<category><![CDATA[LAN]]></category>
		<category><![CDATA[list]]></category>
		<category><![CDATA[multi]]></category>
		<category><![CDATA[query]]></category>
		<category><![CDATA[quest]]></category>
		<category><![CDATA[request]]></category>
		<category><![CDATA[result]]></category>
		<category><![CDATA[results]]></category>
		<category><![CDATA[rms]]></category>
		<category><![CDATA[server]]></category>
		<category><![CDATA[term]]></category>
		<category><![CDATA[terms]]></category>
		<category><![CDATA[TFS]]></category>
		<category><![CDATA[There]]></category>
		<category><![CDATA[thread]]></category>
		<category><![CDATA[time]]></category>

		<guid isPermaLink="false">http://www.sharepointsecurity.com/?p=3278</guid>
		<description><![CDATA[For TFS administrators that are really keeping an eye on their environment, it may bubble up that there is a top-heavy amount of execution time in the QueryBuildQueue command. At first glance this may appear to be a problem with the TFS instance in terms of server load.  
The QueryBuildQueue command is generated by [...]]]></description>
			<content:encoded><![CDATA[<p>For TFS administrators that are really keeping an eye on their environment, it may bubble up that there is a top-heavy amount of execution time in the <strong>QueryBuildQueue</strong> command. At first glance this may appear to be a problem with the TFS instance in terms of server load.  </p>
<p>The <strong>QueryBuildQueue</strong> command is generated by TE and BuildNotification….when TFS queue a build, TE and BuildNotification it will query the status of the build about every 30 seconds. Naturally, this will result in a multitude of <strong>QueryBuildQueue</strong> commands being issued. When a query beings, TFS requires establishing a connection to the Build Agent, which results in a time lapse will the request is issued and the subseuquent response is listened for, during this lapse period within the request / response frame, threads are idle so the load is nothing to be concerned in terms of server load.</p>
<p>Rest easy, fickle TFS admins <img src='http://www.sharepointsecurity.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' title="High QueryBuildQueue Execution Time? No Problem!" /> </p>
<a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fwww.sharepointsecurity.com%2Fsharepoint%2Fteam-foundation-server%2Fhigh-querybuildqueue-execution-time-no-problem%2F&amp;linkname=High%20QueryBuildQueue%20Execution%20Time%3F%20No%20Problem%21"><img src="http://www.sharepointsecurity.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a>
	<h4>Related posts</h4>
	<ul class="st-related-posts">
	<li><a href="http://www.sharepointsecurity.com/sharepoint/team-foundation-server/developer-turnover-and-maintaining-valid-tfs-historical-data-tfs-error-tf20015/" title="Developer Turnover and Maintaining Valid TFS Historical Data &#8211; TFS Error TF20015 (February 17, 2010)">Developer Turnover and Maintaining Valid TFS Historical Data &#8211; TFS Error TF20015</a> (0)</li>
	<li><a href="http://www.sharepointsecurity.com/sharepoint/team-foundation-server/mirroring-tfs-consider-index-rebuilds-when-using-tlog-backups/" title="Mirroring TFS &#8211; Consider Index Rebuilds When Using TLog Backups (February 11, 2010)">Mirroring TFS &#8211; Consider Index Rebuilds When Using TLog Backups</a> (0)</li>
	<li><a href="http://www.sharepointsecurity.com/sharepoint/claims-based-authentication/sharepoint-federated-identity-process-part-3-exploring-the-sharepoint-federated-identity-solution/" title="SharePoint Federated Identity Process &#8211; Part 3 &#8211; Exploring the SharePoint Federated Identity Solution (December 10, 2009)">SharePoint Federated Identity Process &#8211; Part 3 &#8211; Exploring the SharePoint Federated Identity Solution</a> (1)</li>
	<li><a href="http://www.sharepointsecurity.com/sharepoint/isa-server/forefront-tmg-and-active-ftp-issues/" title="ForeFront TMG and Active FTP Issues (February 9, 2010)">ForeFront TMG and Active FTP Issues</a> (1)</li>
	<li><a href="http://www.sharepointsecurity.com/sharepoint/isa-server/tmg-web-publishing-for-sharepoint-https-no-certificate-usage-on-tmg/" title="TMG Web publishing for SharePoint HTTPS, No Certificate Usage On TMG (February 10, 2010)">TMG Web publishing for SharePoint HTTPS, No Certificate Usage On TMG</a> (1)</li>
</ul>

]]></content:encoded>
			<wfw:commentRss>http://www.sharepointsecurity.com/sharepoint/team-foundation-server/high-querybuildqueue-execution-time-no-problem/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mirroring TFS &#8211; Consider Index Rebuilds When Using TLog Backups</title>
		<link>http://www.sharepointsecurity.com/sharepoint/team-foundation-server/mirroring-tfs-consider-index-rebuilds-when-using-tlog-backups/</link>
		<comments>http://www.sharepointsecurity.com/sharepoint/team-foundation-server/mirroring-tfs-consider-index-rebuilds-when-using-tlog-backups/#comments</comments>
		<pubDate>Thu, 11 Feb 2010 15:40:39 +0000</pubDate>
		<dc:creator>adam</dc:creator>
				<category><![CDATA[Team Foundation Server]]></category>
		<category><![CDATA[backup]]></category>
		<category><![CDATA[base]]></category>
		<category><![CDATA[calling]]></category>
		<category><![CDATA[client]]></category>
		<category><![CDATA[common]]></category>
		<category><![CDATA[control]]></category>
		<category><![CDATA[current]]></category>
		<category><![CDATA[data]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[E]]></category>
		<category><![CDATA[environment]]></category>
		<category><![CDATA[est]]></category>
		<category><![CDATA[Event]]></category>
		<category><![CDATA[file]]></category>
		<category><![CDATA[implementation]]></category>
		<category><![CDATA[initial]]></category>
		<category><![CDATA[integration]]></category>
		<category><![CDATA[issue]]></category>
		<category><![CDATA[quest]]></category>
		<category><![CDATA[request]]></category>
		<category><![CDATA[result]]></category>
		<category><![CDATA[sid]]></category>
		<category><![CDATA[store]]></category>
		<category><![CDATA[STS]]></category>
		<category><![CDATA[template]]></category>
		<category><![CDATA[templates]]></category>
		<category><![CDATA[TFS]]></category>
		<category><![CDATA[There]]></category>
		<category><![CDATA[time]]></category>
		<category><![CDATA[trial]]></category>
		<category><![CDATA[work]]></category>

		<guid isPermaLink="false">http://www.sharepointsecurity.com/?p=3275</guid>
		<description><![CDATA[Mirroring a TFS DT is a very common action within large environments for a variety of reasons, redundancy and failover obviously being the primary catalysts for such an implementation but there are also a variety of other reasons why this is a beneficial action. 
At a current client of mine where I was setting up [...]]]></description>
			<content:encoded><![CDATA[<p>Mirroring a TFS DT is a very common action within large environments for a variety of reasons, redundancy and failover obviously being the primary catalysts for such an implementation but there are also a variety of other reasons why this is a beneficial action. </p>
<p>At a current client of mine where I was setting up initial, trial mirroring for the TFS instance, it because evident that the <strong>TfsIntegration Maintenance Job</strong> was causing issues with a long completion time which eventually resulted in TFS to respond uncharacteristically slow. Now this job does two things, firstly it re-indexes the TFS databases (<strong>TFSIntegration</strong>, <strong>TfsWarehouse</strong>, <strong>TfsWarehouse</strong>, <strong>TfsWorkItemTracking</strong> and <strong>TfsVersionControl</strong>) by calling the <strong>Re-indexing:TfsIntegration</strong> stored procedure. This is done by calling <strong>exec TfsIntegration.dbo.Prc_OptimizeTfsDatabases</strong>. As well, it also removes deleted process templates by calling <strong>exec TfsIntegration.dbo.prc_deleteTemplates</strong>. The first of these is the culprit though for this issue, and if you run the stored procedures directly you will see a Stop Request being issued which will result in the re-index has not being executed. </p>
<p>9 times out of the ten, because Index rebuilds and Defragmentation generate very hefty transaction logs, it is because a transaction log backup job (TLog backup job) is running while the re-indexing is executed. While calling TLog may help in log file reduction, it can also cause these issues when executed simultaneously with the index rebuild.</p>
<a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fwww.sharepointsecurity.com%2Fsharepoint%2Fteam-foundation-server%2Fmirroring-tfs-consider-index-rebuilds-when-using-tlog-backups%2F&amp;linkname=Mirroring%20TFS%20%26%238211%3B%20Consider%20Index%20Rebuilds%20When%20Using%20TLog%20Backups"><img src="http://www.sharepointsecurity.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a>
	<h4>Related posts</h4>
	<ul class="st-related-posts">
	<li><a href="http://www.sharepointsecurity.com/sharepoint/team-foundation-server/tfs-proxy-server-unexpected-shutdowns/" title="TFS Proxy Server Unexpected Shutdowns (February 15, 2010)">TFS Proxy Server Unexpected Shutdowns</a> (2)</li>
	<li><a href="http://www.sharepointsecurity.com/sharepoint/claims-based-authentication/sharepoint-claims-based-authentication-architectures-explained-part-5-sharepointidentity-across-realms/" title="SharePoint Claims Based Authentication Architectures Explained – Part 5 – SharePoint Identity Across Realms (December 8, 2009)">SharePoint Claims Based Authentication Architectures Explained – Part 5 – SharePoint Identity Across Realms</a> (0)</li>
	<li><a href="http://www.sharepointsecurity.com/sharepoint/claims-based-authentication/sharepoint-claims-based-authentication-architectures-explained-part-6-understanding-federated-identity-in-sharepoint/" title="SharePoint Claims Based Authentication Architectures Explained – Part 6 – Understanding Federated Identity In SharePoint (December 8, 2009)">SharePoint Claims Based Authentication Architectures Explained – Part 6 – Understanding Federated Identity In SharePoint</a> (0)</li>
	<li><a href="http://www.sharepointsecurity.com/sharepoint/claims-based-authentication/sharepoint-claims-based-authentication-architectures-explained-part-1-intro-to-claims-architectures/" title="SharePoint Claims Based Authentication Architectures Explained &#8211; Part 1 &#8211; Intro To Claims Architectures (December 8, 2009)">SharePoint Claims Based Authentication Architectures Explained &#8211; Part 1 &#8211; Intro To Claims Architectures</a> (0)</li>
	<li><a href="http://www.sharepointsecurity.com/sharepoint/team-foundation-server/high-querybuildqueue-execution-time-no-problem/" title="High QueryBuildQueue Execution Time? No Problem! (February 12, 2010)">High QueryBuildQueue Execution Time? No Problem!</a> (0)</li>
</ul>

]]></content:encoded>
			<wfw:commentRss>http://www.sharepointsecurity.com/sharepoint/team-foundation-server/mirroring-tfs-consider-index-rebuilds-when-using-tlog-backups/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>TMG Web publishing for SharePoint HTTPS, No Certificate Usage On TMG</title>
		<link>http://www.sharepointsecurity.com/sharepoint/isa-server/tmg-web-publishing-for-sharepoint-https-no-certificate-usage-on-tmg/</link>
		<comments>http://www.sharepointsecurity.com/sharepoint/isa-server/tmg-web-publishing-for-sharepoint-https-no-certificate-usage-on-tmg/#comments</comments>
		<pubDate>Wed, 10 Feb 2010 15:00:01 +0000</pubDate>
		<dc:creator>adam</dc:creator>
				<category><![CDATA[ISA Server]]></category>
		<category><![CDATA[access]]></category>
		<category><![CDATA[AD]]></category>
		<category><![CDATA[certificate]]></category>
		<category><![CDATA[client]]></category>
		<category><![CDATA[E]]></category>
		<category><![CDATA[environment]]></category>
		<category><![CDATA[HTTP]]></category>
		<category><![CDATA[ISA]]></category>
		<category><![CDATA[issue]]></category>
		<category><![CDATA[limitation]]></category>
		<category><![CDATA[logical]]></category>
		<category><![CDATA[MIT]]></category>
		<category><![CDATA[morning]]></category>
		<category><![CDATA[point]]></category>
		<category><![CDATA[port]]></category>
		<category><![CDATA[proxy server]]></category>
		<category><![CDATA[publishing]]></category>
		<category><![CDATA[quest]]></category>
		<category><![CDATA[question]]></category>
		<category><![CDATA[requirement]]></category>
		<category><![CDATA[server]]></category>
		<category><![CDATA[setup]]></category>
		<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[sharepoint server]]></category>
		<category><![CDATA[straight]]></category>
		<category><![CDATA[support]]></category>
		<category><![CDATA[time]]></category>
		<category><![CDATA[usa]]></category>
		<category><![CDATA[Web publishing]]></category>

		<guid isPermaLink="false">http://www.sharepointsecurity.com/?p=3273</guid>
		<description><![CDATA[This question came up with a client this morning, which is the first time I have had to answer it but it's a very straightforward issue. 
What if one is trying to use TMG to publish a SharePoint environment for both HTTP and HTTP access, while the certificate is appropriately setup in the SharePoint server [...]]]></description>
			<content:encoded><![CDATA[<p>This question came up with a client this morning, which is the first time I have had to answer it but it's a very straightforward issue. </p>
<p>What if one is trying to use TMG to publish a SharePoint environment for both HTTP and HTTP access, while the certificate is appropriately setup in the SharePoint server it is not desirable to have the web publishing rule bound to the certificate, i.e. certificate stuff should be handled by the SharePoint environment. So, breaking the question down even more, they wanted to publish the HTTPS SharePoint instance WITHOUT using the certificate in the TMG instance. </p>
<p>This obviously is not a supported route, because logically it doesn’t make a ton of sense. One can’t use a HTTP web publishing rule without having the appropriate certificate accessibly and appropriately in place, and clearly is not a TMG limitation because it is the same requirement for ISA and Proxy Server stuff. </p>
<a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fwww.sharepointsecurity.com%2Fsharepoint%2Fisa-server%2Ftmg-web-publishing-for-sharepoint-https-no-certificate-usage-on-tmg%2F&amp;linkname=TMG%20Web%20publishing%20for%20SharePoint%20HTTPS%2C%20No%20Certificate%20Usage%20On%20TMG"><img src="http://www.sharepointsecurity.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a>
	<h4>Related posts</h4>
	<ul class="st-related-posts">
	<li><a href="http://www.sharepointsecurity.com/sharepoint/team-foundation-server/tfs-proxy-server-unexpected-shutdowns/" title="TFS Proxy Server Unexpected Shutdowns (February 15, 2010)">TFS Proxy Server Unexpected Shutdowns</a> (2)</li>
	<li><a href="http://www.sharepointsecurity.com/sharepoint/claims-based-authentication/sharepoint-claims-based-authentication-architectures-explained-part-2-sharepoint-as-a-browser-based-application/" title="SharePoint Claims Based Authentication Architectures Explained – Part 3 – SharePoint As A Browser Based Application (December 8, 2009)">SharePoint Claims Based Authentication Architectures Explained – Part 3 – SharePoint As A Browser Based Application</a> (1)</li>
	<li><a href="http://www.sharepointsecurity.com/sharepoint/isa-server/forefront-tmg-and-active-ftp-issues/" title="ForeFront TMG and Active FTP Issues (February 9, 2010)">ForeFront TMG and Active FTP Issues</a> (1)</li>
	<li><a href="http://www.sharepointsecurity.com/sharepoint/claims-based-authentication/sharepoint-claims-based-authentication-architectures-explained-part-9-specifying-the-identity-of-a-given-user/" title="SharePoint Claims Based Authentication Architectures Explained – Part 9 – Specifying the Identity of a Given User (December 8, 2009)">SharePoint Claims Based Authentication Architectures Explained – Part 9 – Specifying the Identity of a Given User</a> (0)</li>
	<li><a href="http://www.sharepointsecurity.com/sharepoint/claims-based-authentication/sharepoint-claims-based-authentication-architectures-explained-part-7-transforming-identity-in-sharepoint/" title="SharePoint Claims Based Authentication Architectures Explained – Part 7 – Transforming Identity In SharePoint (December 8, 2009)">SharePoint Claims Based Authentication Architectures Explained – Part 7 – Transforming Identity In SharePoint</a> (1)</li>
</ul>

]]></content:encoded>
			<wfw:commentRss>http://www.sharepointsecurity.com/sharepoint/isa-server/tmg-web-publishing-for-sharepoint-https-no-certificate-usage-on-tmg/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Programatically Working With TFS Check-In Policies</title>
		<link>http://www.sharepointsecurity.com/sharepoint/team-foundation-server/programatically-working-with-tfs-check-in-policies/</link>
		<comments>http://www.sharepointsecurity.com/sharepoint/team-foundation-server/programatically-working-with-tfs-check-in-policies/#comments</comments>
		<pubDate>Tue, 09 Feb 2010 16:23:59 +0000</pubDate>
		<dc:creator>adam</dc:creator>
				<category><![CDATA[Team Foundation Server]]></category>

		<guid isPermaLink="false">http://www.sharepointsecurity.com/?p=3304</guid>
		<description><![CDATA[Check-in policies within mature development environments are imperative, allowing the construction of code, to police checking in of code. Policies within TFS aid in enforcing restrictions and limitations whenever files are checked into TFS VC. TFS supplies a multitude of pre-existing check-in policies for actions like checking that unit tests are implemented, executing static code [...]]]></description>
			<content:encoded><![CDATA[<p>Check-in policies within mature development environments are imperative, allowing the construction of code, to police checking in of code. Policies within TFS aid in enforcing restrictions and limitations whenever files are checked into TFS VC. TFS supplies a multitude of pre-existing check-in policies for actions like checking that unit tests are implemented, executing static code analysis to check for standards, and a bunch of others.</p>
<p>Unfortunately, there are some limitations however which I ran into recently with a current client of mine. The long and short of it is check-in policies cannot be included in process templates. However, there are custom development avenues you can use by building some managed code against the TFS API to execute this, the objects and methods that are used are fairly self explanatory. Consider the following that shows getting a collection of the current policies, and then setting the policies.</p>
<p>Firstly, getting an appropriate reference to the desired project:</p>
<div class="igBar"><span id="lcsharp-5"><a href="#" onclick="javascript:showPlainTxt('csharp-5'); return false;">PLAIN TEXT</a></span></div>
<div class="syntax_hilite"><span class="langName">C#:</span>
<div id="csharp-5">
<div class="csharp">
<ol>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">TeamFoundationServer tfs = <a href="http://www.google.com/search?q=new+msdn.microsoft.com"><span style="color: #008000;">new</span></a> TeamFoundationServer<span style="color: #000000;">&#40;</span>http:<span style="color: #008080; font-style: italic;">//tfs:8080);</span></div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">VersionControlServer vcs = <span style="color: #000000;">&#40;</span>VersionControlServer<span style="color: #000000;">&#41;</span> tfs.<span style="color: #0000FF;">GetService</span><span style="color: #000000;">&#40;</span><a href="http://www.google.com/search?q=typeof+msdn.microsoft.com"><span style="color: #008000;">typeof</span></a><span style="color: #000000;">&#40;</span>VersionControlServer<span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>;</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">TeamProject tp = vcs.<span style="color: #0000FF;">GetTeamProject</span><span style="color: #000000;">&#40;</span><span style="color: #808080;">"Project"</span><span style="color: #000000;">&#41;</span>; </div>
</li>
</ol>
</div>
</div>
</div>
<p></p>
<p>Off the <strong>TeamProject</strong> object instance, you can following call the <strong>GetCheckinPolicies</strong> method, which will allow you to return a <strong>Microsoft.TeamFoundation.VersionControl.Client.PolicyEnvelope</strong> array type. Essentially this is what we can refer to as the policy instance, representing the applied policy's of type <strong>IPolicyDefinition</strong>. Since you have an active array, you can do push the array into a typed collection of <strong>PolicyEnvelope</strong> objects using <strong>List<Type>.AddRange</strong></p>
<div class="igBar"><span id="lcsharp-6"><a href="#" onclick="javascript:showPlainTxt('csharp-6'); return false;">PLAIN TEXT</a></span></div>
<div class="syntax_hilite"><span class="langName">C#:</span>
<div id="csharp-6">
<div class="csharp">
<ol>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">tp.<span style="color: #0000FF;">SetCheckinPolicies</span><span style="color: #000000;">&#40;</span>policyCollection.<span style="color: #0000FF;">ToArray</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>; </div>
</li>
</ol>
</div>
</div>
</div>
<p></p>
<a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fwww.sharepointsecurity.com%2Fsharepoint%2Fteam-foundation-server%2Fprogramatically-working-with-tfs-check-in-policies%2F&amp;linkname=Programatically%20Working%20With%20TFS%20Check-In%20Policies"><img src="http://www.sharepointsecurity.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a>
	<h4>Related posts</h4>
	<ul class="st-related-posts">
	<li>No related posts.</li>
	</ul>

]]></content:encoded>
			<wfw:commentRss>http://www.sharepointsecurity.com/sharepoint/team-foundation-server/programatically-working-with-tfs-check-in-policies/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
