<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:atom="https://www.w3.org/2005/Atom" xmlns:sy="https://purl.org/rss/1.0/modules/syndication/" xmlns:dc="https://purl.org/dc/elements/1.1/" xmlns:content="https://purl.org/rss/1.0/modules/content/" xmlns:wfw="https://wellformedweb.org/CommentAPI/" xmlns:slash="https://purl.org/rss/1.0/modules/slash/"
  version="2.0">
  <channel>
    <title>Gajendra's Blog</title>
    <atom:link
      href="https://docs.microsoft.com/archive/blogs/gajendra/feed.xml"
      rel="self"
      type="application/rss+xml" />
    <link>https://docs.microsoft.com/archive/blogs/gajendra/feed.xml</link>
    <description />
    <lastBuildDate>Tue, 16 Apr 2019 05:08:08 GMT</lastBuildDate>
    <language>en-US</language>
    <sy:updatePeriod>hourly</sy:updatePeriod>
    <sy:updateFrequency>1</sy:updateFrequency>
    <item>
      <title>Accessing external service from your Web Application via Proxy</title>
      <link>https://docs.microsoft.com/archive/blogs/gajendra/accessing-external-service-from-your-web-application-via-proxy</link>
      <pubDate>Mon, 12 Oct 2015 21:33:02 GMT</pubDate>
      <dc:creator><![CDATA[Gajendra Babu Thokala]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/gajendra/2015/10/12/accessing-external-service-from-your-web-application-via-proxy/</guid>
      <description><![CDATA[Consider a scenario where you have web application configured to use Application Pool running under...]]></description>
      <content:encoded><![CDATA[<p>Consider a scenario where you have web application configured to use Application Pool running under a specific App Pool Identity(AppPoolAccount1) and you need to have your web application talk to your external service via proxy. </p>  <p>In the above scenario there are few steps which needs to done in order to have your application work <strong>without affecting your global proxy settings. </strong></p>  <p>Proxy settings are stored per user separately. You can set this for any user by navigating to <strong>Internet Explorer –&gt; Tools-&gt;Internet Options-&gt;Connections tab-&gt;LAN Settings</strong> button. </p>  <p>Certain times due to security restrictions App Pool Accounts are not provided LogOn permissions.&#160; In such cases workaround has to be done to add the account with LogOn permissions and later removed. </p>  <p><strong>Steps to get the External Sites accessible from you Web Application</strong></p>  <p><strong>1) Login to the web front end server where the web application is hosted using the Service Account, in my case AppPoolAccount1. </strong></p>  <p><strong>2) Open Internet Explorer –&gt; Tools –&gt; Internet Options –&gt; Connections –&gt; LAN Settings</strong></p>  <p><strong>3) Provide the Proxy settings. If required add the exceptions and bypass any local URLs. </strong></p>  <p><strong>4) Save the settings. </strong></p>  <p><strong>5) Test the external service URL accessibility. </strong></p>  <p><strong>6) Log out of the server. </strong></p>  <p>Note: Make sure rest of your application functionality is working after having the proxy settings done. </p>  <p>Once these steps are followed your web application should be able to connect to the external service successfully. The same steps would apply when you are trying to connect to services from WCF or other services. </p>]]></content:encoded>
    </item>
    <item>
      <title>Removing HTTP response headers for public/internet facing SharePoint sites</title>
      <link>https://docs.microsoft.com/archive/blogs/gajendra/removing-http-response-headers-for-publicinternet-facing-sharepoint-sites</link>
      <pubDate>Mon, 24 Aug 2015 23:59:35 GMT</pubDate>
      <dc:creator><![CDATA[Gajendra Babu Thokala]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/gajendra/2015/08/24/removing-http-response-headers-for-publicinternet-facing-sharepoint-sites/</guid>
      <description><![CDATA[One of the first recommendation from any security engineer would be remove the unwanted HTTP...]]></description>
      <content:encoded><![CDATA[<p>One of the first recommendation from any security engineer would be remove the unwanted HTTP response headers including your SharePoint headers like <em>MicrosoftSharePointTeamServices</em>, <em>X-SharePointHealthScore</em> etc. </p>  <p>On a typical SharePoint site the response headers would be as below. </p>  <hr />  <p><em>Cache-Control:no-cache, no-store, must-revalidate      <br />Connection:Keep-Alive       <br />Content-Encoding:gzip       <br />Content-Length:63955       <br />Content-Type:text/html; charset=utf-8       <br />Date:Tue, 25 Aug 2015 06:38:25 GMT       <br />Expires:-1       <br />MicrosoftSharePointTeamServices:14.0.0.6108       <br />Pragma:no-cache       <br />Server:Microsoft-IIS/7.5       <br />SPRequestGuid:e3cad3b6-64a8-43f0-925d-81ef1ae50529       <br />Vary:Accept-Encoding       <br />X-AspNet-Version:2.0.50727       <br />x-frame-options:SAMEORIGIN       <br />X-Powered-By:FE3       <br />X-SharePointHealthScore:0</em></p>  <hr />  <p>Firstly, lets talk about HTTP header “MicrosoftSharePointTeamServices”. The HTTP header “MicrosoftSharePointTeamServices” is added to IIS “HTTP Response Headers” by SharePoint during web application provisioning. It is used by SharePoint search engine during crawl so that sites will be considered and crawled as SharePoint site. </p>  <p><strong>Impact of removing MicrosoftSharePointTeamServices Header :</strong></p>  <p>If this header is removed, it will cause search related issues. Refer <a href="https://support.microsoft.com/en-us/kb/2728313">this</a> KB article which mentions the impact of removing this header. It is mandatory for search service to crawl SharePoint site because this header is the indication to the search service application that this is a SharePoint site along with its version. Besides, the “MicrosoftSharePointTeamServices” is also used for Client Integration feature, Disabling the “Enable Client Integration” option on the “Manage web applications” page on Central Administration will remove it from the HTTP Response Header for the corresponding IIS Web Site. Removing this header will impact the Office Integration with SharePoint. </p>  <p>For example, InfoPath forms.</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/4527.clip_image002_703CDBD7.jpg" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/4527.clip_5F00_image002_5F00_703CDBD7.jpg"><img title="clip_image002" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="clip_image002" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/8507.clip_image002_thumb_6D96B0D7.jpg" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/8507.clip_5F00_image002_5F00_thumb_5F00_6D96B0D7.jpg" width="244" height="204" /></a></p>  <p>Also you would not be able to open this site using SharePoint Designer when this header is removed. </p>  <p>Just in case you are not using SharePoint designer feature and any client Integration features but need just search to work for your site. You can consider doing the below steps. </p>  <p>- Extend the current web application with two zones. One zone internet facing and other one internal(default zone)   <br />- On the internet zone, disable “Enable Client Integration” to remove the HTTP Response Header “MicrosoftSharePointTeamServices”.    <br />- Replace start address in content source with default zone URL and do full crawl again as SharePoint search service always needs to crawl default zone.    <br />- For SharePoint Designer, you can edit and make changes with default zone only.    <br />- For Office Integration feature with SharePoint like InfoPath form, only default zone will work. </p>  <p>Note: It is not recommended removing the HTTP Response Header “MicrosoftSharePointTeamServices” on IIS Web Site manually as it is critical to let other SharePoint components know this is an SharePoint site along with its exact version. Instead follow the above steps to enable search to crawl on default internal zone. </p>]]></content:encoded>
    </item>
    <item>
      <title>Steps to add users to TFS Online and access TFS Online Project from Visual Studio</title>
      <link>https://docs.microsoft.com/archive/blogs/gajendra/steps-to-add-users-to-tfs-online-and-access-tfs-online-project-from-visual-studio</link>
      <pubDate>Mon, 15 Apr 2013 07:55:49 GMT</pubDate>
      <dc:creator><![CDATA[Gajendra Babu Thokala]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/gajendra/2013/04/15/steps-to-add-users-to-tfs-online-and-access-tfs-online-project-from-visual-studio/</guid>
      <description><![CDATA[&#160;  This Blog will provide steps to Create a Project on TFS online and add a user(with Live id)...]]></description>
      <content:encoded><![CDATA[<p>&#160;</p>  <h6>This Blog will provide steps to Create a Project on TFS online and add a user(with Live id) to the project. Blog also contains steps to access the Project for any member who is added to the project. </h6>  <p>With Team Foundation Service on Cloud, Software development team can check your code directly into the cloud using either Visual studio or eclipse. It also provides other features like Collaboration, Agile Planning, Test Execution, Continuous builds. </p>  <p>&#160;</p>  <h2>Creating Project and Adding Users to TFS Online</h2>  <p>&#160;</p>  <p>One can signup for free Account for Online Team Foundation Services from <a href="https://tfs.visualstudio.com">https://tfs.visualstudio.com</a> . Once signup is completed and TFS online URL is ready you would see a screen which is as below. Free account as some limited functionality, site would list down all types of subscriptions. </p>  <p>This screen will include options to create Team Projects either using Team Foundation Services or Git. </p>  <p>&#160;</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/6038.image_59C3AD32.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/6038.image_5F00_59C3AD32.png"><img title="image" style="display: inline;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/0184.image_thumb_29B95BB1.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/0184.image_5F00_thumb_5F00_29B95BB1.png" width="890" height="477" /></a> </p>  <p>&#160; </p>  <p>Once User clicks on Create Team Project, he is provided with a Popup which asks for few details about the project.&#160; </p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/3833.image_5589AFA0.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/3833.image_5F00_5589AFA0.png"><img title="image" style="display: inline;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/5327.image_thumb_7AA6FA0C.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/5327.image_5F00_thumb_5F00_7AA6FA0C.png" width="891" height="481" /></a> </p>  <p>&#160;</p>  <p>&#160;<a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/4188.image_7972506E.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/4188.image_5F00_7972506E.png"><img title="image" style="display: inline;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/1070.image_thumb_17705E63.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/1070.image_5F00_thumb_5F00_17705E63.png" width="400" height="342" /></a> </p>  <p>&#160;</p>  <p>Once the project is created, clicking on Navigate to Project would take you to Online TFS site.&#160; </p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/0407.image_4823660E.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/0407.image_5F00_4823660E.png"><img title="image" style="display: inline;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/3630.image_thumb_2D76C9F5.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/3630.image_5F00_thumb_5F00_2D76C9F5.png" width="399" height="336" /></a>&#160; </p>  <p>&#160;</p>  <p>Once the Project Page is loaded. Clicking on Manage members would popup a dialog, using which users can be added.&#160;&#160; </p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/4338.image_7889FB43.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/4338.image_5F00_7889FB43.png"><img title="image" style="display: inline;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/6813.image_thumb_08B5C33D.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/6813.image_5F00_thumb_5F00_08B5C33D.png" width="891" height="480" /></a> </p>  <p>&#160; </p>  <p>Add the Live ID and Save changes. </p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/5040.image_2502CED1.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/5040.image_5F00_2502CED1.png"><img title="image" style="display: inline;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/4544.image_thumb_235202FD.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/4544.image_5F00_thumb_5F00_235202FD.png" width="395" height="180" /></a> </p>  <p>&#160;</p>  <p>Now users who are on this list should have access to the Project. </p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/3554.image_01F25D61.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/3554.image_5F00_01F25D61.png"><img title="image" style="display: inline;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/5621.image_thumb_400B7812.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/5621.image_5F00_thumb_5F00_400B7812.png" width="396" height="300" /></a>&#160; </p>  <p>&#160;</p>  <p>&#160;</p>  <h2>Adding Source code to TFS Online</h2>  <p>&#160;</p>  <p>Open up the Visual Project which is intended to be added to TFS Online. </p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/1220.image_6D9CF42E.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/1220.image_5F00_6D9CF42E.png"><img title="image" style="display: inline;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/3113.image_thumb_4445AC30.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/3113.image_5F00_thumb_5F00_4445AC30.png" width="889" height="479" /></a></p>  <p>&#160;</p>  <p>Navigate to Team –&gt; Connect to Team Foundation Server.&#160; Select the required Project, in this case it is Test Project.&#160; </p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/3482.image_588AEF95.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/3482.image_5F00_588AEF95.png"><img title="image" style="display: inline;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/2437.image_thumb_65189CB1.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/2437.image_5F00_thumb_5F00_65189CB1.png" width="411" height="297" /></a> </p>  <p>&#160;</p>  <p>&#160;</p>  <h2>Accessing Project Code by Contoso User(<a href="mailto:contosouser@hotmail.com">contosouser@hotmail.com</a>) </h2>  <p> Any Microsoft Account(Live id) user who has been added to the members group of TFS online will be able to access the Project from Visual Studio.&#160; </p>  <p>Navigate to the Project URL, should be some URL as below.&#160; When a user tries to access the site he/she will be prompted for credentials. Provide the live id email address and corresponding password. </p>  <p><a title="https://gababu.visualstudio.com/DefaultCollection/TestProject" href="https://gababu.visualstudio.com/DefaultCollection/TestProject">https://gababu.visualstudio.com/DefaultCollection/TestProject</a>&#160; </p>  <p>&#160;</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/2727.image_681E5DBD.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/2727.image_5F00_681E5DBD.png"><img title="image" style="display: inline;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/6303.image_thumb_13827EB8.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/6303.image_5F00_thumb_5F00_13827EB8.png" width="889" height="465" /></a> </p>  <p>&#160; </p>  <p> Once sign in is done you would be landed with a page as below, this page would list the Project details like Activities, current Members of project and other details related to the project. </p>  <p>Click on the Link “Open new instance of Visual Studio”, this would open up a popup asking to Allow access to Visual studio. Make sure Visual studio 2012 is already installed on the machine from which we are trying to access the URL.&#160; </p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/8461.image_0C531C73.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/8461.image_5F00_0C531C73.png"><img title="image" style="display: inline;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/2514.image_thumb_357AB4B1.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/2514.image_5F00_thumb_5F00_357AB4B1.png" width="890" height="435" /></a> </p>  <p>&#160;</p>  <p>Once prompted for the Access, click on Allow. </p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/0207.image_004DA35B.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/0207.image_5F00_004DA35B.png"><img title="image" style="display: inline;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/1881.image_thumb_0CDB5077.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/1881.image_5F00_thumb_5F00_0CDB5077.png" width="454" height="334" /></a> </p>  <p>&#160;</p>  <p> Once visual Studio is launched you should see Team explorer Pane listing the option “Source Control Explorer”. Clicking on this will take you to a place where you can see all the source code in a Tree view. </p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/5187.image_4A883833.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/5187.image_5F00_4A883833.png"><img title="image" style="display: inline;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/0638.image_thumb_2FDB9C1A.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/0638.image_5F00_thumb_5F00_2FDB9C1A.png" width="227" height="418" /></a> </p>  <p>&#160;</p>  <p> Select the Solution/Project which you would like to open.&#160; As you select the Solution file .sln the Local Path initially would say “Not mapped”. Double click on the .sln file and you should be landed with a popup asking for Map location. </p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/8484.image_1A61E5A3.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/8484.image_5F00_1A61E5A3.png"><img title="image" style="display: inline;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/3108.image_thumb_46323992.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/3108.image_5F00_thumb_5F00_46323992.png" width="891" height="481" /></a> </p>  <p>&#160;</p>  <p> Provide a Map location to a local folder on your computer and select Map. </p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/8662.image_3BCD6681.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/8662.image_5F00_3BCD6681.png"><img title="image" style="display: inline;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/1803.image_thumb_0824FA23.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/1803.image_5F00_thumb_5F00_0824FA23.png" width="422" height="156" /></a>&#160;</p>  <p>&#160;</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/7266.image_3F8B0B51.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/7266.image_5F00_3F8B0B51.png"><img title="image" style="display: inline;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/4035.image_thumb_496FFCBC.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/4035.image_5F00_thumb_5F00_496FFCBC.png" width="425" height="218" /></a> </p>  <p>&#160;</p>  <p> Once the Solution is mapped you would see the projects loaded when you Navigate to View –&gt; Solution Explorer in Visual studio. </p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/5037.image_15C7905E.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/5037.image_5F00_15C7905E.png"><img title="image" style="display: inline;" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/6518.image_thumb_0CF78812.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/6518.image_5F00_thumb_5F00_0CF78812.png" width="257" height="502" /></a></p>  <p>&#160;</p>  <p>With these steps you are now connected to TFS online. Next time you open the project freshly you would be asked to enter credentials again. </p>  <p>&#160;</p>  <p>Thanks! </p>]]></content:encoded>
    </item>
    <item>
      <title>Why Handling of Exceptions is Critical in SharePoint Online(O365-S)</title>
      <link>https://docs.microsoft.com/archive/blogs/gajendra/why-handling-of-exceptions-is-critical-in-sharepoint-onlineo365-s</link>
      <pubDate>Fri, 18 May 2012 19:38:56 GMT</pubDate>
      <dc:creator><![CDATA[Gajendra Babu Thokala]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/gajendra/2012/05/18/why-handling-of-exceptions-is-critical-in-sharepoint-onlineo365-s/</guid>
      <description><![CDATA[&#160;  SharePoint Online imposes Resource Usage Limits on Sandbox solutions. Every user solution...]]></description>
      <content:encoded><![CDATA[<p>&#160;</p>  <p><font size="2">SharePoint Online imposes Resource Usage Limits on Sandbox solutions. Every user solution that is deployed on SharePoint online is subject to resource usage restrictions. </font></p>  <p><font size="2">Each and Every resource used by the user solutions are monitored by SharePoint monitors. All user solutions in the site collection will be blocked automatically if the daily resource points exceeds the Usage Quota mentioned by the Site collection administrator for that site collection. </font></p>  <p><font size="2">SharePoint Online administration center can be used to set the Resource usage Quota for every site collection from the total resources available. </font></p>  <p>&#160;</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/5428.image_0A41B615.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/5428.image_5F00_0A41B615.png"><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" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/3021.image_thumb_050F06FF.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/3021.image_5F00_thumb_5F00_050F06FF.png" width="780" height="427" /></a></p>  <p><font size="2"><strong>Figure 1:</strong> SharePoint Online Administrator Center with Resource Usage Quota Option</font></p>  <p><font size="2">&#160;</font></p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/6747.image_408ECA25.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/6747.image_5F00_408ECA25.png"><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" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/6886.image_thumb_1B8DB754.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/6886.image_5F00_thumb_5F00_1B8DB754.png" width="790" height="423" /></a></p>  <p><font size="2"><strong>Figure 2:</strong> Screen for setting the Usage Quota for site collection</font></p>  <p><font size="2">&#160;</font></p>  <p><font size="2">Every site collection will have the Max Resource Points set and can be monitored by site collection administrators from the screen as shown in figure 3. </font></p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/5824.image_46E1B281.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/5824.image_5F00_46E1B281.png"><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" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/4370.image_thumb_1DD651DE.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/4370.image_5F00_thumb_5F00_1DD651DE.png" width="797" height="426" /></a></p>  <p><font size="2"><strong>Figure 3:</strong> Site collection administrator view of resource usage for Current day and Average Usage for last 14 days.</font></p>  <p><font size="2">&#160;</font></p>  <p><font size="2">These points are calculated based on Microsoft proprietary algorithm that takes into account the use of resources in the several resource categories by the sandboxed solutions that are installed in the site collection.</font></p>  <p><font size="2"><strong>UnhandledExceptionCount</strong> is one of the resource categories that is measured and has a weightage of 50 Resources per point. </font></p>  <p><font size="2">Unhandled Exception has an absolute limit of 3 which strictly means that if there are unhandled exceptions in the user solutions three within a day then all user solutions are blocked for that day. </font></p>  <p><font size="2">If there are unhandled exceptions in an on-premise SharePoint solution, there is not much impact, except user will be shown an error message on the screen. However this is not the case with SharePoint Online solutions.</font></p>  <p><font size="2">Developers and in turn site collection administrators cannot afford to have unhandled exceptions in the code. </font></p>  <p><font size="2">A good approach is to handle every exception in the code and perform some logging. As SharePoint online doesn’t support logging to ULS or Windows Event logs or has access to file system logs, best way to do logging is to write to SharePoint list within the same site collection. </font></p>  <p><font size="2"><strong>Note: </strong>Make sure the logger list and other resources exist before logging takes place, otherwise there are chances of unhandled exceptions within the catch block as well. </font></p>  <blockquote>   <p><font size="2">try</font></p>    <p><font size="2">{</font></p>    <p><font size="2">//User Solution Code</font></p>    <p><font size="2">}catch(Exception ex)</font></p>    <p><font size="2">{</font></p>    <p><font size="2">//Perform logging to SharePoint List – Make sure List exists before logging begins.</font></p>    <p><font size="2">}</font></p> </blockquote>  <p><font size="2">Never throw an exception that is not handled by your code, no exceptions should get propagated to sandbox worker process.</font></p>  <p><font size="2">Every developer should understand the criticality of unhandled exceptions and how user solutions are penalized in SharePoint Online environment. </font></p>  <p><font size="2">Happy Sandboxed Coding!! </font></p>]]></content:encoded>
    </item>
    <item>
      <title>Methods to achieve RSS Viewer Web Part functionality in SharePoint Online(O365-S)</title>
      <link>https://docs.microsoft.com/archive/blogs/gajendra/methods-to-achieve-rss-viewer-web-part-functionality-in-sharepoint-onlineo365-s</link>
      <pubDate>Fri, 18 May 2012 19:35:00 GMT</pubDate>
      <dc:creator><![CDATA[Gajendra Babu Thokala]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/gajendra/2012/05/18/methods-to-achieve-rss-viewer-web-part-functionality-in-sharepoint-onlineo365-s/</guid>
      <description><![CDATA[SharePoint Online has some known restrictions. One among these is Non-Availability of RSS Viewer Web...]]></description>
      <content:encoded><![CDATA[<p><font size="2">SharePoint Online has some known restrictions. One among these is Non-Availability of RSS Viewer Web Part(<a href="https://support.microsoft.com/kb/2535012" target="_blank">click here</a>). </font></p>  <p><font size="2">Although RSS Viewer web part shows up in the web part list, when you try adding it to the page you get the below error message displayed. </font></p>  <h3><font size="3">Error message when you try to add an RSS Web Part in Microsoft SharePoint Online: &quot;Web Part or Web Form Control on this Page cannot be displayed or imported. The type is not registered as safe&quot;</font></h3>  <p><font size="2"></font></p>  <p><font size="2">As we are aware that none of the Sandbox web parts can connect to external data sources, RSS Viewer Web Part is no different. However future version of O365 might support RSS Viewer functionality. </font></p>  <p><font size="2">This blog provides you workaround to achieve RSS Viewer Functionality. </font></p>  <p><font size="2">We can achieve RSS viewer functionality by below methods. </font></p>  <p><font size="2"><strong>1) Using jQuery Plugins</strong></font></p>  <p><font size="2">SharePoint Online web parts cannot directly connect to external sources. We can use Either JavaScript or Silverlight web part to accomplish connectivity.</font></p>  <p><font size="2">jQuery Plugins can we used to connect to RSS Feeds. One of the jQuery plugin available is </font><a title="https://www.zazar.net/developers/jquery/zrssfeed/" href="https://www.zazar.net/developers/jquery/zrssfeed/"><font size="2">https://www.zazar.net/developers/jquery/zrssfeed/</font></a><font size="2">&#160;</font></p>  <p><font size="2">Once the plugin is included in your JavaScript file, use the below function to fetch the Feed. </font></p>  <p><font size="2">function LoadFeed(target, rssFeedUrl, itemCount) {      <br />&#160;&#160;&#160; jQuery(target).rssfeed(rssFeedUrl, {       <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; limit: itemCount       <br />&#160;&#160;&#160;&#160;&#160; });       <br />}</font></p>  <p><font size="2"><strong>2) Using Silverlight Web Part</strong></font></p>  <p><font size="2">Other alternative for jQuery is Silverlight WebPart. As we are aware that Silverlight web part run on client browser and has no restriction on connectivity to external source irrespective of whether they are deployed on SharePoint online or not.&#160; Using Silverlight web part to achieve this is a wise choice. </font></p>  <p><font size="2">From the Response of the RSS Request, read the xml elements and display it in a list. </font></p>  <p><font size="2">Silverlight can not access the web resources which are on other domains without a crossdomain.xml or clientaccesspolicy.xml file in place. So make sure you load only such feeds which have either of these files at root location. </font></p>  <p><strong><font size="2">&#160;</font></strong></p>  <p><font size="2"><strong>Note:</strong> Connectivity can be established only to Anonymous RSS Feeds and not to Authenticated Feeds.</font></p>]]></content:encoded>
    </item>
    <item>
      <title>Workaround for UserProfileManager in SharePoint Online (O365-S)</title>
      <link>https://docs.microsoft.com/archive/blogs/gajendra/workaround-for-userprofilemanager-in-sharepoint-online-o365-s</link>
      <pubDate>Wed, 14 Mar 2012 23:14:02 GMT</pubDate>
      <dc:creator><![CDATA[Gajendra Babu Thokala]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/gajendra/2012/03/14/workaround-for-userprofilemanager-in-sharepoint-online-o365-s/</guid>
      <description><![CDATA[UserProfileManager and AudienceManager is not available in SharePoint sandbox.   Workaround: In...]]></description>
      <content:encoded><![CDATA[<p><strong>UserProfileManager and AudienceManager is not available in SharePoint sandbox. </strong></p>  <p><strong>Workaround: </strong>In order to fetch fetch user profile properties we will have to sync user profile properties to <a href="https://msdn.microsoft.com/en-us/library/microsoft.sharepoint.spweb.siteuserinfolist.aspx">SiteUserInfoList</a> which is a hidden list and fetch profile properties from this list. User profile properties which are replicable can be synchronized to this list. To check if a property is replicable or not we can edit property in UPSA and look for replicable attribute.</p>  <p><strong>Sample code to access SiteUserInfoList</strong></p>  <p>private SPList userInformationList = null;</p>  <p>private SPUser user = null;</p>  <p>private SPListItem userItem = null;</p>  <p>using (SPSite site = new SPSite(SPContext.Current.Web.Url))</p>  <p>{   <br />&#160;&#160;&#160;&#160;&#160;&#160; using (SPWeb web = site.OpenWeb())    <br />&#160;&#160;&#160;&#160;&#160;&#160; {    <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; // Instantiates the User Information List&#160; <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; userInformationList = SPContext.Current.Web.SiteUserInfoList;</p>  <p>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; // Get the current user&#160; <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; user = web.EnsureUser(web.CurrentUser.Name);</p>  <p>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; // The actual User Information is within this SPListItem&#160; <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; userItem = userInformationList.Items.GetItemById(user.ID);</p>  <p>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; string officeLocation = userItem[&quot;Office&quot;].ToString();</p>  <p>&#160;&#160;&#160;&#160;&#160;&#160; }</p>  <p>}</p>  <p>&#160;</p>  <p><strong>SharePoint Online Steps to set the Property Replicable</strong></p>  <p>Step 1: Open SharePoint Online Admin portal and select Manage User Profiles</p>  <p><strong>Note</strong>: Only SharePoint Online Administrator will have access to the administration center</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/2063.image_7E2E5921.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/2063.image_5F00_7E2E5921.png"><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" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/1104.image_thumb_1217C5EB.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/1104.image_5F00_thumb_5F00_1217C5EB.png" width="809" height="466" /></a></p>  <p>&#160;</p>  <p>Step 2: Under <strong>People</strong> section select <strong>Manage User Properties</strong></p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/2570.image_2E65080B.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/2570.image_5F00_2E65080B.png"><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" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/5238.image_thumb_1FD9E619.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/5238.image_5F00_thumb_5F00_1FD9E619.png" width="837" height="376" /></a></p>  <p>&#160;</p>  <p>Step 3: Select the property which you would like to sync, Edit the property</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/2273.image_20EECF38.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/2273.image_5F00_20EECF38.png"><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" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/1018.image_thumb_5AFD9C17.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/1018.image_5F00_thumb_5F00_5AFD9C17.png" width="545" height="209" /></a></p>    <p>Step 4: Under Policy Settings section check Replicable property. </p>  <p><strong>Note</strong>: Synchronization would take some time before it appears in the SiteUserInfoList</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/3755.image_3931C386.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/3755.image_5F00_3931C386.png"><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" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/metablogapi/4670.image_thumb_572FD17A.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45-metablogapi/4670.image_5F00_thumb_5F00_572FD17A.png" width="725" height="109" /></a></p>]]></content:encoded>
    </item>
    <item>
      <title>Packaging CQWP customizations to WSP as a Sandbox Solution for Deployment on Sharepoint Online</title>
      <link>https://docs.microsoft.com/archive/blogs/gajendra/packaging-cqwp-customizations-to-wsp-as-a-sandbox-solution-for-deployment-on-sharepoint-online</link>
      <pubDate>Sun, 01 Jan 2012 06:55:00 GMT</pubDate>
      <dc:creator><![CDATA[Gajendra Babu Thokala]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/gajendra/2012/01/01/packaging-cqwp-customizations-to-wsp-as-a-sandbox-solution-for-deployment-on-sharepoint-online/</guid>
      <description><![CDATA[Content Query Web Part(CQWP) can be customized using the Style sheets available in Style Library....]]></description>
      <content:encoded><![CDATA[<p><span style="font-size: medium;">Content Query Web Part(CQWP) can be customized using the Style sheets available in Style Library. Customizations can be done easily from SharePoint Designer, however it does not provide any mechanism to package the the customizations made.</span></p>
<p><span style="font-size: medium;">Packaging the CQWP Customizations into WSP is necessary when the customizations have to be developed in developer box and deployed onto SharePoint Online.</span></p>
<p><span style="font-size: medium;">This post provides the steps to be followed to package the CQWP customizations to a Solution File(WSP) using Visual Studio.</span></p>
<p>&nbsp;</p>
<p><span style="font-family: arial black,avant garde; color: #008080; font-size: large;"><strong>Step 1: Creating an Empty SharePoint project in Visual Studio</strong></span></p>
<p><span style="font-size: medium;">In order to package the customizations we will create an <strong>Empty SharePoint project</strong> as a <strong>sandbox solution</strong> so that it can easily deployed to SharePoint Online.</span></p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/5875.CreateEmptySharePointSolution.jpg" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45/5875.CreateEmptySharePointSolution.jpg"><img border="0" alt="" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/5875.CreateEmptySharePointSolution.jpg" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45/5875.CreateEmptySharePointSolution.jpg" /></a></p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/7127.SelectSandboxSolution.jpg" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45/7127.SelectSandboxSolution.jpg"><img border="0" alt="" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/7127.SelectSandboxSolution.jpg" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45/7127.SelectSandboxSolution.jpg" /></a></p>
<p></p>
<p><span style="font-size: medium;">Open the Project Properties and set <strong>Include Assembly In Package</strong> to <strong>false</strong> as we don't need the dll to be copied.</span></p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/1602.IncludeAssemblyFalse.jpg" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45/1602.IncludeAssemblyFalse.jpg"><img border="0" alt="" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/1602.IncludeAssemblyFalse.jpg" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45/1602.IncludeAssemblyFalse.jpg" width="325" height="224" /></a></p>
<p>Also verify if the Sandbox Solution is set to true.</p>
<p>&nbsp;</p>
<p><span style="font-family: arial black,avant garde; color: #008080; font-size: large;"><strong>Step 2: Adding the customized xsl to solution</strong></span></p>
<p><span style="font-size: medium;">In this post I have considered customizing <strong>ItemStyle.xsl</strong>, however the same steps can be followed to customize other style sheets as well.</span></p>
<p><span style="font-size: medium;">Editing the default <strong>ItemStyle.xsl</strong> will affect all the webparts referring to this style sheet, Instead it is a best practise to create a copy of this and work on it.</span></p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/6735.MakeItemStyleCopy.jpg" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45/6735.MakeItemStyleCopy.jpg"><img border="0" alt="" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/6735.MakeItemStyleCopy.jpg" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45/6735.MakeItemStyleCopy.jpg" /></a></p>
<p><span style="font-size: medium;">I have created a copy of <strong>ItemStyle.xsl&nbsp;&nbsp;</strong>and named it <strong>ItemStyle_News.xsl.</strong> I will be packaging this style sheet into the solution.&nbsp;</span></p>
<p><span style="font-size: medium;">Custom Style name&nbsp;can be provided. To be more specific to the topic I am not providing the steps to customize the xsl in this post.</span></p>
<p><span style="font-size: medium;">In the Empty SharePoint solution which we created in step 1 we have to add a style sheet.</span></p>
<p><span style="font-size: medium;">New Module Has to be created by Navigating to <em><strong>New Item -&gt; SharePoint 2010 -&gt; Module</strong></em>.</span></p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/2402.EmptyModuleCreation.jpg" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45/2402.EmptyModuleCreation.jpg"><img border="0" alt="" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/2402.EmptyModuleCreation.jpg" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45/2402.EmptyModuleCreation.jpg" /></a></p>
<p><span style="font-size: medium;">Stylesheet can be adding by Navigating to <em><strong>New item -&gt; Data -&gt; XSLT File</strong></em>. Change the Name to the same name which was given earlier for Custom ItemStyle, also provide the extension as .xsl instead of .xslt, in this example "<strong>ItemStyle_News.xsl</strong>".</span></p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/2084.AddXSLFiletoModule.jpg" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45/2084.AddXSLFiletoModule.jpg"><img border="0" alt="" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/2084.AddXSLFiletoModule.jpg" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45/2084.AddXSLFiletoModule.jpg" /></a></p>
<p><span style="font-size: medium;">Copy paste the File or content from Customized <strong>ItemStyle_News.xsl</strong> to Visual Studio <strong>ItemStyle_News.xsl</strong>.</span></p>
<p><span style="font-size: medium;">&nbsp;Once the xsl is ready we have to mention the destination of xsl file by opening elements.xml file. I have chosen <em><strong>Style Library/XSL Style Sheets/ItemStyle_News.xsl</strong></em> the same location where Default Styles are present.</span></p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/7318.EditElementFile.jpg" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45/7318.EditElementFile.jpg"><img border="0" alt="" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/7318.EditElementFile.jpg" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45/7318.EditElementFile.jpg" /></a></p>
<p>&nbsp;</p>
<p><span style="color: #008080; font-size: large;"><strong></strong></span>&nbsp;</p>
<p><span style="font-family: arial black,avant garde; color: #008080; font-size: large;"><strong>Step 3: Including the CQWP webpart to the solution. </strong></span></p>
<p><span style="font-size: medium;">Once the CQWP is added to the site, export the webpart and make the necessary modifications like including the View Fields.</span></p>
<p><span style="font-size: medium;">We have to mention the Custom Style sheets reference in .webpart file.</span></p>
<p></p>
<p><span style="font-size: medium;">Open the .webpart file and modify the property <strong>ItemXslLink</strong>.</span></p>
<p><strong><span style="font-size: medium;">&lt;property name="ItemXslLink" type="string" &gt;/Style%20Library/XSL Style Sheets/ItemStyle_News.xsl&lt;/property&gt;</span></strong></p>
<p><span style="font-size: medium;">You can also modify the Style you want to reference by modifying the property ItemStyle.</span></p>
<p></p>
<p><span style="font-size: medium;">&nbsp;Build the solution and deploy to SharePoint site.</span></p>
<p><span style="font-size: medium;">To deploy the solution Open Site settings of your SharePoint Online Site by navigating to <em><strong>Site settings -&gt; solutions</strong></em>.</span></p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/1070.SolutionsOption.jpg" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45/1070.SolutionsOption.jpg"><img border="0" alt="" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/1070.SolutionsOption.jpg" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45/1070.SolutionsOption.jpg" /></a></p>
<p><span style="font-size: medium;">Upload and Activate the solution.&nbsp;</span></p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/5773.UploadOption.jpg" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45/5773.UploadOption.jpg"><img border="0" alt="" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/5773.UploadOption.jpg" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45/5773.UploadOption.jpg" /></a></p>
<p><span style="font-size: medium;">&nbsp;Once you activate the solution you should be able to the StyleSheet copied to XSL Style Sheets folder and CQWP webpart populated to Site Webpart Catalog.</span></p>
<p>&nbsp;<a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/7367.CustomXSLInStyleLibrary.jpg" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45/7367.CustomXSLInStyleLibrary.jpg"><img border="0" alt="" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/7367.CustomXSLInStyleLibrary.jpg" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45/7367.CustomXSLInStyleLibrary.jpg" /></a></p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/6204.WebpartInWebpartGallery.jpg" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45/6204.WebpartInWebpartGallery.jpg"><img border="0" alt="" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/6204.WebpartInWebpartGallery.jpg" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45/6204.WebpartInWebpartGallery.jpg" /></a></p>
<p>&nbsp;</p>
<p><span style="font-size: medium;">Note: The steps provided&nbsp;also works&nbsp;for On Premise environment, however it is deployed as sanboxed solution not as farm based solution.</span></p>
<p><span style="font-size: medium;">Hope this post helps in quickly packaging the customizations into solution files.&nbsp;</span></p>
<p>&nbsp;</p>]]></content:encoded>
    </item>
    <item>
      <title>Uninstallation of Language packs on SharePoint Server 2010</title>
      <link>https://docs.microsoft.com/archive/blogs/gajendra/uninstallation-of-language-packs-on-sharepoint-server-2010</link>
      <pubDate>Fri, 25 Nov 2011 01:55:00 GMT</pubDate>
      <dc:creator><![CDATA[Gajendra Babu Thokala]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/gajendra/2011/11/25/uninstallation-of-language-packs-on-sharepoint-server-2010/</guid>
      <description><![CDATA[Uninstallation of one or more language pack&nbsp;on sharepoint farm is not a straight forward step....]]></description>
      <content:encoded><![CDATA[<p>Uninstallation of one or more language pack&nbsp;on sharepoint farm is not a straight forward step. Though it might seem simple, if the sequence is not followed you might end up corrupting your&nbsp;SP&nbsp;Database.</p>
<p>Follow the below 4 steps in order to remove language packs.</p>
<p><span style="color: #3366ff; font-size: medium;"><b>1)&nbsp;&nbsp;&nbsp;&nbsp;</b><b>Uninstalling the language packs</b></span></p>
<p style="padding-left: 30px;">Uninstallation has to be done using Control Panel (Programs and Features)</p>
<p style="padding-left: 30px;"><b>Note:</b> Make sure you uninstall the same set of language packs on all the servers in the farm before executing the SharePoint wizard.</p>
<p style="padding-left: 30px;">In the below steps Uninstallation of <b>French</b> language pack is demonstrated.</p>
<p style="padding-left: 30px;">For consistency, check if the language packs is installed on all the servers from Central Administration -&gt; Servers in Farm Page. In the below snapshot there is only one language pack installed (French).&nbsp;&nbsp;Uninstallation of this language pack has to be done&nbsp;on all the sharepoint farm servers (exclude SQL server)&nbsp;</p>
<p style="padding-left: 30px;">&nbsp;<a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/2450.SharepointFarm_withFrenchLanguagePack_Enlarged.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45/2450.SharepointFarm_5F00_withFrenchLanguagePack_5F00_Enlarged.png"><img border="0" alt="" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/2450.SharepointFarm_withFrenchLanguagePack_Enlarged.png" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45/2450.SharepointFarm_5F00_withFrenchLanguagePack_5F00_Enlarged.png" /></a><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/3755.SharepointFarm_withFrenchLanguagePack_Enlarged.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45/3755.SharepointFarm_5F00_withFrenchLanguagePack_5F00_Enlarged.png"></a><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/2022.SharepointFarm_withFrenchLanguagePack.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45/2022.SharepointFarm_5F00_withFrenchLanguagePack.png"></a><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/43/8551.SharepointFarm_withFrenchLanguagePack.png" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-43/8551.SharepointFarm_5F00_withFrenchLanguagePack.png"></a></p>
<p style="padding-left: 30px;"><b>Uninstalling using Control Panel</b></p>
<p style="padding-left: 60px;">i)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Navigate to Control Panel -&gt; Uninstall a Program</p>
<p style="padding-left: 60px;">ii)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Select the Language pack and uninstall it.</p>
<p style="padding-left: 60px;">iii)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Repeat these steps for all the servers.</p>
<p style="padding-left: 60px;"><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/43/3122.LanguagePack_UnistallScreen.png" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-43/3122.LanguagePack_5F00_UnistallScreen.png"><img border="0" alt="" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/43/3122.LanguagePack_UnistallScreen.png" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-43/3122.LanguagePack_5F00_UnistallScreen.png" /></a></p>
<p><b></b>&nbsp;</p>
<p style="padding-left: 30px;">&nbsp;<span style="color: #ff0000;">Don&rsquo;t proceed to next step until uninstallation is done on all the servers in farm.</span></p>
<p>&nbsp;</p>
<p><span style="color: #3366ff; font-size: medium;"><b>2)&nbsp;&nbsp;&nbsp;&nbsp;</b><b>Force&nbsp;a timer job to run</b></span></p>
<p style="padding-left: 30px;">Run the command <b><i>Get-SPProduct -local</i></b> on all the servers.&nbsp; Doing so forces&nbsp;a timer job to run that does some version fix up.&nbsp;</p>
<p style="padding-left: 30px;"><b>Note: </b>Missing this step will lead to error messages as in snapshot below during wizard execution.</p>
<p style="padding-left: 30px;"><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/43/2337.LanguagePackerror.JPG" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-43/2337.LanguagePackerror.JPG"><img border="0" alt="" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/43/2337.LanguagePackerror.JPG" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-43/2337.LanguagePackerror.JPG" width="501" height="413" /></a>&nbsp;&nbsp;</p>
<p><span style="color: #3366ff; font-size: medium;"><b></b></span>&nbsp;</p>
<p><span style="color: #3366ff; font-size: medium;"><b>3)&nbsp;&nbsp;&nbsp;&nbsp;</b><b>Execute the SharePoint wizard</b></span></p>
<p style="padding-left: 30px;">SharePoint Wizard can be executed either through UI or psconfig command line.</p>
<p style="padding-left: 30px;">Note:&nbsp; Wizard should be executed on servers in the below order.</p>
<p style="padding-left: 30px;">WFE's, APP, APPCA</p>
<p style="padding-left: 30px;"><b>a)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </b><b>Execute wizard from UI</b></p>
<p style="padding-left: 60px;">Navigate to All Programs -&gt; Microsoft SharePoint 2010 -&gt; Microsoft SharePoint 2010 Products Configuration Wizard</p>
<p style="padding-left: 30px;"><b>b)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </b><b>Execute psconfig from command line</b></p>
<p style="padding-left: 60px;">&gt; PSCONFIG.EXE -cmd upgrade -inplace b2b -wait&nbsp;</p>
<p style="padding-left: 60px;">Reference link for PSCONFIG <a href="https://technet.microsoft.com/en-us/library/cc263093.aspx">https://technet.microsoft.com/en-us/library/cc263093.aspx</a></p>
<p style="padding-left: 30px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;If psconfig execution stops abruptly with the messages as shown below.</p>
<p style="padding-left: 60px;"><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/6840.Psconfig%20Error.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45/6840.Psconfig-Error.png"></a><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/3426.Psconfig%20Error.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45/3426.Psconfig-Error.png"><img border="0" alt="" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/3426.Psconfig%20Error.png" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45/3426.Psconfig-Error.png" /></a>&nbsp;</p>
<p style="padding-left: 60px;">Then execute the command&nbsp; &gt; <strong>stsadm -o setproperty -propertyname command-line-upgrade-running -propertyvalue No</strong>&nbsp;</p>
<p style="padding-left: 60px;">Once this commands executes successfully then rerun psconfig command.</p>
<p style="padding-left: 60px;"><img border="0" alt="" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/43/5428.PSCONFIG%20Success.png" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-43/5428.PSCONFIG-Success.png" /></p>
<p><span style="color: #3366ff; font-size: medium;"><b>4)&nbsp;&nbsp;&nbsp; Uninstallation of Language Pack Features</b></span></p>
<p>&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1. Navigate to SharePoint Management Shell and execute the below command</p>
<p style="padding-left: 30px;"><span style="color: #3366ff; font-size: medium;"><b></b></span></p>
<p style="padding-left: 30px;">&gt;Get-SPFeature</p>
<p style="padding-left: 30px;"><span style="color: #3366ff; font-size: medium;"><b></b></span></p>
<p style="padding-left: 30px;">2. Once the features are listed, check for ALL the features ending with Language Pack ID. In this case French Language pack ID is 1036. Snapshots below show few features Highlighted for Language Pack 1036.</p>
<p style="padding-left: 30px;"><span style="color: #3366ff; font-size: medium;"><b></b></span></p>
<p style="padding-left: 30px;">3. The Features associated with the Uninstalled language packs will have Scope Empty.</p>
<p style="padding-left: 30px;"><span style="color: #3366ff; font-size: medium;"><b></b></span></p>
<p style="padding-left: 30px;">4. Pick all the Features Ids for the uninstalled language packs and uninstall all of them using the below Command.</p>
<p style="padding-left: 30px;"><span style="color: #3366ff; font-size: medium;"><b></b></span></p>
<p style="padding-left: 30px;">&gt; stsadm.exe -o uninstallfeature -id &lt;featureId&gt; -force</p>
<p style="padding-left: 30px;"><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/2248.LanguagePackFeature1.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45/2248.LanguagePackFeature1.png"><img border="0" alt="" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/2248.LanguagePackFeature1.png" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45/2248.LanguagePackFeature1.png" /></a></p>
<p style="padding-left: 30px;"><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/1351.LanguagePackFeature2.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45/1351.LanguagePackFeature2.png"><img border="0" alt="" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/49/45/1351.LanguagePackFeature2.png" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-49-45/1351.LanguagePackFeature2.png" /></a></p>
<p><span style="color: #3366ff; font-size: medium;"><b></b></span></p>
<p><span style="color: #3366ff; font-size: medium;"><strong>5)&nbsp;&nbsp;&nbsp; Verification of Language pack Uninstallation</strong></span></p>
<p style="padding-left: 30px;">a)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Navigate to Central Administration -&gt; System Settings -&gt;Servers In Farm<b></b></p>
<p style="padding-left: 30px;">b)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Make sure the uninstalled language pack(s) are not appearing Under SharePoint Products Installed section.</p>]]></content:encoded>
    </item>
  </channel>
</rss>