<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Islam Eldemery's Open-Source</title>
	<atom:link href="http://idemery.net/feed/" rel="self" type="application/rss+xml" />
	<link>http://idemery.net</link>
	<description>Please share more sources!!</description>
	<lastBuildDate>Sat, 13 Aug 2011 06:33:38 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='idemery.net' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://0.gravatar.com/blavatar/6f42d346bf221f1cbdba86607e278319?s=96&#038;d=http%3A%2F%2Fs2.wp.com%2Fi%2Fbuttonw-com.png</url>
		<title>Islam Eldemery's Open-Source</title>
		<link>http://idemery.net</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://idemery.net/osd.xml" title="Islam Eldemery&#039;s Open-Source" />
	<atom:link rel='hub' href='http://idemery.net/?pushpress=hub'/>
		<item>
		<title>CRM 2011 &#8211; Employee Self-Service CAL (ESS) (Reduce 90% of CAL cost!)</title>
		<link>http://idemery.net/2011/05/16/crm-2011-employee-self-service-cal-ess/</link>
		<comments>http://idemery.net/2011/05/16/crm-2011-employee-self-service-cal-ess/#comments</comments>
		<pubDate>Mon, 16 May 2011 09:20:17 +0000</pubDate>
		<dc:creator>Islam Eldemery</dc:creator>
				<category><![CDATA[CRM]]></category>

		<guid isPermaLink="false">http://idemery.net/?p=123</guid>
		<description><![CDATA[A new type of CAL has been introduced to the model to allow for licensing internal users that use other applications to connect to CRM without using the CRM web or outlook user interfaces. This employee self-service CAL (ESS CAL) is particularly useful for line-of-business (LOB) xRM applications and for intranet portals that are connected [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idemery.net&amp;blog=7407972&amp;post=123&amp;subd=idemery&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>A new type of CAL has been introduced to the model to allow for licensing internal users that use other applications to connect to CRM without using the CRM web or outlook user interfaces.  This employee self-service CAL (ESS CAL) is particularly useful for line-of-business (LOB) xRM applications and for intranet portals that are connected to CRM.<br />
This license type is still a CAL, and that means that it is needed for every internal user.  The good news is that it is approximately 10% of the cost of the full-use CAL.<br />
In the past, if you were to build a helpdesk portal for internal users, you would have to license every user in your organization for CRM, even if they were not actually using CRM.  For example, you may have a helpdesk staff of 10 users supporting a company of 500 users.  Without the ESS CAL, you would need 510 CRM full use CALs.  With the new ESS CAL, you would need 10 full use CALs and 500 ESS CALs, representing a savings of just under 90%.<br />
There are some restrictions with the ESS CAL.  First off, the obvious &#8211; the user can only access CRM through an application that uses the CRM SDK.  They cannot access CRM using the CRM Outlook or Web UIs.  There are also limitations on which SDK calls can be made.  The ESS CAL can create, read, and update all entities in CRM but is restricted to not delete, assign, or share through the SDK.  The good news is that it can change state, so the delete capability can be achieved by changing the state to InActive, which is probably best practice anyways, especially if you have turned on auditing and want your audit data to stick around&#8230;</p>
<p><a href="http://www.shanmcarthur.net/crm/crm2011-articles/licensing-changes-for-crm-2011" title="Read more.." target="_blank">Read more..</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/idemery.wordpress.com/123/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/idemery.wordpress.com/123/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/idemery.wordpress.com/123/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/idemery.wordpress.com/123/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/idemery.wordpress.com/123/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/idemery.wordpress.com/123/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/idemery.wordpress.com/123/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/idemery.wordpress.com/123/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/idemery.wordpress.com/123/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/idemery.wordpress.com/123/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/idemery.wordpress.com/123/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/idemery.wordpress.com/123/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/idemery.wordpress.com/123/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/idemery.wordpress.com/123/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idemery.net&amp;blog=7407972&amp;post=123&amp;subd=idemery&amp;ref=&amp;feed=1" width="1" height="1" /><div class="sharedaddy sd-like-enabled"></div>]]></content:encoded>
			<wfw:commentRss>http://idemery.net/2011/05/16/crm-2011-employee-self-service-cal-ess/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/91db2b33d15030c4bfcfb8c78f5ba337?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Islam Eldemery</media:title>
		</media:content>
	</item>
		<item>
		<title>How to add a custom page to CRM 4.0 like the Settings page</title>
		<link>http://idemery.net/2010/08/12/how-to-add-a-custom-page-to-crm-4-0-like-the-settings-page/</link>
		<comments>http://idemery.net/2010/08/12/how-to-add-a-custom-page-to-crm-4-0-like-the-settings-page/#comments</comments>
		<pubDate>Thu, 12 Aug 2010 08:21:40 +0000</pubDate>
		<dc:creator>Islam Eldemery</dc:creator>
				<category><![CDATA[CRM]]></category>

		<guid isPermaLink="false">http://idemery.wordpress.com/?p=105</guid>
		<description><![CDATA[I wanted to add a custom developed aspx page to the CRM site like the Settings page in order to have some functionality that cannot appear in an iframe on an entity form (that&#8217;s a business point of view). The Target: The Result: So here are the steps to implement the same page in the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idemery.net&amp;blog=7407972&amp;post=105&amp;subd=idemery&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I wanted to add a custom developed aspx page to the CRM site like the <strong>Settings page</strong> in order to have some functionality that cannot appear in an iframe on an entity form (that&#8217;s a business point of view).</p>
<p><strong>The Target:</strong><br />
<img alt="CRM Settings" src="http://idemery.files.wordpress.com/2010/08/crmsettings.png?w=888&#038;h=590" title="CRM Settings" class="alignnone" width="888" height="590" /></p>
<p><strong>The Result:</strong><br />
<img alt="Custom CRM Page" src="http://idemery.files.wordpress.com/2010/08/crmcustomsettings.png?w=890&#038;h=592" title="Custom CRM Page" class="alignnone" width="890" height="592" /></p>
<p>So here are the steps to implement the same page in the above image (considering you have visual studio installed on the CRM server):</p>
<ol>
<li>Create new <strong>Class Library project</strong></li>
<li>Reference these DLLs: <strong>Microsoft.Crm.Application.Components.Application.dll</strong>, <strong>Microsoft.Crm.Application.Components.UI.dll</strong>, <strong>Microsoft.Crm.SafeHtml.dll</strong> you can find these DLLs in the <strong>bin directory</strong> of your CRM site (ex. C:\inetpub\wwwroot\bin)</li>
<li>Add reference to <strong>System.Web</strong></li>
<li>Add a new class with the following code:
<pre class="brush: csharp;">
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.Crm.Application;
using Microsoft.Crm;
using System.Web.UI.WebControls;

namespace iDemery.Crm.CustomPages
{
    [QueryStringParameter(&quot;pid&quot;, ParameterType.Integer), QueryStringParameter(&quot;vid&quot;, ParameterType.Integer)]
    public abstract class AdminTestPage : AppNavPage
    {
        public AdminTestPage()
        {

        }

        protected override void ConfigurePage()
        {
            base.HomePage = &quot;adminTest.aspx&quot;;
            base.Area = &quot;custom administration&quot;;
            base.Nav = &quot;nav_administration&quot;;
            base.ConfigurePage();
        }

        protected override void Render(System.Web.UI.HtmlTextWriter writer)
        {
            //base.Render(writer);

            Button button = new Button();
            button.Text = &quot;helloooooooooooo&quot;;
            button.RenderControl(writer);
        }
    }
}
             </pre>
</li>
<li>To <strong>enable debugging</strong>, right click on your project&#8217;s name in the solution explorer window and open the <strong>properties page</strong>, change the <strong>output path</strong> from the build menu to the <strong>bin directory</strong> of your CRM site (ex. inetpub\wwwroot\bin\)</li>
<li>Create a new page and name it adminTest.aspx with the following line
<pre class="brush: xml;">
&lt;%@ Page language=&quot;c#&quot; Inherits=&quot;iDemery.Crm.CustomPages.AdminTestPage&quot; %&gt;
        </pre>
<p>        Put this page in the CRM Site, Tools, Admin directory (ex. C:\inetpub\wwwroot\Tools\Admin)
        </li>
<li>Now the page is ready and we want it to appear on the <strong>left CRM menu</strong>, go to <strong>Settings</strong>, <strong>Customization</strong>, <strong>Export Customization</strong> and choose to export the <strong>Site Map</strong> customization</li>
<li>In the exported <strong>customizations.xml</strong> file add the following <strong>area</strong>:
<pre class="brush: xml;">
      &lt;Area Id=&quot;CustomPages&quot; ShowGroups=&quot;true&quot; Icon=&quot;/_imgs/settings_24x24.gif&quot;&gt;
      	&lt;Titles&gt;
        	&lt;Title LCID=&quot;1033&quot; Title=&quot;Custom Pages&quot; /&gt;
        	&lt;Title LCID=&quot;1025&quot; Title=&quot;Other language&quot; /&gt;
      	&lt;/Titles&gt;
      	&lt;Descriptions&gt;
        	&lt;Description LCID=&quot;1033&quot; Description=&quot; Custom Pages&quot; /&gt;
        	&lt;Description LCID=&quot;1025&quot; Description=&quot;Other language&quot; /&gt;
      	&lt;/Descriptions&gt;
	&lt;Group Id=&quot;TestSettings&quot;&gt;
        	&lt;Titles&gt;
          		&lt;Title LCID=&quot;1033&quot; Title=&quot;Test Page&quot; /&gt;
          		&lt;Title LCID=&quot;1025&quot; Title=&quot;Other language&quot; /&gt;
        	&lt;/Titles&gt;
		&lt;SubArea Id=&quot;nav_administration&quot; Title=&quot;Test 1&quot; DescriptionResourceId=&quot;Administration_SubArea_Description&quot; Icon=&quot;/_imgs/ico_18_administration.gif&quot; Url=&quot;/tools/Admin/adminTest.aspx&quot; AvailableOffline=&quot;false&quot; /&gt;
	&lt;/Group&gt;
      &lt;/Area&gt;
                 </pre>
</li>
<li>Of course you can change the title, add titles from other languages, change the icon and save the customizations.xml file.</li>
<li>Go to <strong>Settings</strong>, <strong>Customization</strong>, <strong>Import Customizations</strong> and import the <strong>customizations.xml</strong> file.</li>
<li>Back to visual studio, build your project and you are done.</li>
<li>To start debugging, go to <strong>Tools</strong>, <strong>Attach to process</strong>, and choose to attach to the <strong>w3wp.exe</strong> process</li>
</ol>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/idemery.wordpress.com/105/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/idemery.wordpress.com/105/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/idemery.wordpress.com/105/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/idemery.wordpress.com/105/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/idemery.wordpress.com/105/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/idemery.wordpress.com/105/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/idemery.wordpress.com/105/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/idemery.wordpress.com/105/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/idemery.wordpress.com/105/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/idemery.wordpress.com/105/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/idemery.wordpress.com/105/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/idemery.wordpress.com/105/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/idemery.wordpress.com/105/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/idemery.wordpress.com/105/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idemery.net&amp;blog=7407972&amp;post=105&amp;subd=idemery&amp;ref=&amp;feed=1" width="1" height="1" /><div class="sharedaddy sd-like-enabled"></div>]]></content:encoded>
			<wfw:commentRss>http://idemery.net/2010/08/12/how-to-add-a-custom-page-to-crm-4-0-like-the-settings-page/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/91db2b33d15030c4bfcfb8c78f5ba337?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Islam Eldemery</media:title>
		</media:content>

		<media:content url="http://idemery.files.wordpress.com/2010/08/crmsettings.png" medium="image">
			<media:title type="html">CRM Settings</media:title>
		</media:content>

		<media:content url="http://idemery.files.wordpress.com/2010/08/crmcustomsettings.png" medium="image">
			<media:title type="html">Custom CRM Page</media:title>
		</media:content>
	</item>
		<item>
		<title>SharePoint Powershell Script Generator for SPSolution Deployment</title>
		<link>http://idemery.net/2010/06/26/sharepoint-powershell-script-generator-for-spsolution-deployment/</link>
		<comments>http://idemery.net/2010/06/26/sharepoint-powershell-script-generator-for-spsolution-deployment/#comments</comments>
		<pubDate>Sat, 26 Jun 2010 11:54:07 +0000</pubDate>
		<dc:creator>Islam Eldemery</dc:creator>
		
		<guid isPermaLink="false">http://idemery.wordpress.com/?p=89</guid>
		<description><![CDATA[Download Application &#8211; 7.77 KB Download Source Code &#8211; 93.4 KB Here is an easy way to deploy .wsp files on your servers, Steps: Start the application (it will ask for administrator privileges). Browse for the .wsp solution file. Enter the solution identity (default to .wsp file name). Enter the feature name. Enter the web [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idemery.net&amp;blog=7407972&amp;post=89&amp;subd=idemery&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<ul>
<li><a href="http://files.bdevgate.com/idemery/files/SharePointPowerShellScriptGenerator.zip">Download Application &#8211; 7.77 KB</a></li>
<li><a href="http://files.bdevgate.com/idemery/files/SharePointPowerShellScriptGenerator.SourceCode.zip">Download Source Code &#8211; 93.4 KB</a></li>
</ul>
<p>Here is an easy way to deploy .wsp files on your servers, </p>
<p><img src="http://idemery.files.wordpress.com/2010/06/scriptgenerator.jpg?w=600" alt="Script Generator UI" /></p>
<p><strong>Steps:</strong></p>
<ul>
<li>Start the application (it will ask for administrator privileges).</li>
<li>Browse for the .wsp solution file.</li>
<li>Enter the solution identity (default to .wsp file name).</li>
<li>Enter the feature name.</li>
<li>Enter the web application url to activate the feature on (default to http://currentServerName:80/).</li>
<li>Decide whether to deploy the solution to all applications (default to all applications).</li>
<li>Hit the Generate Batch Files button!</li>
</ul>
<p>This will open the folder that contains the .wsp file, and show you the generated .ps1 file that contains the Powershell commands, and the .bat file that shall run the .ps1 file, and automatically runs the batch file.</p>
<p><img src="http://idemery.files.wordpress.com/2010/06/generatedfiles.jpg?w=600" alt="Generated Script Files" /></p>
<p>If you are into editing and deploying the same .wsp file many times, the procedure of deploying will just be 1 click of hitting the Generate Batch Files button.</p>
<p>Here is the application source code for whom of you guys interested,</p>
<pre class="brush: csharp;">
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;

namespace SharePointPowerShellScriptGenerator
{
    public partial class FormMain : Form
    {
        #region Constructor

        public FormMain()
        {
            InitializeComponent();

            openFileDialogSolutionWsp.AutoUpgradeEnabled = true;
            openFileDialogSolutionWsp.CheckFileExists = true;
            openFileDialogSolutionWsp.CheckPathExists = true;
            openFileDialogSolutionWsp.DefaultExt = &quot;.wsp&quot;;
            openFileDialogSolutionWsp.Multiselect = false;
            openFileDialogSolutionWsp.RestoreDirectory = true;
            openFileDialogSolutionWsp.SupportMultiDottedExtensions = true;
            openFileDialogSolutionWsp.Filter = &quot;SharePoint Solution Package (*.wsp)|*.wsp&quot;;
            openFileDialogSolutionWsp.FilterIndex = 0;
            openFileDialogSolutionWsp.FileName = &quot;SharePoint_Solution_Package.wsp&quot;;

            WebApplicationUrl = string.Format(&quot;http://{0}:80/&quot;, Environment.MachineName);
            for (int i = 0; i &lt; checkedListBoxActions.Items.Count; i++)
            {
                checkedListBoxActions.SetItemChecked(i, true);
            }
        }

        #endregion

        #region Properties

        public string SolutionIdentity { get { return textBoxIdentity.Text.Trim(); } set { textBoxIdentity.Text = value; } }
        public string SolutionPath { get { return textBoxSolutionPath.Text.Trim(); } set { textBoxSolutionPath.Text = value; } }
        public string WebApplicationUrl { get { return textBoxWebApplicationUrl.Text.Trim(); } set { textBoxWebApplicationUrl.Text = value; } }
        public string FeatureName { get { return textBoxFeatureName.Text.Trim(); } set { textBoxFeatureName.Text = value; } }
        public string DirectoryPath { get; set; }

        #endregion

        #region Methods

        private void GeneratePowershellScript(string generatedFileName)
        {
            StringBuilder sb = new StringBuilder();

            sb.AppendLine(string.Format(&quot;Add-PsSnapin Microsoft.SharePoint.PowerShell&quot;));
            sb.AppendLine();
            sb.AppendLine(string.Format(@&quot;$SiteUrl=&quot;&quot;{0}&quot;&quot;&quot;, WebApplicationUrl));
            sb.AppendLine(string.Format(@&quot;$SolutionName=&quot;&quot;{0}&quot;&quot;&quot;, SolutionIdentity));
            sb.AppendLine(string.Format(@&quot;$SolutionPath=&quot;&quot;{0}&quot;&quot;&quot;, SolutionPath));
            sb.AppendLine(string.Format(@&quot;$FeatureName=&quot;&quot;{0}&quot;&quot;&quot;, FeatureName));
            sb.AppendLine();
            sb.AppendLine(&quot;$FeatureID= $(Get-SPFeature -limit all | ? {($_.displayname -eq $FeatureName)}).Id&quot;);
            sb.AppendLine(string.Format(&quot;$SingleSiteCollection = Get-SPSite $SiteUrl&quot;));
            sb.AppendLine();
            sb.AppendLine();

            // STARTING SHAREPOINT ADMINISTRATING SERVICE
            sb.AppendLine(@&quot;$AdminServiceName = &quot;&quot;SPAdminV4&quot;&quot;&quot;);
            sb.AppendLine(&quot;$IsAdminServiceWasRunning = $true;&quot;);
            sb.AppendLine();
            sb.AppendLine();
            sb.AppendLine(@&quot;if ($(Get-Service $AdminServiceName).Status -eq &quot;&quot;Stopped&quot;&quot;)&quot;);
            sb.AppendLine(&quot;{&quot;);
            sb.AppendLine(&quot;    $IsAdminServiceWasRunning = $false;&quot;);
            sb.AppendLine(&quot;    Start-Service $AdminServiceName&quot;);
            sb.AppendLine(@&quot;   Write-Host 'SERVICE WAS STOPPED, SO IT IS NOW STARTED'&quot;);
            sb.AppendLine(&quot;}&quot;);
            sb.AppendLine();

            // DISABLE FEATURE
            if (checkedListBoxActions.GetItemChecked(0))
            {
                sb.AppendLine(@&quot;Write-Host 'DEACTIVATING FEATURE ...'&quot;);
                sb.AppendLine();
                sb.AppendLine(&quot;Disable-SPFeature $FeatureName -Url $SiteUrl -Confirm:$false&quot;);
                sb.AppendLine(@&quot;Write-Host 'FEATURE HAS BEEN DEACTIVATED SUCCESSFULLY.'&quot;);
                sb.AppendLine();
            }

            // UNINSTALL SOLUTION
            if (checkedListBoxActions.GetItemChecked(1))
            {
                sb.AppendLine(@&quot;Write-Host 'UNINSTALLING SOLUTION ...'&quot;);
                sb.AppendLine();
                sb.AppendLine(&quot;$Solution = Get-SPSolution | ? {($_.Name -eq $SolutionName) -and ($_.Deployed -eq $true)}&quot;);
                sb.AppendLine();
                sb.AppendLine(&quot;if ($Solution -ne $null)&quot;);
                sb.AppendLine(&quot;{&quot;);
                sb.AppendLine(&quot;    if($Solution.ContainsWebApplicationResource)&quot;);
                sb.AppendLine(&quot;    {&quot;);
                sb.AppendLine(&quot;        Uninstall-SPSolution $SolutionName -AllWebApplications -Confirm:$false&quot;);
                sb.AppendLine(&quot;    }&quot;);
                sb.AppendLine(&quot;    else&quot;);
                sb.AppendLine(&quot;    {&quot;);
                sb.AppendLine(&quot;        Uninstall-SPSolution $SolutionName -Confirm:$false&quot;);
                sb.AppendLine(&quot;    }&quot;);
                sb.AppendLine(&quot;}&quot;);
                sb.AppendLine();
                sb.AppendLine(&quot;while ($Solution.JobExists)&quot;);
                sb.AppendLine(&quot;{&quot;);
                sb.AppendLine(&quot;    Start-Sleep 2&quot;);
                sb.AppendLine(&quot;}&quot;);
                sb.AppendLine();
                sb.AppendLine(@&quot;Write-Host 'SOLUTION HAS BEEN UNINSTALLED SUCCESSFULLY.'&quot;);
                sb.AppendLine();
            }

            // REMOVE SOLUTION
            if (checkedListBoxActions.GetItemChecked(2))
            {
                sb.AppendLine(@&quot;Write-Host 'REMOVING SOLUTION ...'&quot;);
                sb.AppendLine();
                sb.AppendLine(&quot;if ($(Get-SPSolution | ? {$_.Name -eq $SolutionName}).Deployed -eq $false)&quot;);
                sb.AppendLine(&quot;{&quot;);
                sb.AppendLine(&quot;    Remove-SPSolution $SolutionName -Confirm:$false&quot;);
                sb.AppendLine();
                sb.AppendLine(@&quot;Write-Host 'SOLUTION HAS BEEN REMOVED SUCCESSFULLY.'&quot;);
                sb.AppendLine(&quot;}&quot;);
                sb.AppendLine();
            }

            // ADD SOLUTION
            if (checkedListBoxActions.GetItemChecked(3))
            {
                sb.AppendLine(@&quot;Write-Host 'ADDING SOLUTION ...'&quot;);
                sb.AppendLine();
                sb.AppendLine(&quot;Add-SPSolution $SolutionPath  | Out-Null&quot;);
                sb.AppendLine();
                sb.AppendLine(@&quot;Write-Host 'SOLUTION HAS BEEN ADDED SUCCESSFULLY.'&quot;);
                sb.AppendLine();
            }

            // INSTALL SOLUTION
            if (checkedListBoxActions.GetItemChecked(4))
            {
                sb.AppendLine(@&quot;Write-Host 'DEPLOYING SOLUTION ...'&quot;);
                sb.AppendLine();
                sb.AppendLine(&quot;$Solution = Get-SPSolution | ? {($_.Name -eq $SolutionName) -and ($_.Deployed -eq $false)}&quot;);
                sb.AppendLine();
                sb.AppendLine(&quot;if(($Solution -ne $null) -and ($Solution.ContainsWebApplicationResource))&quot;);
                sb.AppendLine(&quot;{&quot;);

                if (checkBoxDeployToAll.Checked)
                {
                    sb.AppendLine(&quot;Install-SPSolution $SolutionName –AllwebApplications -GACDeployment -Confirm:$false&quot;);
                }
                else
                {
                    sb.AppendLine(&quot;Install-SPSolution $SolutionName -WebApplication $SiteUrl -GACDeployment -Confirm:$false&quot;);
                }

                sb.AppendLine(&quot;}&quot;);
                sb.AppendLine(&quot;else&quot;);
                sb.AppendLine(&quot;{&quot;);
                sb.AppendLine(&quot;Install-SPSolution $SolutionName -GACDeployment -Confirm:$false&quot;);
                sb.AppendLine(&quot;}&quot;);
                sb.AppendLine();
                sb.AppendLine(&quot;while ($Solution.Deployed -eq $false)&quot;);
                sb.AppendLine(&quot;{&quot;);
                sb.AppendLine(&quot;    Start-Sleep 2&quot;);
                sb.AppendLine(&quot;}&quot;);
                sb.AppendLine();
                sb.AppendLine(@&quot;Write-Host 'SOLUTION HAS BEEN DEPLOYED SUCCESSFULLY.'&quot;);
                sb.AppendLine();
            }

            // ENABLE FEATURE
            if (checkedListBoxActions.GetItemChecked(5))
            {
                sb.AppendLine(@&quot;Write-Host 'ACTIVATING FEATURE ...'&quot;);
                sb.AppendLine();
                sb.AppendLine(&quot;if ($FeatureName -ne $null)&quot;);
                sb.AppendLine(&quot;{&quot;);
                sb.AppendLine(&quot;    Enable-SPFeature $FeatureName -Url $SiteUrl&quot;);
                sb.AppendLine(&quot;}&quot;);
                sb.AppendLine();
                sb.AppendLine(@&quot;Write-Host 'FEATURE HAS BEEN ACTIVATED SUCCESSFULLY.'&quot;);
                sb.AppendLine();
            }

            // SHAREPOINT ADMINISTRATING SERVICE
            sb.AppendLine();
            sb.AppendLine(&quot;if (-not $IsAdminServiceWasRunning)&quot;);
            sb.AppendLine(&quot;{&quot;);
            sb.AppendLine(&quot;    Stop-Service $AdminServiceName&quot;);
            sb.AppendLine(&quot;}&quot;);
            sb.AppendLine();
            sb.AppendLine();

            sb.AppendLine(&quot;Remove-PsSnapin Microsoft.SharePoint.PowerShell&quot;);
            sb.AppendLine();
            sb.AppendLine(&quot;Echo Finish&quot;);

            File.WriteAllText(generatedFileName, sb.ToString(), Encoding.UTF8);
        }

        private void GenerateBatchFile(string powershellFileName, string generatedBatchFileName)
        {
            StringBuilder sb = new StringBuilder();
            sb.AppendLine(&quot;@echo off&quot;);
            sb.AppendLine(string.Format(&quot;Set DeploymentPackageFolder={0}&quot;, DirectoryPath));
            sb.AppendLine(&quot;cd %DeploymentPackageFolder%&quot;);
            sb.AppendLine(string.Format(@&quot;PowerShell -file .\{0}&quot;, powershellFileName));
            sb.AppendLine(&quot;pause&quot;);

            File.WriteAllText(generatedBatchFileName, sb.ToString());
        }

        #endregion

        #region UI Events

        private void checkedListBoxActions_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (checkedListBoxActions.SelectedIndex != 0) return;

            bool selected = checkedListBoxActions.GetItemChecked(checkedListBoxActions.SelectedIndex);

            checkedListBoxActions.SetItemChecked(1, selected);
            checkedListBoxActions.SetItemChecked(2, selected);
        }

        private void buttonSolutionBrowse_Click(object sender, EventArgs e)
        {
            if (openFileDialogSolutionWsp.ShowDialog() != DialogResult.OK) return;

            SolutionPath = openFileDialogSolutionWsp.FileName;
            SolutionIdentity = openFileDialogSolutionWsp.SafeFileName;

            DirectoryPath = openFileDialogSolutionWsp.FileName.Remove(openFileDialogSolutionWsp.FileName.IndexOf(openFileDialogSolutionWsp.SafeFileName));
        }

        private void buttonGenerateScript_Click(object sender, EventArgs e)
        {
            try
            {
                GeneratePowershellScript(DirectoryPath + &quot;script.txt&quot;);
                System.Diagnostics.Process.Start(DirectoryPath + &quot;script.txt&quot;);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, this.Text);
            }
        }

        private void buttonGenerateBatch_Click(object sender, EventArgs e)
        {
            try
            {
                string powershellFileName = &quot;PowershellDeploy.ps1&quot;;
                string batchFileName = &quot;InstallerBatch.bat&quot;;
                GeneratePowershellScript(DirectoryPath + powershellFileName);
                GenerateBatchFile(powershellFileName, DirectoryPath + batchFileName);

                System.Diagnostics.Process.Start(DirectoryPath);
                System.Diagnostics.Process.Start(DirectoryPath + batchFileName);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, this.Text);
            }
        }

        #endregion
    }
}
</pre>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/idemery.wordpress.com/89/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/idemery.wordpress.com/89/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/idemery.wordpress.com/89/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/idemery.wordpress.com/89/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/idemery.wordpress.com/89/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/idemery.wordpress.com/89/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/idemery.wordpress.com/89/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/idemery.wordpress.com/89/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/idemery.wordpress.com/89/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/idemery.wordpress.com/89/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/idemery.wordpress.com/89/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/idemery.wordpress.com/89/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/idemery.wordpress.com/89/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/idemery.wordpress.com/89/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idemery.net&amp;blog=7407972&amp;post=89&amp;subd=idemery&amp;ref=&amp;feed=1" width="1" height="1" /><div class="sharedaddy sd-like-enabled"></div>]]></content:encoded>
			<wfw:commentRss>http://idemery.net/2010/06/26/sharepoint-powershell-script-generator-for-spsolution-deployment/feed/</wfw:commentRss>
		<slash:comments>19</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/91db2b33d15030c4bfcfb8c78f5ba337?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Islam Eldemery</media:title>
		</media:content>

		<media:content url="http://idemery.files.wordpress.com/2010/06/scriptgenerator.jpg" medium="image">
			<media:title type="html">Script Generator UI</media:title>
		</media:content>

		<media:content url="http://idemery.files.wordpress.com/2010/06/generatedfiles.jpg" medium="image">
			<media:title type="html">Generated Script Files</media:title>
		</media:content>
	</item>
		<item>
		<title>SharePoint 2010 Alternate Access Mappings Cannot login error</title>
		<link>http://idemery.net/2010/06/26/sharepoint-2010-alternate-access-mappings-cannot-login-error/</link>
		<comments>http://idemery.net/2010/06/26/sharepoint-2010-alternate-access-mappings-cannot-login-error/#comments</comments>
		<pubDate>Sat, 26 Jun 2010 08:13:17 +0000</pubDate>
		<dc:creator>Islam Eldemery</dc:creator>
		
		<guid isPermaLink="false">http://idemery.wordpress.com/2010/06/26/sharepoint-2010-alternate-access-mappings-cannot-login-error/</guid>
		<description><![CDATA[I was configuring SharePoint 2010 on a customer&#8217;s production server using the alternate access mapping to map the customer&#8217;s domain to the SharePoint web application and I was able to log on to the SharePoint web application from my office and surprised that I cannot log on to the same application from inside the customer&#8217;s [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idemery.net&amp;blog=7407972&amp;post=86&amp;subd=idemery&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I was configuring SharePoint 2010 on a customer&#8217;s production server using the alternate access mapping to map the customer&#8217;s domain to the SharePoint web application and I was able to log on to the SharePoint web application from my office and surprised that I cannot log on to the same application from inside the customer&#8217;s company (notice that the customer&#8217;s domain name is the same domain controller name), after googling the problem I found that it was a IIS7 related to Windows Server 2008 R2 issue.</p>
<p>Here is the steps to solve that,</p>
<ul>
<li>Start Registry Editor (Regedt32.exe).</li>
<li>Locate and click the following key in the registry:</li>
<li>HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanmanServer\Parameters</li>
<li>On the Edit menu, click Add Value, and then add the following registry value:
<ul>
<li>Value name: DisableStrictNameChecking</li>
<li>Data type: REG_DWORD</li>
<li>Radix: Decimal</li>
<li>Value: 1</li>
</ul>
</li>
<li>In Registry Editor, locate and then click the following registry key:
<ul>
<li>HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa o Right-click Lsa, point<br />
                    to New, and then click DWORD Value.</li>
<li>Type DisableLoopbackCheck, and then press ENTER. o Right-click DisableLoopbackCheck,<br />
                    and then click Modify.</li>
<li>o In the Value data box, type 1, and then click OK</li>
</ul>
</li>
<li>Restart the server</li>
</ul>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/idemery.wordpress.com/86/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/idemery.wordpress.com/86/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/idemery.wordpress.com/86/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/idemery.wordpress.com/86/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/idemery.wordpress.com/86/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/idemery.wordpress.com/86/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/idemery.wordpress.com/86/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/idemery.wordpress.com/86/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/idemery.wordpress.com/86/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/idemery.wordpress.com/86/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/idemery.wordpress.com/86/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/idemery.wordpress.com/86/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/idemery.wordpress.com/86/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/idemery.wordpress.com/86/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idemery.net&amp;blog=7407972&amp;post=86&amp;subd=idemery&amp;ref=&amp;feed=1" width="1" height="1" /><div class="sharedaddy sd-like-enabled"></div>]]></content:encoded>
			<wfw:commentRss>http://idemery.net/2010/06/26/sharepoint-2010-alternate-access-mappings-cannot-login-error/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/91db2b33d15030c4bfcfb8c78f5ba337?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Islam Eldemery</media:title>
		</media:content>
	</item>
		<item>
		<title>Start remote desktop from your BlackBerry</title>
		<link>http://idemery.net/2010/06/24/start-remote-desktop-from-your-blackberry/</link>
		<comments>http://idemery.net/2010/06/24/start-remote-desktop-from-your-blackberry/#comments</comments>
		<pubDate>Thu, 24 Jun 2010 08:57:32 +0000</pubDate>
		<dc:creator>Islam Eldemery</dc:creator>
		
		<guid isPermaLink="false">http://idemery.wordpress.com/2010/06/24/start-remote-desktop-from-your-blackberry/</guid>
		<description><![CDATA[Here I got remote desktop to my office PC from my blackberry bold, you can try it for 7 days by pointing your bb browser to&#160;bb.rdmplus.com&#160;and for more info see http://www.rdmplus.com/rdm/bb/download.html<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idemery.net&amp;blog=7407972&amp;post=82&amp;subd=idemery&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><span class="Apple-style-span" style="border-collapse:separate;color:rgb(0,0,0);font-family:'Times New Roman';font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;line-height:normal;orphans:2;text-indent:0;text-transform:none;white-space:normal;widows:2;word-spacing:0;font-size:medium;"><span class="Apple-style-span" style="border-collapse:collapse;font-family:arial,sans-serif;font-size:13px;">Here I got remote desktop to my office PC from my blackberry bold, you can try it for 7 days by pointing your bb browser to<span class="Apple-converted-space">&nbsp;</span><a href="http://bb.rdmplus.com/" target="_blank" style="color:rgb(42,93,176);">bb.rdmplus.com</a><span class="Apple-converted-space">&nbsp;</span>and for more info see </span></span><span class="Apple-style-span" style="border-collapse:separate;color:rgb(0,0,0);font-family:'Times New Roman';font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;line-height:normal;orphans:2;text-indent:0;text-transform:none;white-space:normal;widows:2;word-spacing:0;font-size:medium;"><span class="Apple-style-span" style="border-collapse:collapse;font-family:arial,sans-serif;font-size:13px;"><a href="http://www.rdmplus.com/rdm/bb/download.html" target="_blank" style="color:rgb(42,93,176);">http://www.rdmplus.com/rdm/bb/download.html</a></span></span><span class="Apple-style-span" style="border-collapse:separate;color:rgb(0,0,0);font-family:'Times New Roman';font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;line-height:normal;orphans:2;text-indent:0;text-transform:none;white-space:normal;widows:2;word-spacing:0;font-size:medium;"><span class="Apple-style-span" style="border-collapse:collapse;font-family:arial,sans-serif;font-size:13px;"><br /></span></span></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/idemery.wordpress.com/82/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/idemery.wordpress.com/82/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/idemery.wordpress.com/82/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/idemery.wordpress.com/82/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/idemery.wordpress.com/82/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/idemery.wordpress.com/82/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/idemery.wordpress.com/82/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/idemery.wordpress.com/82/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/idemery.wordpress.com/82/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/idemery.wordpress.com/82/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/idemery.wordpress.com/82/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/idemery.wordpress.com/82/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/idemery.wordpress.com/82/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/idemery.wordpress.com/82/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idemery.net&amp;blog=7407972&amp;post=82&amp;subd=idemery&amp;ref=&amp;feed=1" width="1" height="1" /><div class="sharedaddy sd-like-enabled"></div>]]></content:encoded>
			<wfw:commentRss>http://idemery.net/2010/06/24/start-remote-desktop-from-your-blackberry/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/91db2b33d15030c4bfcfb8c78f5ba337?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Islam Eldemery</media:title>
		</media:content>
	</item>
		<item>
		<title>I like ScribeFire</title>
		<link>http://idemery.net/2010/06/24/i-like-scribefire/</link>
		<comments>http://idemery.net/2010/06/24/i-like-scribefire/#comments</comments>
		<pubDate>Thu, 24 Jun 2010 08:55:15 +0000</pubDate>
		<dc:creator>Islam Eldemery</dc:creator>
		
		<guid isPermaLink="false">http://idemery.wordpress.com/2010/06/24/i-like-scribefire/</guid>
		<description><![CDATA[Again, my first post from ScribeFire, it simply integrates with firefox, so you can select whatever text you like while browsing the internet and click blog this page!<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idemery.net&amp;blog=7407972&amp;post=80&amp;subd=idemery&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Again, my first post from ScribeFire, it simply integrates with firefox, so you can select whatever text you like while browsing the internet and click blog this page!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/idemery.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/idemery.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/idemery.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/idemery.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/idemery.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/idemery.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/idemery.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/idemery.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/idemery.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/idemery.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/idemery.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/idemery.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/idemery.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/idemery.wordpress.com/80/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idemery.net&amp;blog=7407972&amp;post=80&amp;subd=idemery&amp;ref=&amp;feed=1" width="1" height="1" /><div class="sharedaddy sd-like-enabled"></div>]]></content:encoded>
			<wfw:commentRss>http://idemery.net/2010/06/24/i-like-scribefire/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/91db2b33d15030c4bfcfb8c78f5ba337?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Islam Eldemery</media:title>
		</media:content>
	</item>
		<item>
		<title>My first post from blackberry</title>
		<link>http://idemery.net/2010/06/24/my-first-post-from-blackberry/</link>
		<comments>http://idemery.net/2010/06/24/my-first-post-from-blackberry/#comments</comments>
		<pubDate>Thu, 24 Jun 2010 08:28:28 +0000</pubDate>
		<dc:creator>Islam Eldemery</dc:creator>
				<category><![CDATA[Common]]></category>

		<guid isPermaLink="false">https://idemery.wordpress.com/2010/06/24/my-first-post-from-blackberry/</guid>
		<description><![CDATA[This is my first hello world post from my lovely blackberry bold! You can get wordpress on your blackberry by pointing to http://blackberry.wordpress.com/install<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idemery.net&amp;blog=7407972&amp;post=76&amp;subd=idemery&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>This is my first hello world post from my lovely blackberry bold!<br />
You can get wordpress on your blackberry by pointing to http://blackberry.wordpress.com/install</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/idemery.wordpress.com/76/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/idemery.wordpress.com/76/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/idemery.wordpress.com/76/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/idemery.wordpress.com/76/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/idemery.wordpress.com/76/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/idemery.wordpress.com/76/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/idemery.wordpress.com/76/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/idemery.wordpress.com/76/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/idemery.wordpress.com/76/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/idemery.wordpress.com/76/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/idemery.wordpress.com/76/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/idemery.wordpress.com/76/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/idemery.wordpress.com/76/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/idemery.wordpress.com/76/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idemery.net&amp;blog=7407972&amp;post=76&amp;subd=idemery&amp;ref=&amp;feed=1" width="1" height="1" /><div class="sharedaddy sd-like-enabled"></div>]]></content:encoded>
			<wfw:commentRss>http://idemery.net/2010/06/24/my-first-post-from-blackberry/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/91db2b33d15030c4bfcfb8c78f5ba337?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Islam Eldemery</media:title>
		</media:content>
	</item>
		<item>
		<title>Windows Forms Cross Threading Simple Solution</title>
		<link>http://idemery.net/2009/07/01/windows-forms-cross-threading-simple-solution/</link>
		<comments>http://idemery.net/2009/07/01/windows-forms-cross-threading-simple-solution/#comments</comments>
		<pubDate>Wed, 01 Jul 2009 08:55:43 +0000</pubDate>
		<dc:creator>Islam Eldemery</dc:creator>
				<category><![CDATA[.NET Development]]></category>

		<guid isPermaLink="false">http://idemery.wordpress.com/?p=47</guid>
		<description><![CDATA[I found this article in the CodeProject Newsletter that presents an extension method that takes a delegate to run on the UI. And this was my comment. I have came across the same issue before, I was developing a windows forms application client used by more than 30 developer in the same time and the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idemery.net&amp;blog=7407972&amp;post=47&amp;subd=idemery&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I found <a href="http://www.codeproject.com/KB/cs/AvoidingInvokeRequired.aspx" target="_blank">this article</a> in the CodeProject Newsletter that presents an extension method that takes a delegate to run on the UI.</p>
<p>And this was my comment.</p>
<blockquote><p>
I have came across the same issue before, I was developing a windows forms application client used by more than 30 developer in the same time and the application was taking a lot of time just to access the UI from another thread.</p>
<p>I got ANTS Profiler to get for me the line of code that takes that much time, and it was this<br />
<code><br />
            if (form.InvokeRequired)<br />
            {<br />
                form.Invoke(code); //this<br />
                return;<br />
            }<br />
</code></p>
<p>I searched for a better solution and got this simple way with one line of code to access the UI.</p>
<p><code>SynchronizationContext syncContext;</code><br />
<code>syncContext = SynchronizationContext.Current; //in constrcutor</code><br />
<code>syncContext.Send(new SendOrPostCallback((s) =&gt; { this.myTextBox.Text = "some text"; }), null);</code></p>
<p>After running ANTS Profiler again I noticed a very big difference in the time spent to accomplish the same job!.
</p></blockquote>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/idemery.wordpress.com/47/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/idemery.wordpress.com/47/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/idemery.wordpress.com/47/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/idemery.wordpress.com/47/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/idemery.wordpress.com/47/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/idemery.wordpress.com/47/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/idemery.wordpress.com/47/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/idemery.wordpress.com/47/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/idemery.wordpress.com/47/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/idemery.wordpress.com/47/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/idemery.wordpress.com/47/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/idemery.wordpress.com/47/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/idemery.wordpress.com/47/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/idemery.wordpress.com/47/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idemery.net&amp;blog=7407972&amp;post=47&amp;subd=idemery&amp;ref=&amp;feed=1" width="1" height="1" /><div class="sharedaddy sd-like-enabled"></div>]]></content:encoded>
			<wfw:commentRss>http://idemery.net/2009/07/01/windows-forms-cross-threading-simple-solution/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/91db2b33d15030c4bfcfb8c78f5ba337?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Islam Eldemery</media:title>
		</media:content>
	</item>
		<item>
		<title>Simple tip to share only specified folders with Remote Desktop Connections</title>
		<link>http://idemery.net/2009/06/09/simple-tip-to-share-only-specified-folders-with-remote-desktop-connections/</link>
		<comments>http://idemery.net/2009/06/09/simple-tip-to-share-only-specified-folders-with-remote-desktop-connections/#comments</comments>
		<pubDate>Tue, 09 Jun 2009 06:55:36 +0000</pubDate>
		<dc:creator>Islam Eldemery</dc:creator>
				<category><![CDATA[.NET Development]]></category>

		<guid isPermaLink="false">http://idemery.wordpress.com/?p=44</guid>
		<description><![CDATA[I was acessing the production server via explorer \\server\,  until the network team has disabled this feature for security issues, which got me annoyed I dont want to take a whole partition of my disk as a local resource with the remote desktop connection. My freind Michael showed me how I can take only a [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idemery.net&amp;blog=7407972&amp;post=44&amp;subd=idemery&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I was acessing the production server via explorer \\server\,  until the network team has disabled this feature for security issues, which got me annoyed I dont want to take a whole partition of my disk as a local resource with the remote desktop connection.</p>
<p>My freind Michael showed me how I can take only a specified folder by mapping a new network drive to the specified local folder on my machine, then take this drive as local resource with my remote desktop connection to the production server.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/idemery.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/idemery.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/idemery.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/idemery.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/idemery.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/idemery.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/idemery.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/idemery.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/idemery.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/idemery.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/idemery.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/idemery.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/idemery.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/idemery.wordpress.com/44/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idemery.net&amp;blog=7407972&amp;post=44&amp;subd=idemery&amp;ref=&amp;feed=1" width="1" height="1" /><div class="sharedaddy sd-like-enabled"></div>]]></content:encoded>
			<wfw:commentRss>http://idemery.net/2009/06/09/simple-tip-to-share-only-specified-folders-with-remote-desktop-connections/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/91db2b33d15030c4bfcfb8c78f5ba337?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Islam Eldemery</media:title>
		</media:content>
	</item>
		<item>
		<title>Easily Uninstall and Install Windows Services with batch file</title>
		<link>http://idemery.net/2009/06/08/easily-uninstall-and-install-windows-services-with-batch-file/</link>
		<comments>http://idemery.net/2009/06/08/easily-uninstall-and-install-windows-services-with-batch-file/#comments</comments>
		<pubDate>Mon, 08 Jun 2009 17:47:34 +0000</pubDate>
		<dc:creator>Islam Eldemery</dc:creator>
				<category><![CDATA[.NET Development]]></category>

		<guid isPermaLink="false">http://idemery.wordpress.com/2009/06/08/42/</guid>
		<description><![CDATA[I have spent some time editing a windows service after installing (and uninstalling) it for several times and I have to admit that this consumes time on the command line tool, so I have written a batch file to stop the service, uninstall it, install it, and start it again, and all what i need [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idemery.net&amp;blog=7407972&amp;post=42&amp;subd=idemery&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I have spent some time editing a windows service after installing (and uninstalling) it for several times and I have to admit that this consumes time on the command line tool, so I have written a batch file to stop the service, uninstall it, install it, and start it again, and all what i need to do is to run the batch file.</p>
<p>Paste the following lines in a file.txt, replace the service name and the service path to match yours, and rename the file to file.bat.</p>
<p>@ECHO Stopping service..<br />
net stop AlertsService<br />
@ECHO service stopped.<br />
@ECHO Uninstalling Service&#8230;<br />
@SET PATH=%PATH%;C:Program FilesMicrosoft Visual Studio 9.0VC<br />
&#8220;C:WINDOWSMicrosoft.NETFrameworkv2.0.50727installutil&#8221; -u &#8220;C:DebugAlertsWindowsService.exe&#8221;<br />
@ECHO Uninstall Done.<br />
@ECHO Reinstalling..<br />
&#8220;C:WINDOWSMicrosoft.NETFrameworkv2.0.50727installutil&#8221; -i &#8220;C:DebugAlertsWindowsService.exe&#8221;<br />
@ECHO Install Done.<br />
@ECHO Starting Service..<br />
net start AlertsService</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/idemery.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/idemery.wordpress.com/42/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/idemery.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/idemery.wordpress.com/42/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/idemery.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/idemery.wordpress.com/42/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/idemery.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/idemery.wordpress.com/42/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/idemery.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/idemery.wordpress.com/42/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/idemery.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/idemery.wordpress.com/42/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/idemery.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/idemery.wordpress.com/42/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=idemery.net&amp;blog=7407972&amp;post=42&amp;subd=idemery&amp;ref=&amp;feed=1" width="1" height="1" /><div class="sharedaddy sd-like-enabled"></div>]]></content:encoded>
			<wfw:commentRss>http://idemery.net/2009/06/08/easily-uninstall-and-install-windows-services-with-batch-file/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/91db2b33d15030c4bfcfb8c78f5ba337?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Islam Eldemery</media:title>
		</media:content>
	</item>
	</channel>
</rss>
