<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-5221006467183643372</id><updated>2011-11-28T00:37:01.848Z</updated><category term='Guidelines'/><category term='Gadget'/><category term='Process'/><category term='XML'/><category term='Virtualization'/><category term='Security'/><category term='Information'/><category term='DOT NET'/><category term='Problem'/><category term='MSCRM'/><category term='Best Practices'/><category term='Java Script'/><category term='ASP.NET'/><category term='ADO.NET'/><title type='text'>Ashish Basran</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>43</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-4167337252173211096</id><published>2011-06-06T19:58:00.001Z</published><updated>2011-06-06T19:58:07.680Z</updated><title type='text'>How to create link/symbolic link/virtual folder in Windows 7</title><content type='html'>&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;mklink command is helpful creating link folders. &lt;/p&gt;  &lt;p&gt;C:\windows\system32&amp;gt;mklink &lt;/p&gt;  &lt;p&gt;Creates a symbolic link.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;MKLINK [[/D] | [/H] | [/J]] Link Target&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;&lt;b&gt;/D&lt;/b&gt; Creates a directory symbolic link. Default is a file symbolic link.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;/H&lt;/b&gt; Creates a hard link instead of a symbolic link.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;/J&lt;/b&gt; Creates a Directory Junction.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Link&lt;/b&gt; specifies the new symbolic link name.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Target&lt;/b&gt; specifies the path (relative or absolute) that the new link refers to.&lt;/p&gt;  &lt;p&gt;Navigate to destination folder and run the command. It will create the link folder there.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-4167337252173211096?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/4167337252173211096/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2011/06/how-to-create-linksymbolic-linkvirtual.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/4167337252173211096'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/4167337252173211096'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2011/06/how-to-create-linksymbolic-linkvirtual.html' title='How to create link/symbolic link/virtual folder in Windows 7'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-7216533881406597224</id><published>2011-02-16T23:33:00.001Z</published><updated>2011-02-16T23:33:14.821Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='Problem'/><title type='text'>Team Explorer missing from Visual Studio 2008</title><content type='html'>&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Today I found that Team Explorer menu, tool button and pane was missing in my Visual Studio. It was looking like below screenshot:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_m6IH3KVGcj8/TVxeoiD7IMI/AAAAAAAADVY/Tf-k8w-Qgns/s1600-h/Toolbar%5B4%5D.png"&gt;&lt;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="Toolbar" border="0" alt="Toolbar" src="http://lh5.ggpht.com/_m6IH3KVGcj8/TVxepqpGC4I/AAAAAAAADVc/ITaTj0yef2U/Toolbar_thumb%5B2%5D.png?imgmax=800" width="559" height="94" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;I could not find the reason it got missed. I tried reinstalling the team explorer but it did not helped. (Even restarting machine did not helped). &lt;/p&gt;  &lt;p&gt;I got it back by going through following steps:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Click on &lt;strong&gt;File&lt;/strong&gt; menu and navigate to “Add Existing Team Project” (screenshot 1)&lt;/li&gt;    &lt;li&gt;Click on “Add Existing Team Project”, it will open “Connect to Team Foundation Server” screen (screenshot 2)&lt;/li&gt;    &lt;li&gt;Select your project and click on &lt;strong&gt;OK&lt;/strong&gt; button&lt;/li&gt;    &lt;li&gt;Team Explorer should appear in Visual Studio&lt;/li&gt;    &lt;li&gt;The menu bar should look like screenshot 3&lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;&lt;strong&gt;Screenshot 1:&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_m6IH3KVGcj8/TVxeqGUqaqI/AAAAAAAADVg/o_XGb3HTuLE/s1600-h/Menu%5B3%5D.png"&gt;&lt;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="Menu" border="0" alt="Menu" src="http://lh3.ggpht.com/_m6IH3KVGcj8/TVxerGHOeHI/AAAAAAAADVk/CT5i1uZme-o/Menu_thumb%5B1%5D.png?imgmax=800" width="295" height="294" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Screenshot 2:&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_m6IH3KVGcj8/TVxerTVubtI/AAAAAAAADVo/rUaKN90lMZ8/s1600-h/Connect%5B4%5D.png"&gt;&lt;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="Connect" border="0" alt="Connect" src="http://lh4.ggpht.com/_m6IH3KVGcj8/TVxesdEOsVI/AAAAAAAADVs/XDNprJ-sI7U/Connect_thumb%5B2%5D.png?imgmax=800" width="440" height="180" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Screenshot 3:&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_m6IH3KVGcj8/TVxes_a9f7I/AAAAAAAADVw/X2_z4Te1Gkc/s1600-h/Menu_Team%5B3%5D.png"&gt;&lt;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="Menu_Team" border="0" alt="Menu_Team" src="http://lh5.ggpht.com/_m6IH3KVGcj8/TVxetyadkEI/AAAAAAAADV0/A1FU9cmNTMc/Menu_Team_thumb%5B1%5D.png?imgmax=800" width="371" height="110" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-7216533881406597224?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/7216533881406597224/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2011/02/team-explorer-missing-from-visual.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/7216533881406597224'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/7216533881406597224'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2011/02/team-explorer-missing-from-visual.html' title='Team Explorer missing from Visual Studio 2008'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_m6IH3KVGcj8/TVxepqpGC4I/AAAAAAAADVc/ITaTj0yef2U/s72-c/Toolbar_thumb%5B2%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-3608779053814615283</id><published>2011-02-12T00:25:00.001Z</published><updated>2011-02-12T00:29:20.277Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='MSCRM'/><title type='text'>Customer Care Accelerator</title><content type='html'>&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Microsoft have released a accelerator for Microsoft Dynamics CRM called Customer Care Accelerator (CCA). This is to incorporate the concepts offered by Customer Care Framework (CCF). CCA is available for download at &lt;a href="http://crmcca.codeplex.com/" target="_blank"&gt;codeplex/cca&lt;/a&gt; site and it is free to download. It is available for CRM 4.0 on premise. It will be available for CRM 2011. The CCA R2 is suppose to be for CRM 2011 and should work with online and on premise installations. It should be available by around mid April. CCA R1 is for CRM 4.0. &lt;/p&gt;  &lt;p&gt;Customer Care Accelerator (CCA) is consist of following major components:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Application Integration Framework (AIF) &lt;/li&gt;    &lt;li&gt;Hosted Application Toolkit (HAT) &lt;/li&gt;    &lt;li&gt;User Interface Integration (UII) &lt;/li&gt;    &lt;li&gt;Date Driven Adapter (DDA) &lt;/li&gt;    &lt;li&gt;Integrated Agent Desktop (IAD) &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;It stores all its configuration in MSCRM. UII/HAT uses Windows workflow while writing the required automations. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/b/ukcrm/archive/2010/09/18/customer-care-accelerator-demo-tools.aspx" target="_blank"&gt;Click here&lt;/a&gt; to see the demo (compiled by &lt;a href="http://social.msdn.microsoft.com/profile/simon%20hutson%20%5Bmsft%5D/" target="_blank"&gt;Simon Hutson&lt;/a&gt;). &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-3608779053814615283?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/3608779053814615283/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2011/02/customer-care-accelerator.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/3608779053814615283'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/3608779053814615283'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2011/02/customer-care-accelerator.html' title='Customer Care Accelerator'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-6521340595715997118</id><published>2011-02-04T01:15:00.001Z</published><updated>2011-02-04T01:18:03.997Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='DOT NET'/><title type='text'>?? Operator</title><content type='html'>&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;?? operator is null-coalescing operator. It is used with nullable value types and reference types. It returns left hand operand if it is not null. If left hand is null and right hand is not null, it returns right hand operand. In case both the operands are null, it returns null. We can say that it just check for left hand side operand and returns anyway if left is null. &lt;/p&gt;  &lt;p&gt;&lt;a href="https://lh4.googleusercontent.com/_m6IH3KVGcj8/TUtTxQ1vj5I/AAAAAAAADVA/hSv4m5LSzuY/s1600-h/Code01%5B3%5D.png"&gt;&lt;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="Code01" border="0" alt="Code01" src="http://lh5.ggpht.com/_m6IH3KVGcj8/TUtTyNERsvI/AAAAAAAADVE/akDy7zPAiRM/Code01_thumb%5B1%5D.png?imgmax=800" width="414" height="173" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-6521340595715997118?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/6521340595715997118/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2011/02/operator.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/6521340595715997118'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/6521340595715997118'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2011/02/operator.html' title='?? Operator'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_m6IH3KVGcj8/TUtTyNERsvI/AAAAAAAADVE/akDy7zPAiRM/s72-c/Code01_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-2358294198619845626</id><published>2011-02-04T01:04:00.002Z</published><updated>2011-02-12T00:27:03.380Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='DOT NET'/><title type='text'>Equals and HashCode</title><content type='html'>  &lt;p&gt;If the objects are equal the hashcode of the objects should be same. If the hashcode of objects is same that does not mean that objects are equal. &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-2358294198619845626?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/2358294198619845626/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2011/02/equals-and-hashcode-observation.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/2358294198619845626'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/2358294198619845626'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2011/02/equals-and-hashcode-observation.html' title='Equals and HashCode'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-3304091303801594798</id><published>2011-01-14T01:22:00.000Z</published><updated>2011-01-15T01:22:21.337Z</updated><title type='text'>WebMatrix web development tool released</title><content type='html'>&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Microsoft has released WebMatrix web development tool. Some of its features are:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;It is small&lt;/li&gt;    &lt;li&gt;It allows to publish websites&lt;/li&gt;    &lt;li&gt;It is optimized for search&lt;/li&gt;    &lt;li&gt;It is simple to code with it&lt;/li&gt;    &lt;li&gt;It connects you with free open source web applications&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;It supports PHP as well as ASP.NET development. It provides simple frontend for users to do web development and has extensive support for open source projects. &lt;/p&gt;  &lt;p&gt;For overview and download details, click &lt;a href="http://www.microsoft.com/web/webmatrix/" target="_blank"&gt;here&lt;/a&gt;.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-3304091303801594798?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/3304091303801594798/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2011/01/webmatrix-web-development-tool-released.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/3304091303801594798'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/3304091303801594798'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2011/01/webmatrix-web-development-tool-released.html' title='WebMatrix web development tool released'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-6821289844369869775</id><published>2010-12-27T21:49:00.001Z</published><updated>2010-12-27T21:49:57.390Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='ASP.NET'/><title type='text'>ASP.NET MVC 3 RC Available</title><content type='html'>&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;ASP.NET MVC 3 Release Candidate is available for download. You can download it &lt;a href="http://www.microsoft.com/downloads/en/details.aspx?FamilyID=a920ccee-1397-4feb-824a-2dfefee47d54&amp;amp;displaylang=en#Overview" target="_blank"&gt;here&lt;/a&gt;. It is framework to develop web applications while leveraging the Model-View-Controller pattern. These applications are easily testable using TDD (Test Driven Development) approach. It is build on ASP.NET 4 hence all ASP.NET features like authentication, authorization, localization can be used while developing applications with MVC 3. One can find the discussions related to MVC at &lt;a href="http://forums.asp.net/1146.aspx" target="_blank"&gt;Model-View-Controller Forum&lt;/a&gt;. &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-6821289844369869775?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/6821289844369869775/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2010/12/aspnet-mvc-3-rc-available.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/6821289844369869775'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/6821289844369869775'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2010/12/aspnet-mvc-3-rc-available.html' title='ASP.NET MVC 3 RC Available'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-9220116989384106448</id><published>2010-12-12T00:48:00.001Z</published><updated>2010-12-14T23:49:44.687Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='MSCRM'/><title type='text'>Microsoft Dynamics CRM offering discount on switching to Salesforce.com</title><content type='html'>&lt;p&gt;Microsoft is offering rebate to customers of Salesforce.com to make switch to Microsoft Dynamics CRM Online. This is part of recent Microsoft announcement &lt;a href="http://crm.dynamics.com/online/?fbid=6K5JV7v2-I9#try-it-today&amp;amp;WT.srch=1&amp;amp;WT.mc_id=&amp;amp;CR_SCC=200008220" target="_blank"&gt;Cloud CRM for less&lt;/a&gt;. There are few benefits which one may like to consider while switching to &lt;a href="http://crm.dynamics.com/en-us/Default.aspx" target="_blank"&gt;Microsoft Dynamics CRM&lt;/a&gt;:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Scalability&lt;/strong&gt;: One can adjust the changing resource demand with Cloud &lt;/li&gt;&lt;li&gt;&lt;strong&gt;Reliability&lt;/strong&gt;: Allow you to focus on business and leave infrastructure maintenance on Cloud &lt;/li&gt;&lt;li&gt;&lt;strong&gt;Flexibility&lt;/strong&gt;: Allow you to easily customize as per your business needs &lt;/li&gt;&lt;li&gt;&lt;strong&gt;Reduced cost&lt;/strong&gt;: Cloud allows to reduce capital cost, ongoing maintenance cost, license cost etc. &lt;/li&gt;&lt;li&gt;&lt;strong&gt;Controlled cost&lt;/strong&gt;: Use base pricing model allows you to control your cost &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;This is limited time offer and is great time for people who want to switch from Salesforce.com to Microsoft Dynamics CRM.  &lt;/p&gt;&lt;p&gt;---------------------------------------&lt;br /&gt;Thanks Anonymous for valuable inputs. &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-9220116989384106448?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/9220116989384106448/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2010/12/microsoft-dynamics-crm-or-salesforcecom.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/9220116989384106448'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/9220116989384106448'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2010/12/microsoft-dynamics-crm-or-salesforcecom.html' title='Microsoft Dynamics CRM offering discount on switching to Salesforce.com'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-5924442635660288853</id><published>2010-08-04T06:12:00.001Z</published><updated>2010-08-04T06:12:03.283Z</updated><title type='text'>Microsoft Visual Studio Scrum 1.0</title><content type='html'>&lt;p&gt;Microsoft released a new process template called Microsoft Visual Studio Scrum 1.0 for Team Foundation Server 2010. The template is available for download at &lt;a href="http://visualstudiogallery.msdn.microsoft.com/en-us/59ac03e3-df99-4776-be39-1917cbfc5d8e" target="_blank"&gt;Visual Studio Gallery&lt;/a&gt;. The template includes following:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Work Item Types:      &lt;ol&gt;       &lt;li&gt;Sprint &lt;/li&gt;        &lt;li&gt;Product Backlog Item &lt;/li&gt;        &lt;li&gt;Bug &lt;/li&gt;        &lt;li&gt;Task &lt;/li&gt;        &lt;li&gt;Impediment &lt;/li&gt;        &lt;li&gt;Test Case &lt;/li&gt;     &lt;/ol&gt;   &lt;/li&gt;    &lt;li&gt;Reports:      &lt;ol&gt;       &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/ff731579.aspx" target="_blank"&gt;Release Burndown&lt;/a&gt; &lt;/li&gt;        &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/ff731575.aspx" target="_blank"&gt;Velocity&lt;/a&gt; &lt;/li&gt;        &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/ff731588.aspx" target="_blank"&gt;Sprint Burndown&lt;/a&gt; &lt;/li&gt;        &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/dd380643.aspx" target="_blank"&gt;Build Success Over Time&lt;/a&gt; &lt;/li&gt;        &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/dd380708.aspx" target="_blank"&gt;Build Summary&lt;/a&gt; &lt;/li&gt;        &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/dd380713.aspx" target="_blank"&gt;Test Case Readiness&lt;/a&gt; &lt;/li&gt;        &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/dd380702.aspx" target="_blank"&gt;Test Plan Progress&lt;/a&gt; &lt;/li&gt;     &lt;/ol&gt;   &lt;/li&gt;    &lt;li&gt;Share Point Project Portal &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;There was strong demand for a template that follows &lt;a href="http://www.scrummethodology.org/" target="_blank"&gt;SCRUM&lt;/a&gt; methodology for project or program management. This template should meet all the SCRUM methodology needs. For details refer &lt;a href="http://blogs.msdn.com/b/aaronbjork/archive/2010/07/19/announcing-microsoft-visual-studio-scrum-1-0.aspx" target="_blank"&gt;Aaron Bjork’s&lt;/a&gt; blog (Program Manager working on Team Foundation Server). &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-5924442635660288853?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/5924442635660288853/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2010/08/microsoft-visual-studio-scrum-10.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/5924442635660288853'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/5924442635660288853'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2010/08/microsoft-visual-studio-scrum-10.html' title='Microsoft Visual Studio Scrum 1.0'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-3250739297282686338</id><published>2010-06-16T21:48:00.001Z</published><updated>2010-06-16T21:48:43.710Z</updated><title type='text'>face detection with Python</title><content type='html'>&lt;p&gt;A nice article talking about face detection using Python. &lt;/p&gt;  &lt;p&gt;&lt;a title="http://blog.jozilla.net/2008/06/27/fun-with-python-opencv-and-face-detection/" href="http://blog.jozilla.net/2008/06/27/fun-with-python-opencv-and-face-detection/"&gt;http://blog.jozilla.net/2008/06/27/fun-with-python-opencv-and-face-detection/&lt;/a&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-3250739297282686338?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/3250739297282686338/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2010/06/face-detection-with-python.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/3250739297282686338'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/3250739297282686338'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2010/06/face-detection-with-python.html' title='face detection with Python'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-8136169960826012797</id><published>2010-06-14T06:49:00.001Z</published><updated>2010-06-14T06:49:55.732Z</updated><title type='text'>Labs for Microsoft Enterprise Library 5.0</title><content type='html'>&lt;p&gt;Hands-on labs for Microsoft Enterprise Library 5.0 are available &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=4f8cd377-5522-4f45-a024-44a6ca5111ec&amp;amp;displaylang=en" target="_blank"&gt;here&lt;/a&gt;.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-8136169960826012797?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/8136169960826012797/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2010/06/labs-for-microsoft-enterprise-library.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/8136169960826012797'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/8136169960826012797'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2010/06/labs-for-microsoft-enterprise-library.html' title='Labs for Microsoft Enterprise Library 5.0'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-7765725506821418358</id><published>2010-06-11T16:09:00.001Z</published><updated>2010-06-11T16:09:49.149Z</updated><title type='text'>50 New Useful CSS Techniques, Tools and Tutorials</title><content type='html'>&lt;p&gt;Refer following link to check about new useful CSS techniques:&lt;/p&gt;  &lt;p&gt;&lt;a title="http://www.smashingmagazine.com/2010/06/10/50-new-useful-css-techniques-tools-and-tutorials/" href="http://www.smashingmagazine.com/2010/06/10/50-new-useful-css-techniques-tools-and-tutorials/"&gt;http://www.smashingmagazine.com/2010/06/10/50-new-useful-css-techniques-tools-and-tutorials/&lt;/a&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-7765725506821418358?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/7765725506821418358/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2010/06/50-new-useful-css-techniques-tools-and.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/7765725506821418358'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/7765725506821418358'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2010/06/50-new-useful-css-techniques-tools-and.html' title='50 New Useful CSS Techniques, Tools and Tutorials'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-8216833522083647022</id><published>2010-06-10T06:03:00.001Z</published><updated>2010-06-10T06:03:38.042Z</updated><title type='text'>Nice collection of DOT NET and Visual Studio posters</title><content type='html'>&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=E5F902A8-5BB5-4CC6-907E-472809749973&amp;amp;displaylang=en" target="_blank"&gt;Visual C# 2008 Keybinding Reference Poster&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=92CED922-D505-457A-8C9C-84036160639F&amp;amp;displaylang=en" target="_blank"&gt;Visual Studio 2010 Keybinding Cards&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://download.microsoft.com/download/E/6/A/E6A8A715-7695-493C-8CFA-8E0C23A4BE1D/098-115952-NETFX4-Poster.pdf" target="_blank"&gt;3.5 Name Spaces&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=4411BBFC-0E3C-42B3-BD05-AF1D292C986F&amp;amp;displaylang=en" target="_blank"&gt;Visual C++ 2008 Keybinding Reference Poster&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://download.microsoft.com/download/4/1/f/41fa0da9-3fd3-4b35-9d5d-6031f243a140/Windows_WinFX_Poster.zip" target="_blank"&gt;3.0 Name Spaces&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=255B8CF1-F6BD-4B55-BB42-DD1A69315833&amp;amp;displaylang=en" target="_blank"&gt;Visual Basic 2008 Keybinding Reference Poster&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=C15D210D-A926-46A8-A586-31F8A2E576FE&amp;amp;displaylang=en" target="_blank"&gt;Visual C# 2005 Keyboard Shortcut Reference Poster&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=BCCF84F4-4136-48B2-B4EC-83EAA484DA20&amp;amp;displaylang=en" target="_blank"&gt;Visual C++ 2005 Keyboard Shortcut Reference Poster&lt;/a&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-8216833522083647022?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/8216833522083647022/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2010/06/nice-collection-of-dot-net-and-visual.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/8216833522083647022'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/8216833522083647022'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2010/06/nice-collection-of-dot-net-and-visual.html' title='Nice collection of DOT NET and Visual Studio posters'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-5712654929621065286</id><published>2010-03-16T08:09:00.001Z</published><updated>2010-03-16T08:09:29.564Z</updated><title type='text'>Are you a Software Architect?</title><content type='html'>&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;A very good article by Simon Brown. Must read.&lt;/p&gt;  &lt;p&gt;&lt;a title="http://www.infoq.com/articles/brown-are-you-a-software-architect" href="http://www.infoq.com/articles/brown-are-you-a-software-architect"&gt;http://www.infoq.com/articles/brown-are-you-a-software-architect&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;This helps understand what all we suppose to do being a Software Architect. There are things which we may be ignoring while working on our projects. It will be a good idea to pick up things and start introducing in our work pattern. &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-5712654929621065286?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/5712654929621065286/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2010/03/are-you-software-architect.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/5712654929621065286'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/5712654929621065286'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2010/03/are-you-software-architect.html' title='Are you a Software Architect?'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-4773198532336642711</id><published>2010-03-12T17:08:00.001Z</published><updated>2010-03-12T17:08:44.676Z</updated><title type='text'>Standard for E-book</title><content type='html'>&lt;p&gt;A nice read on preparation of E-book by Joe Clark.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a title="http://www.alistapart.com/articles/ebookstandards/" href="http://www.alistapart.com/articles/ebookstandards/"&gt;http://www.alistapart.com/articles/ebookstandards/&lt;/a&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-4773198532336642711?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/4773198532336642711/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2010/03/standard-for-e-book.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/4773198532336642711'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/4773198532336642711'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2010/03/standard-for-e-book.html' title='Standard for E-book'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-4590737627527996926</id><published>2010-02-06T02:52:00.001Z</published><updated>2010-02-06T02:52:40.531Z</updated><title type='text'>Steps to convert physical server to virtual server (SCVMM P2V migration)</title><content type='html'>&lt;p&gt;Open SCVMM Admin console and click on &lt;b&gt;Convert physical server&lt;/b&gt; in Actions tab OR in Actions menu.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_m6IH3KVGcj8/S2zYyy1zOWI/AAAAAAAACSM/JYeYP3Tg50w/clip_image001%5B3%5D.png?imgmax=800"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image001" border="0" alt="clip_image001" src="http://lh3.ggpht.com/_m6IH3KVGcj8/S2zY4bH973I/AAAAAAAACSQ/5WUDD43nNZA/clip_image001_thumb.png?imgmax=800" width="244" height="149" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Convert Physical Server (P2V) Wizard will appear. Provide the source server/computer name or the IP address of source computer. Provide the credential of the user that has administrative rights on server. Wizard will use these credentials to connect to server. Make sure the credential you provide should have local administrator rights on the server and remove object access rights. Click on Next button.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_m6IH3KVGcj8/S2zY5dy2U-I/AAAAAAAACSU/7LKxkMcceAc/clip_image002%5B3%5D.png?imgmax=800"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image002" border="0" alt="clip_image002" src="http://lh4.ggpht.com/_m6IH3KVGcj8/S2zY9S2aYGI/AAAAAAAACSY/f9xrv0ON6YI/clip_image002_thumb.png?imgmax=800" width="244" height="207" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Provide the name you would like to give as Computer Name for new virtual machine. Select the user you want to keep as owner of the new virtual machine. It is a good idea to keep service account as owner of the machine. You can provide the description text for the virtual machine. This text shall appear in Hyper-V Manager OR Virtual Machine Manager. Click on Next button.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_m6IH3KVGcj8/S2zY9_YXSNI/AAAAAAAACSc/DUbm8_Wigjk/s1600-h/clip_image003%5B3%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image003" border="0" alt="clip_image003" src="http://lh5.ggpht.com/_m6IH3KVGcj8/S2zY_luyzKI/AAAAAAAACSg/_6p0XxHQDOY/clip_image003_thumb.png?imgmax=800" width="244" height="207" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;On this step of wizard it will scan the source system to get required details about source computer. Click on &lt;b&gt;Scan System &lt;/b&gt;button. This shall connect to source server using WMI and get the details.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_m6IH3KVGcj8/S2zZANRj7nI/AAAAAAAACSk/ozIi9crknzk/clip_image005%5B3%5D.jpg?imgmax=800"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image005" border="0" alt="clip_image005" src="http://lh3.ggpht.com/_m6IH3KVGcj8/S2zZD7QHzfI/AAAAAAAACSo/s8Q3Q1fSbNQ/clip_image005_thumb.jpg?imgmax=800" width="244" height="207" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Verify the source server details in &lt;b&gt;System Information&lt;/b&gt; section. If everything looks as expected, click on Next button to proceed.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_m6IH3KVGcj8/S2zZEa5ymeI/AAAAAAAACSs/q3tOjwIIbrk/clip_image006%5B3%5D.png?imgmax=800"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image006" border="0" alt="clip_image006" src="http://lh3.ggpht.com/_m6IH3KVGcj8/S2zZIKvC2vI/AAAAAAAACSw/Sxo35edlFMU/clip_image006_thumb.png?imgmax=800" width="244" height="207" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Verify the disk and volume details of the source computer. These details will be used to create new Virtual Machine. If required you can change the VHD type and Channel of the Volumes. If you want to skip migrating any of the volume, you can uncheck the check box to skip. You can select the &lt;b&gt;Conversion Option&lt;/b&gt; to have online OR offline conversion. Online conversion allows the source computer to keep running while creating Virtual Machine. There is no downtime for source computer. During offline conversion the source computer reboots. Wizard reboots the source machine in WinPE mode and transfers all the disk data to target host computer. At the end of conversion process you have option to keep the source running or shut it down. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_m6IH3KVGcj8/S2zZIjEPTEI/AAAAAAAACS0/7gGfvjrDBPw/s1600-h/clip_image007%5B3%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image007" border="0" alt="clip_image007" src="http://lh4.ggpht.com/_m6IH3KVGcj8/S2zZLR7uyxI/AAAAAAAACS4/h-l4RVAUeaE/clip_image007_thumb.png?imgmax=800" width="244" height="207" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Offline conversion will allow you to set the IP of the server in advance. Online conversion does not give option to provide the IP details in advance. It sets the IP and adapter binding of Virtual Machine same as source computer. You may like to select “Turn off source computer after conversion” to avoid the IP conflict at the time when new Virtual Machine starts with same IP. Click on Next button to proceed.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_m6IH3KVGcj8/S2zZLkjyu7I/AAAAAAAACS8/_bMLO2UATT8/s1600-h/clip_image008%5B3%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image008" border="0" alt="clip_image008" src="http://lh5.ggpht.com/_m6IH3KVGcj8/S2zZMkSWFzI/AAAAAAAACTA/OJjw8Y1jSvI/clip_image008_thumb.png?imgmax=800" width="244" height="207" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;If you have selected offline conversion, the wizard shall give you opportunity to provide IP details in advance. You may like to select &lt;b&gt;Obtain an IP address automatically&lt;/b&gt; if you want to have both the machine running with different IP addresses.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_m6IH3KVGcj8/S2zZM9FpsOI/AAAAAAAACTE/ljpo0YULD6A/s1600-h/clip_image010%5B3%5D.jpg"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image010" border="0" alt="clip_image010" src="http://lh4.ggpht.com/_m6IH3KVGcj8/S2zZNGKvjCI/AAAAAAAACTI/IMHp5UP4DD4/clip_image010_thumb.jpg?imgmax=800" width="244" height="207" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;The wizard gives you option to set values for IPv6 and IPv4 addresses if you wish to. Click on Next button.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_m6IH3KVGcj8/S2zZNVVRQwI/AAAAAAAACTM/919ET6Z7Plo/s1600-h/clip_image011%5B3%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image011" border="0" alt="clip_image011" src="http://lh3.ggpht.com/_m6IH3KVGcj8/S2zZN3aXykI/AAAAAAAACTQ/QqXtm_E7EAo/clip_image011_thumb.png?imgmax=800" width="244" height="207" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;This screen will list the available RAM and CPU on host server. Select the number of processer you want to assign to this new server. Provide the value of memory you want to give to new Virtual Machine. Click on Next button.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_m6IH3KVGcj8/S2zZOEEeWaI/AAAAAAAACTU/3fyvSqZbe4M/s1600-h/clip_image012%5B3%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image012" border="0" alt="clip_image012" src="http://lh4.ggpht.com/_m6IH3KVGcj8/S2zZOaAqBQI/AAAAAAAACTY/r8lVgHn8SXc/clip_image012_thumb.png?imgmax=800" width="244" height="207" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Select the host server where you would like to keep new virtual server. Verify the rating of selected host machine. You can customize the rating values if required. Verify that Details tab shows status OK. Verify that there are no errors in Rating Explanation and SAN Explanation tab. Click on Next button.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_m6IH3KVGcj8/S2zZPJSK6xI/AAAAAAAACTc/76daXci310Q/s1600-h/clip_image013%5B3%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image013" border="0" alt="clip_image013" src="http://lh3.ggpht.com/_m6IH3KVGcj8/S2zZQcjlDOI/AAAAAAAACTk/Rf-T6umRL8o/clip_image013_thumb.png?imgmax=800" width="244" height="207" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Select the location/folder on the host server to store the virtual machine and virtual hard disk files. Click on Next button.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_m6IH3KVGcj8/S2zZQksq-VI/AAAAAAAACTo/jL3Q6txIfsk/s1600-h/clip_image014%5B3%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image014" border="0" alt="clip_image014" src="http://lh3.ggpht.com/_m6IH3KVGcj8/S2zZRAcerOI/AAAAAAAACTs/5gKO1PVobx8/clip_image014_thumb.png?imgmax=800" width="244" height="207" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Select the network configuration. If you want to have different name for the new virtual server, you may like select Not Connected option in Virtual Network dropdown. This will allow you to connect to the network later after modifying the machine/computer name of target server. Select appropriate network adapter and click on Next button.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_m6IH3KVGcj8/S2zZRf26rEI/AAAAAAAACTw/172sBsF28D8/s1600-h/clip_image015%5B3%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image015" border="0" alt="clip_image015" src="http://lh6.ggpht.com/_m6IH3KVGcj8/S2zZTQ3MoCI/AAAAAAAACT0/P7GiVhs2DkY/clip_image015_thumb.png?imgmax=800" width="244" height="207" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Select the automatic action you want to have for your new target server. It is good to have “Automatically turn on the virtual machine if it was running when physical server stopped” option for physical server (host) start action. For physical server (host) stop action, it is good to have Save State option. Select the appropriate options and click on Next button.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_m6IH3KVGcj8/S2zZTmRCStI/AAAAAAAACT4/eSvpZaf6VoY/s1600-h/clip_image017%5B3%5D.jpg"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image017" border="0" alt="clip_image017" src="http://lh5.ggpht.com/_m6IH3KVGcj8/S2zZUtWW9WI/AAAAAAAACT8/tZtWFE7KO8U/clip_image017_thumb.jpg?imgmax=800" width="244" height="207" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;On this step the wizard will list the problems/issues it may have during conversion. You must resolve all the issues listed before proceeding to next step of conversion. Click on Next button.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_m6IH3KVGcj8/S2zZU-vr-6I/AAAAAAAACUA/XzmXeILVYC0/s1600-h/clip_image018%5B3%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image018" border="0" alt="clip_image018" src="http://lh6.ggpht.com/_m6IH3KVGcj8/S2zZVWMEUqI/AAAAAAAACUE/35uuSpOVVRE/clip_image018_thumb.png?imgmax=800" width="244" height="207" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;You can view and verify the PS script by clicking on&lt;b&gt; View Script&lt;/b&gt; button. You may like to select the option “Start the virtual machine after deploying it on the host”. Click on Create button.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_m6IH3KVGcj8/S2zZVlorJCI/AAAAAAAACUI/6kUGgLDWcM8/s1600-h/clip_image019%5B3%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image019" border="0" alt="clip_image019" src="http://lh3.ggpht.com/_m6IH3KVGcj8/S2zZV9CTayI/AAAAAAAACUM/duoL3pHh790/clip_image019_thumb.png?imgmax=800" width="244" height="207" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Clicking on Create button will bring the job progress screen of jobs window. This will list all the steps required for server conversion. It will also show the progress of each step as conversion moves forward.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_m6IH3KVGcj8/S2zZWNVXpzI/AAAAAAAACUQ/DEN1dVx1r3E/s1600-h/clip_image020%5B3%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image020" border="0" alt="clip_image020" src="http://lh5.ggpht.com/_m6IH3KVGcj8/S2zZWfuvflI/AAAAAAAACUU/2lFqd7oa86Q/clip_image020_thumb.png?imgmax=800" width="244" height="149" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;At the end of successful conversion, the new Virtual Machine will get listed in Virtual Machines section of SCVMM.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-4590737627527996926?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/4590737627527996926/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2010/02/steps-to-convert-physical-server-to.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/4590737627527996926'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/4590737627527996926'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2010/02/steps-to-convert-physical-server-to.html' title='Steps to convert physical server to virtual server (SCVMM P2V migration)'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_m6IH3KVGcj8/S2zY4bH973I/AAAAAAAACSQ/5WUDD43nNZA/s72-c/clip_image001_thumb.png?imgmax=800' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-4514252776223295734</id><published>2010-02-05T04:48:00.005Z</published><updated>2010-02-06T03:16:32.970Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='Virtualization'/><title type='text'>Steps to add host server in System Center Virtual Machine Manager</title><content type='html'>Open System Center Virtual Machine Manager and click on Add Host on Actions tab or Actions menu.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_m6IH3KVGcj8/S2unem4u0HI/AAAAAAAACRA/RWfSWT9RE_M/s1600-h/screen001.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 198px;" src="http://2.bp.blogspot.com/_m6IH3KVGcj8/S2unem4u0HI/AAAAAAAACRA/RWfSWT9RE_M/s320/screen001.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5434621519629045874" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Provide required credentials to access the host server you want to add. These credentials should have local administrative rights on the server. Click on Next button.&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_m6IH3KVGcj8/S2une737PMI/AAAAAAAACRI/SehcGNTxKYg/s1600-h/screen02.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 261px;" src="http://4.bp.blogspot.com/_m6IH3KVGcj8/S2une737PMI/AAAAAAAACRI/SehcGNTxKYg/s320/screen02.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5434621525262810306" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Provide the domain name and computer name and click on Add button. The added computer will be listed in Selected Servers section. Click on Next button.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_m6IH3KVGcj8/S2unfcVXIeI/AAAAAAAACRQ/S1hny_obrCI/s1600-h/Screen03.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 261px;" src="http://2.bp.blogspot.com/_m6IH3KVGcj8/S2unfcVXIeI/AAAAAAAACRQ/S1hny_obrCI/s320/Screen03.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5434621533976207842" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;You may see warning on click of Next button. Click on Yes button on warning popup.&lt;br /&gt;Note: Some time SCVMM does not reboot the server. In that case you may see error during addition of host. You can reboot the server manually and try again.&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_m6IH3KVGcj8/S2unfgsoipI/AAAAAAAACRY/L2eEjZovtSc/s1600-h/Screen04.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 124px;" src="http://4.bp.blogspot.com/_m6IH3KVGcj8/S2unfgsoipI/AAAAAAAACRY/L2eEjZovtSc/s320/Screen04.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5434621535147559570" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Select the host group where you want to add the host server. Click on Next button.&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_m6IH3KVGcj8/S2ze6dOwHnI/AAAAAAAACU0/UR2pXyskjFA/s1600-h/Screen05.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 261px;" src="http://4.bp.blogspot.com/_m6IH3KVGcj8/S2ze6dOwHnI/AAAAAAAACU0/UR2pXyskjFA/s320/Screen05.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5434963946189626994" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Add the default virtual machine path. This path will be used to store the virtual machines on this host. Click on Next button.&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_m6IH3KVGcj8/S2uoOaZrUmI/AAAAAAAACRo/mTzB9wpDjKE/s1600-h/Screen06.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 261px;" src="http://2.bp.blogspot.com/_m6IH3KVGcj8/S2uoOaZrUmI/AAAAAAAACRo/mTzB9wpDjKE/s320/Screen06.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5434622340911288930" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;You can click on View Script to look at PS script. On click of Add Hosts button the Jobs screen with progress of steps will appear. &lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_m6IH3KVGcj8/S2uoO3sW2HI/AAAAAAAACRw/SGV8u-3SxKY/s1600-h/Screen07.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 261px;" src="http://3.bp.blogspot.com/_m6IH3KVGcj8/S2uoO3sW2HI/AAAAAAAACRw/SGV8u-3SxKY/s320/Screen07.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5434622348774266994" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Monitor the progress.&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_m6IH3KVGcj8/S2uoPGsv6sI/AAAAAAAACR4/WOs6CSOvaP4/s1600-h/Screen08.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 194px;" src="http://1.bp.blogspot.com/_m6IH3KVGcj8/S2uoPGsv6sI/AAAAAAAACR4/WOs6CSOvaP4/s320/Screen08.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5434622352802441922" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;After successful completion of the host addition job your server will get listed into host group.&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_m6IH3KVGcj8/S2uoPXEB0aI/AAAAAAAACSA/utbeqTwg7H8/s1600-h/Screen09.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 194px;" src="http://4.bp.blogspot.com/_m6IH3KVGcj8/S2uoPXEB0aI/AAAAAAAACSA/utbeqTwg7H8/s320/Screen09.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5434622357195051426" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-4514252776223295734?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/4514252776223295734/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2010/02/steps-to-add-host-server-in-system.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/4514252776223295734'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/4514252776223295734'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2010/02/steps-to-add-host-server-in-system.html' title='Steps to add host server in System Center Virtual Machine Manager'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_m6IH3KVGcj8/S2unem4u0HI/AAAAAAAACRA/RWfSWT9RE_M/s72-c/screen001.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-1322110907647401474</id><published>2010-02-05T04:27:00.005Z</published><updated>2010-02-05T04:48:36.445Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='Virtualization'/><title type='text'>What is SCVMM?</title><content type='html'>SCVMM is System Center Virtual Machine Manager. This is used to manage virtual machine and hyper-V machines created by VMWare or Hyper-V Manager. This is a powerful tool and can be used to manage&lt;br /&gt;- Virtual Machines&lt;br /&gt;- Physical to Virtual Machine conversion&lt;br /&gt;- Virtual to Virtual machine conversion&lt;br /&gt;- Virtual server migration&lt;br /&gt;- Administer resource utilization&lt;br /&gt;- SAN migration&lt;br /&gt;&lt;br /&gt;Using SVCMM one can do live migration of servers. You can do storage migration having minimum downtime. It has capability for host comparability check. The Physical to Virtual (P2V) migration can be done using SCVMM. P2V migration is fast and reliable.  This can be used as private cloud manager for your virtual server environment.&lt;br /&gt;&lt;br /&gt;Details: &lt;a href="http://www.microsoft.com/systemcenter/virtualmachinemanager/en/us/default.aspx"&gt;http://www.microsoft.com/systemcenter/virtualmachinemanager/en/us/default.aspx&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-1322110907647401474?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/1322110907647401474/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2010/02/what-is-scvmm.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/1322110907647401474'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/1322110907647401474'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2010/02/what-is-scvmm.html' title='What is SCVMM?'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-3607804172064970770</id><published>2009-12-14T02:46:00.002Z</published><updated>2009-12-14T02:48:48.166Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='DOT NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Information'/><title type='text'>Visual Studio 2010: SDK size drastically reduced</title><content type='html'>The SDK of Visual Studio 2010 is considerably reduced from its previous versions. It used to be around 100 MB in size. In Visual Studio 2010 it is around 10 MB. Because of reduction in SDK size, the installation time is reduced. The size reduction is accomplished by making the documentation and samples available online instead part of SDK. Moving these contents online give advantage to keep the contents updated all the time. The online documentation and samples are available at following locations:&lt;br /&gt;&lt;br /&gt;- &lt;a href="http://code.msdn.microsoft.com/"&gt;MSDN Code Gallery&lt;/a&gt; &lt;br /&gt;- &lt;a href="http://msdn.microsoft.com/en-us/library/bb166441(VS.100).aspx"&gt;Visual Studio SDK documentation&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-3607804172064970770?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/3607804172064970770/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2009/12/visual-studio-2010-sdk-size-drastically.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/3607804172064970770'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/3607804172064970770'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2009/12/visual-studio-2010-sdk-size-drastically.html' title='Visual Studio 2010: SDK size drastically reduced'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-8544301019422119766</id><published>2009-12-02T07:42:00.002Z</published><updated>2009-12-02T07:43:54.159Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='Information'/><title type='text'>Hyper-V</title><content type='html'>Hyper-V is hypervisor based virtualization system for 32/64 bit systems. It allows multiple operating systems to run concurrently on single host. Hyper-V is shipped with Microsoft Windows Server 2008. Windows Server 2008 can be installed as Core or Full. The Core installation have only command prompt available. It does not have GUI installed on server. Both the installations can host Virtual Machines. These machines can be maintained using System Center (SCVMM) OR Hyper-V Manager. To work with Hyper-V Manager, one needs to have Windows 7 OR Windows Server 2008 running. Hyper-V Manager is component of OS 6.0 version.  To use SCVMM client there should be System Center server installed.&lt;br /&gt;&lt;br /&gt;More details about Hyper-V can be found at following location:&lt;br /&gt;- &lt;a href="http://www.microsoft.com/windowsserver2008/en/us/hyperv-main.aspx"&gt;Virtualization with Hyper-V&lt;/a&gt;  &lt;br /&gt;- &lt;a href="http://www.microsoft.com/systemcenter/virtualmachinemanager/en/us/default.aspx"&gt;System Center Virtual Machine Manager&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-8544301019422119766?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/8544301019422119766/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2009/12/hyper-v.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/8544301019422119766'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/8544301019422119766'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2009/12/hyper-v.html' title='Hyper-V'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-4296145370923586447</id><published>2009-11-30T07:58:00.001Z</published><updated>2009-11-30T08:00:34.663Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='Information'/><title type='text'>Windows Error Reporting (WER)</title><content type='html'>WER captures application failure/crash data from users. This data can be used during development for testing performance and reliability of application on windows platform. It helps during beta testing to get early feedback on errors. It can be used to get crash/hang information of critical issues affecting users after release of application. The applications can be developed to capture the crash information and can be developed with capability to recover/restart. The applications can be registered with Windows Error Reporting Service. Following is the URL to register the company: &lt;a href="https://winqual.microsoft.com/SignUp"&gt;https://winqual.microsoft.com/SignUp&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;More details can be found &lt;a href="http://msdn.microsoft.com/en-us/library/bb513641(VS.85).aspx"&gt;here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-4296145370923586447?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/4296145370923586447/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2009/11/windows-error-reporting-wer.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/4296145370923586447'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/4296145370923586447'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2009/11/windows-error-reporting-wer.html' title='Windows Error Reporting (WER)'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-8575244269354080736</id><published>2009-02-27T19:05:00.002Z</published><updated>2009-02-27T19:07:39.641Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='Information'/><category scheme='http://www.blogger.com/atom/ns#' term='Java Script'/><title type='text'>A new kind of Java Script library</title><content type='html'>JQuery is an open-source JavaScript library that greatly simplifies the task of HTML development. &lt;a href="http://jquery.com/"&gt;Click &lt;/a&gt;for more information on JQuery.&lt;br /&gt;&lt;br /&gt;Microsoft demonstrated JQuery's integration with IntelliSense in the planned Visual Studio 2010. Microsoft expects that it will reduce the workload for Developers building web pages using its ASP.NET, AJAX.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-8575244269354080736?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/8575244269354080736/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2009/02/new-kind-of-java-script-library.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/8575244269354080736'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/8575244269354080736'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2009/02/new-kind-of-java-script-library.html' title='A new kind of Java Script library'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-7745874193420497097</id><published>2009-02-03T12:51:00.002Z</published><updated>2009-02-03T12:55:23.455Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='Security'/><category scheme='http://www.blogger.com/atom/ns#' term='Information'/><title type='text'>Google plugs ‘high-risk’ holes in Chrome browser</title><content type='html'>Google has shipped a high-priority Chrome browser patch. The patch provide fix for cross-site scripting and data theft attacks.&lt;br /&gt;&lt;br /&gt;More details are at following URL:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://blogs.zdnet.com/security/?p=2443"&gt;http://blogs.zdnet.com/security/?p=2443&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-7745874193420497097?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/7745874193420497097/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2009/02/google-plugs-high-risk-holes-in-chrome.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/7745874193420497097'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/7745874193420497097'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2009/02/google-plugs-high-risk-holes-in-chrome.html' title='Google plugs ‘high-risk’ holes in Chrome browser'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-4396114489490582472</id><published>2009-01-23T17:29:00.000Z</published><updated>2009-01-23T17:30:53.666Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='Problem'/><category scheme='http://www.blogger.com/atom/ns#' term='Security'/><category scheme='http://www.blogger.com/atom/ns#' term='Information'/><title type='text'>Invalid Update Control CTF File error during AVG update</title><content type='html'>I was trying to update AVG antivirus definitions. During update I started getting errors saying Invalid Update Control CTF File. Because of this error I could not update AVG.&lt;br /&gt;&lt;br /&gt;The solution for this is very simple. I have deleted the .ctf files from AVG folder and could able to update normally. &lt;br /&gt;&lt;br /&gt;You need to navigate to following folder:&lt;br /&gt;C:\Documents and Settings\All Users\Application Data\Avg8\update\download\&lt;br /&gt;You will find at least two .ctf files in this folder. You can rename those OR can remove. After rename/remove, try to update the AVG definitions again. It should work properly.&lt;br /&gt;&lt;br /&gt;Happy browsing…&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-4396114489490582472?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/4396114489490582472/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2009/01/invalid-update-control-ctf-file-error.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/4396114489490582472'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/4396114489490582472'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2009/01/invalid-update-control-ctf-file-error.html' title='Invalid Update Control CTF File error during AVG update'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-8848957211704998645</id><published>2009-01-11T12:40:00.003Z</published><updated>2009-01-11T12:59:33.220Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='Information'/><title type='text'>List of FREE windows software available to download</title><content type='html'>Today while surfing I came across a fantastic blog by &lt;a href="http://cid-70f64bc910c9f7f3.profile.live.com/"&gt;Blake Handler&lt;/a&gt;. He has compiled a list of free windows software downloads from Microsoft. This is a fantastic list. I appreciate his work. &lt;br /&gt;&lt;br /&gt;Following is the link to the blog:&lt;br /&gt;&lt;a href="http://bhandler.spaces.live.com/blog/cns!70F64BC910C9F7F3!1231.entry?wa=wsignin1.0&amp;sa=46528160"&gt;Ultimate List of Free Windows Software from Microsoft&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-8848957211704998645?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/8848957211704998645/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2009/01/list-of-free-windows-software-available.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/8848957211704998645'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/8848957211704998645'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2009/01/list-of-free-windows-software-available.html' title='List of FREE windows software available to download'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-5892690736360776557</id><published>2008-12-06T18:08:00.000Z</published><updated>2008-12-06T18:12:14.269Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='Process'/><title type='text'>Spiral Model</title><content type='html'>The spiral model was defined in 1988 by Barry Boehm. It is often used for large projects. Following are the steps for spiral model:&lt;br /&gt;&lt;br /&gt;- Define requirements in details&lt;br /&gt;- Create preliminary design&lt;br /&gt;- Create prototype from design&lt;br /&gt;- Evaluate prototype&lt;br /&gt;- Define requirements for next prototype&lt;br /&gt;- Create design for second prototype&lt;br /&gt;- Create second prototype&lt;br /&gt;- And so on...&lt;br /&gt;&lt;br /&gt;One can define spiral model in four phases as below&lt;br /&gt;1. Determine objectives&lt;br /&gt;2. Identify and resolve issues/risks&lt;br /&gt;3. Development and test&lt;br /&gt;4. Plan next iteration&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-5892690736360776557?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/5892690736360776557/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2008/12/spiral-model.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/5892690736360776557'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/5892690736360776557'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2008/12/spiral-model.html' title='Spiral Model'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-3817413683089488984</id><published>2008-12-02T17:03:00.000Z</published><updated>2008-12-02T17:04:47.986Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='Process'/><title type='text'>Waterfall Model</title><content type='html'>Waterfall model is sequential development process. This has predefined phases like following:&lt;br /&gt;&lt;br /&gt;1. Requirement analysis&lt;br /&gt;2. Architecture/Design&lt;br /&gt;3. Development/Implementation&lt;br /&gt;4. Integration&lt;br /&gt;5. Testing/Validation&lt;br /&gt;6. Deployment&lt;br /&gt;7. Maintenance &lt;br /&gt;&lt;br /&gt;The waterfall model moves from one phase to another in sequential manner.  The output of one phase is used in next phase. The completion of one phase can be considered as milestones. There are different teams to work on different phases of the waterfall model. &lt;br /&gt;&lt;br /&gt;This model is being used by large projects. For smaller projects there are different methodologies being used as spiral model, iterative model, and agile methodology.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-3817413683089488984?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/3817413683089488984/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2008/12/waterfall-model.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/3817413683089488984'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/3817413683089488984'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2008/12/waterfall-model.html' title='Waterfall Model'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-8679977246033210921</id><published>2008-12-02T17:01:00.000Z</published><updated>2008-12-02T17:03:23.600Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='Process'/><title type='text'>List of software development methodologies</title><content type='html'>Following are few methodologies / philosophies for software development: &lt;br /&gt;&lt;br /&gt;1. Waterfall Model&lt;br /&gt;2. Spiral Model&lt;br /&gt;3. Iterative Model&lt;br /&gt;4. Agile Software Development&lt;br /&gt;5. Agile Unified Process (AUP)&lt;br /&gt;6. Unified Process / Rational Unified Process (RUP)&lt;br /&gt;7. Test Driven Development (TDD)&lt;br /&gt;8. Microsoft Solution Framework (MSF)&lt;br /&gt;9. Joint Application Development (JAD)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-8679977246033210921?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/8679977246033210921/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2008/12/list-of-software-development.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/8679977246033210921'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/8679977246033210921'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2008/12/list-of-software-development.html' title='List of software development methodologies'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-5028300721036407033</id><published>2008-12-02T06:29:00.001Z</published><updated>2008-12-02T06:43:41.584Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='Security'/><title type='text'>Threat modeling tool</title><content type='html'>Microsoft’s Thread Modeling Tool can be used during design phase of application. It allows architects/designers to identify security related issues during design phase. More details can be found at &lt;br /&gt;&lt;a href="http://msdn.microsoft.com/en-us/security/dd206731.aspx"&gt;http://msdn.microsoft.com/en-us/security/dd206731.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Download URL: &lt;a href="http://download.microsoft.com/download/E/5/3/E5318D25-7AEF-4A66-A147-81BBA727F2C1/SDLTM.msi"&gt;http://download.microsoft.com/download/E/5/3/E5318D25-7AEF-4A66-A147-81BBA727F2C1/SDLTM.msi&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-5028300721036407033?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/5028300721036407033/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2008/12/threat-modeling-tool.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/5028300721036407033'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/5028300721036407033'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2008/12/threat-modeling-tool.html' title='Threat modeling tool'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-4627123108688613371</id><published>2008-06-10T15:13:00.001Z</published><updated>2008-06-11T17:41:06.608Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='XML'/><title type='text'>Querying contents of XML using XPATH</title><content type='html'>This can be used to query XML document and get value of particular node with iterating through all the nodes. It would be same as we use SQL query to get data from database. &lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;&lt;blockquote&gt;&lt;br /&gt;public static void XpathQuery()&lt;br /&gt;{&lt;br /&gt;//XML document which contains data&lt;br /&gt;    string xmlDoc = "&amp;lt;?xml version='1.0'?&amp;gt;" +&lt;br /&gt;        "&amp;lt;Company&amp;gt;" + &lt;br /&gt;        "&amp;lt;Employee status='trainee'&amp;gt;Abhishek&amp;lt;/Employee&amp;gt;" +&lt;br /&gt;        "&amp;lt;Employee status ='confirmed'&amp;gt;Vikram Pai&amp;lt;/Employee&amp;gt;" +&lt;br /&gt;        "&amp;lt;Employee status ='confirmed'&amp;gt;Bhautik Shah&amp;lt;/Employee&amp;gt;" +&lt;br /&gt;        "&amp;lt;Employee status ='confirmed'&amp;gt;Ashwini&amp;lt;/Employee&amp;gt;" +&lt;br /&gt;        "&amp;lt;Employee status ='confirmed'&amp;gt;Dheeraj Pal&amp;lt;/Employee&amp;gt;" +&lt;br /&gt;        "&amp;lt;Employee status ='confirmed'&amp;gt;Laxmi&amp;lt;/Employee&amp;gt;" +&lt;br /&gt;        "&amp;lt;/Company&amp;gt;"; &lt;br /&gt;&lt;br /&gt;//Create object of reader using XmlTextReader&lt;br /&gt;    XmlTextReader reader = new XmlTextReader(xmlDoc, XmlNodeType.Element,null); &lt;br /&gt;&lt;br /&gt;    //Create object of XPathDocument using reader&lt;br /&gt;    XPathDocument xpathDoc = new XPathDocument(reader, XmlSpace.Preserve);&lt;br /&gt;    &lt;br /&gt;    //Get navigator object from XPathDocument using CreateNavigator()&lt;br /&gt;    XPathNavigator navigator = xpathDoc.CreateNavigator( );&lt;br /&gt;    &lt;br /&gt;    //prepare query&lt;br /&gt;    string query = "/Company/Employee[attribute::status='confirmed'][contains(text(),'Bhautik')]";&lt;br /&gt;&lt;br /&gt;    //get node iterator from query&lt;br /&gt;    XPathNodeIterator iterator = navigator.Select(query);&lt;br /&gt;&lt;br /&gt;    //display output&lt;br /&gt;    while(iterator.MoveNext( ))&lt;br /&gt;    {&lt;br /&gt;        Console.WriteLine(iterator.Current.Value);&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    // close reader.&lt;br /&gt;    reader.Close( );&lt;br /&gt;}&lt;/blockquote&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The output will be:&lt;br /&gt;&lt;span style="color:blue;"&gt;&lt;br /&gt;Bhautik Shah&lt;/span&gt;&lt;br /&gt;This is the output of query where we searched for employee with status equal to confirmed and value contains Bhautik. This way we can query XML document using XPATH.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-4627123108688613371?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/4627123108688613371/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2008/06/querying-contents-of-xml-using-xpath.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/4627123108688613371'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/4627123108688613371'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2008/06/querying-contents-of-xml-using-xpath.html' title='Querying contents of XML using XPATH'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-7293332891464925733</id><published>2008-06-08T15:42:00.002Z</published><updated>2008-06-08T15:50:00.840Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='ASP.NET'/><title type='text'>Cool things in web.config of ASP.NET 2.0</title><content type='html'>Using web.config in ASP.NET 2.0, you can do many things which apply in your whole web application.&lt;br /&gt; &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Setting common base class for pages:&lt;/span&gt;&lt;br /&gt;You can set base class of all the pages.  The code will look as below:&lt;br /&gt;&lt;blockquote&gt;&lt;span style="color:blue;"&gt;&amp;lt;system.web&amp;gt;&lt;br /&gt;&amp;lt;pages pageBaseType=”MySite.UI.WebSitePageBase” /&amp;gt;&lt;br /&gt;&amp;lt;/system.web&amp;gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;Using this, pages in your application will not inherit System.Web.UI.Page class. Instead all will inherit MySite.UI.WebSitePageBase class.&lt;br /&gt;In your page you case specifically inherit from System.Web.UI.Page class. If not specified then by default, pages will inherit MySite.UI.WebSitePageBase class.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Importing namespace for pages:&lt;/span&gt;&lt;br /&gt;You can also import the namespace for every page.&lt;br /&gt;&lt;blockquote&gt;&lt;span style="color:blue;"&gt;&amp;lt;system.web&amp;gt;&lt;br /&gt;&amp;lt;pages&amp;gt;&lt;br /&gt;&amp;lt;imports&amp;gt;&lt;br /&gt;&amp;lt;add namespace=” MySite.UI” /&amp;gt;&lt;br /&gt;&amp;lt;/imports&amp;gt;&lt;br /&gt;&amp;lt;/pages&amp;gt;&lt;br /&gt;&amp;lt;/system.web&amp;gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Registering custom control:&lt;/span&gt;&lt;br /&gt;You can register custom controls/tag prefixes for whole web site.&lt;br /&gt;&lt;blockquote&gt;&lt;span style="color:blue;"&gt;&amp;lt;configuration&amp;gt;&lt;br /&gt;&amp;lt;system.web&amp;gt;&lt;br /&gt;&amp;lt;pages&amp;gt;&lt;br /&gt;&amp;lt;registerTagPrefixes&amp;gt;&lt;br /&gt;&amp;lt;add tagPrefix="ashish" namespace="Ashish.UI.MyControls"/&amp;gt;&lt;br /&gt;&amp;lt;/registerTagPrefixes&amp;gt;&lt;br /&gt;&amp;lt;/pages&amp;gt;&lt;br /&gt;&amp;lt;/system.web&amp;gt;&lt;br /&gt;&amp;lt;/configuration&amp;gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-7293332891464925733?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/7293332891464925733/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2008/06/cool-things-in-webconfig-of-aspnet-20.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/7293332891464925733'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/7293332891464925733'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2008/06/cool-things-in-webconfig-of-aspnet-20.html' title='Cool things in web.config of ASP.NET 2.0'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-7639719131637786486</id><published>2008-06-01T06:58:00.016Z</published><updated>2008-06-01T13:16:55.219Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='Gadget'/><title type='text'>Developing Gadgets for Microsoft Vista sidebar</title><content type='html'>&lt;div&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;div&gt;To develop Gadget you require following items:&lt;br /&gt;1. A manifest file. The name of the file has to be Gadget.xml. This file holds information about all the required settings of Gadget.&lt;br /&gt;2. A web page. This can be a simple HTML file. This web page can have links to CSS file, Java Script code.&lt;br /&gt;Let’s create Test Gadget. As a first step, create a HTML page like below.&lt;/div&gt;&lt;br /&gt;&lt;a href="http://bp3.blogger.com/_m6IH3KVGcj8/SEJJ9q-NTNI/AAAAAAAABOA/MPs_JBDPuRg/s1600-h/image001.jpg"&gt;&lt;br /&gt;&lt;img id="BLOGGER_PHOTO_ID_5206805816711924962" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://bp2.blogger.com/_m6IH3KVGcj8/SEJKTa-NTOI/AAAAAAAABOI/J6I_7dYbH9M/s320/image001.jpg" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;Create CSS file which can hold style for the HTML page. The file might look like below.&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;img id="BLOGGER_PHOTO_ID_5206806344992902386" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://bp1.blogger.com/_m6IH3KVGcj8/SEJKyK-NTPI/AAAAAAAABOQ/GpZhYIctv4o/s320/image002.jpg" border="0" /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;Create a Script file. This script file can be for Java Script or VB Script. In this exercise we will be using VB Script file to get machine information.&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://bp1.blogger.com/_m6IH3KVGcj8/SEJWSK-NTbI/AAAAAAAABPw/04K1Zm2L46U/s1600-h/image003.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5206818989376622002" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://bp1.blogger.com/_m6IH3KVGcj8/SEJWSK-NTbI/AAAAAAAABPw/04K1Zm2L46U/s320/image003.jpg" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;Now we will create an important file, i.e. Gadget.xml file. This is the file application uses to display our gadget. This holds reference/name of the HTML file and other information.&lt;br /&gt;The file should look like following. &lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://bp0.blogger.com/_m6IH3KVGcj8/SEJNL6-NTQI/AAAAAAAABOY/nvVRS_0xpD4/s1600-h/image004.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5206808986397789442" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://bp0.blogger.com/_m6IH3KVGcj8/SEJNL6-NTQI/AAAAAAAABOY/nvVRS_0xpD4/s320/image004.jpg" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;The tags used in this file has description as follows&lt;/div&gt;&lt;br /&gt;&lt;div valign="top"&gt;&lt;br /&gt;&lt;table border="1" cellpadding="0" cellspacing="0" class="MediumShading1-Accent11" style="border-right: medium none; border-top: medium none; border-left:medium none;border-bottom: medium none; border-collapse: collapse" valign="top"&gt;&lt;br /&gt;            &lt;tr&gt;&lt;br /&gt;                &lt;td style="border-right: #7ba0cd 1pt solid; padding-right: 5.4pt; border-top: #7ba0cd 1pt solid;padding-left: 5.4pt; background: #4f81bd; padding-bottom: 0cm; border-left: #7ba0cd 1pt solid;width: 125.9pt; padding-top: 0cm; border-bottom: #7ba0cd 1pt solid" valign="top" width="168"&gt;&lt;br /&gt;                    &lt;p class="MsoNormal" style="margin-bottom: 0pt; line-height: normal; text-align: justify"&gt;&lt;br /&gt;                        &lt;b&gt;&lt;span lang="EN-GB" style="font-size: 10pt; color: white; font-family: 'Verdana','sans-serif'"&gt;&lt;br /&gt;                            Tag&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;br /&gt;                &lt;/td&gt;&lt;br /&gt;                &lt;td style="border-right: #7ba0cd 1pt solid; padding-right: 5.4pt; border-top: #7ba0cd 1pt solid;padding-left: 5.4pt; background: #4f81bd; padding-bottom: 0cm; border-left: medium none;width: 532.9pt; padding-top: 0cm; border-bottom: #7ba0cd 1pt solid" valign="top" width="711"&gt;&lt;br /&gt;                    &lt;p class="MsoNormal" style="margin-bottom: 0pt; line-height: normal; text-align: justify"&gt;&lt;br /&gt;                        &lt;b&gt;&lt;span lang="EN-GB" style="font-size: 10pt; color: white; font-family: 'Verdana','sans-serif'"&gt;&lt;br /&gt;                            Description&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;br /&gt;                &lt;/td&gt;&lt;br /&gt;            &lt;/tr&gt;&lt;br /&gt;            &lt;tr&gt;&lt;br /&gt;                &lt;td style="border-right: #7ba0cd 1pt solid; padding-right: 5.4pt; border-top: medium none;padding-left: 5.4pt; background: #d3dfee; padding-bottom: 0cm; border-left: #7ba0cd 1pt solid;width: 125.9pt; padding-top: 0cm; border-bottom: #7ba0cd 1pt solid" valign="top" width="168"&gt;&lt;br /&gt;                    &lt;p class="MsoNormal" style="margin-bottom: 0pt; line-height: normal; text-align: justify"&gt;&lt;br /&gt;                        &lt;b&gt;&lt;span lang="EN-GB" style="font-size: 10pt; font-family: 'Verdana','sans-serif'"&gt;&amp;lt;name&amp;gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;br /&gt;                &lt;/td&gt;&lt;br /&gt;                &lt;td style="border-right: #7ba0cd 1pt solid; padding-right: 5.4pt; border-top: medium none;padding-left: 5.4pt; background: #d3dfee; padding-bottom: 0cm; border-left: medium none;width: 532.9pt; padding-top: 0cm; border-bottom: #7ba0cd 1pt solid" valign="top" width="711"&gt;&lt;br /&gt;                    &lt;p class="MsoNormal" style="margin-bottom: 0pt; line-height: normal; text-align: justify"&gt;&lt;br /&gt;                        &lt;span lang="EN-GB" style="font-size: 10pt; font-family: 'Verdana','sans-serif'"&gt;Name of the gadget as it appears in the gadget picker dialog box.&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;                &lt;/td&gt;&lt;br /&gt;            &lt;/tr&gt;&lt;br /&gt;            &lt;tr&gt;&lt;br /&gt;                &lt;td style="border-right: #7ba0cd 1pt solid; padding-right: 5.4pt; border-top: medium none;padding-left: 5.4pt; padding-bottom: 0cm; border-left: #7ba0cd 1pt solid; width: 125.9pt;padding-top: 0cm; border-bottom: #7ba0cd 1pt solid" valign="top" width="168"&gt;&lt;br /&gt;                    &lt;p class="MsoNormal" style="margin-bottom: 0pt; line-height: normal; text-align: justify"&gt;&lt;br /&gt;                        &lt;b&gt;&lt;span lang="EN-GB" style="font-size: 10pt; font-family: 'Verdana','sans-serif'"&gt;&amp;lt;author&amp;gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;br /&gt;                &lt;/td&gt;&lt;br /&gt;                &lt;td style="border-right: #7ba0cd 1pt solid; padding-right: 5.4pt; border-top: medium none;padding-left: 5.4pt; padding-bottom: 0cm; border-left: medium none; width: 532.9pt;padding-top: 0cm; border-bottom: #7ba0cd 1pt solid" valign="top" width="711"&gt;&lt;br /&gt;                    &lt;p class="MsoNormal" style="margin-bottom: 0pt; line-height: normal; text-align: justify"&gt;&lt;br /&gt;                        &lt;span lang="EN-GB" style="font-size: 10pt; font-family: 'Verdana','sans-serif'"&gt;&lt;/span&gt;&lt;br /&gt;                        &amp;nbsp;&lt;/p&gt;&lt;br /&gt;                    &lt;p class="MsoNormal" style="margin-bottom: 0pt; line-height: normal; text-align: justify"&gt;&lt;br /&gt;                        &lt;span lang="EN-GB" style="font-size: 10pt; font-family: 'Verdana','sans-serif'"&gt;&amp;nbsp;Name of the person who wrote the gadget. The author, copyright, and description tags all appear in the gadget picker when you click on a particular gadget. For details, see the illustration shown below.&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;                &lt;/td&gt;&lt;br /&gt;            &lt;/tr&gt;&lt;br /&gt;            &lt;tr&gt;&lt;br /&gt;                &lt;td style="border-right: #7ba0cd 1pt solid; padding-right: 5.4pt; border-top: medium none;padding-left: 5.4pt; background: #d3dfee; padding-bottom: 0cm; border-left: #7ba0cd 1pt solid;width: 125.9pt; padding-top: 0cm; border-bottom: #7ba0cd 1pt solid" valign="top" width="168"&gt;&lt;br /&gt;                    &lt;p class="MsoNormal" style="margin-bottom: 0pt; line-height: normal; text-align: justify"&gt;&lt;br /&gt;                        &lt;b&gt;&lt;span lang="EN-GB" style="font-size: 10pt; font-family: 'Verdana','sans-serif'"&gt;&amp;lt;copyright&amp;gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;br /&gt;                &lt;/td&gt;&lt;br /&gt;                &lt;td style="border-right: #7ba0cd 1pt solid; padding-right: 5.4pt; border-top: medium none;padding-left: 5.4pt; background: #d3dfee; padding-bottom: 0cm; border-left: medium none;width: 532.9pt; padding-top: 0cm; border-bottom: #7ba0cd 1pt solid" valign="top" width="711"&gt;&lt;br /&gt;                    &lt;p class="MsoNormal" style="margin-bottom: 0pt; line-height: normal; text-align: justify"&gt;&lt;br /&gt;                        &lt;span lang="EN-GB" style="font-size: 10pt; font-family: 'Verdana','sans-serif'"&gt;Copyright information, including name of the copyright holder and copyright date.&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;                &lt;/td&gt;&lt;br /&gt;            &lt;/tr&gt;&lt;br /&gt;            &lt;tr&gt;&lt;br /&gt;                &lt;td style="border-right: #7ba0cd 1pt solid; padding-right: 5.4pt; border-top: medium none;padding-left: 5.4pt; padding-bottom: 0cm; border-left: #7ba0cd 1pt solid; width: 125.9pt;padding-top: 0cm; border-bottom: #7ba0cd 1pt solid" valign="top" width="168"&gt;&lt;br /&gt;                    &lt;p class="MsoNormal" style="margin-bottom: 0pt; line-height: normal; text-align: justify"&gt;&lt;br /&gt;                        &lt;b&gt;&lt;span lang="EN-GB" style="font-size: 10pt; font-family: 'Verdana','sans-serif'"&gt;&amp;lt;description&amp;gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;br /&gt;                &lt;/td&gt;&lt;br /&gt;                &lt;td style="border-right: #7ba0cd 1pt solid; padding-right: 5.4pt; border-top: medium none;padding-left: 5.4pt; padding-bottom: 0cm; border-left: medium none; width: 532.9pt;padding-top: 0cm; border-bottom: #7ba0cd 1pt solid" valign="top" width="711"&gt;&lt;br /&gt;                    &lt;p class="MsoNormal" style="margin-bottom: 0pt; line-height: normal; text-align: justify"&gt;&lt;br /&gt;                        &lt;span lang="EN-GB" style="font-size: 10pt; font-family: 'Verdana','sans-serif'"&gt;Brief description of the gadget and what it does.&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;                &lt;/td&gt;&lt;br /&gt;            &lt;/tr&gt;&lt;br /&gt;            &lt;tr&gt;&lt;br /&gt;                &lt;td style="border-right: #7ba0cd 1pt solid; padding-right: 5.4pt; border-top: medium none;padding-left: 5.4pt; background: #d3dfee; padding-bottom: 0cm; border-left: #7ba0cd 1pt solid;width: 125.9pt; padding-top: 0cm; border-bottom: #7ba0cd 1pt solid" valign="top" width="168"&gt;&lt;br /&gt;                    &lt;p class="MsoNormal" style="margin-bottom: 0pt; line-height: normal; text-align: justify"&gt;&lt;br /&gt;                        &lt;b&gt;&lt;span lang="EN-GB" style="font-size: 10pt; font-family: 'Verdana','sans-serif'"&gt;&amp;lt;icon&amp;gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;br /&gt;                &lt;/td&gt;&lt;br /&gt;                &lt;td style="border-right: #7ba0cd 1pt solid; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; background: #d3dfee; padding-bottom: 0cm; border-left: medium none;width: 532.9pt; padding-top: 0cm; border-bottom: #7ba0cd 1pt solid" valign="top" width="711"&gt;&lt;br /&gt;                    &lt;p class="MsoNormal" style="margin-bottom: 0pt; line-height: normal; text-align: justify"&gt;&lt;br /&gt;                        &lt;span lang="EN-GB" style="font-size: 10pt; font-family: 'Verdana','sans-serif'"&gt;Name of the icon file (the icon is the graphic displayed in the gadget picker). For more on icons, see Creating an Icon in the following subsection of this document.&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;                &lt;/td&gt;&lt;br /&gt;            &lt;/tr&gt;&lt;br /&gt;            &lt;tr&gt;&lt;br /&gt;                &lt;td style="border-right: #7ba0cd 1pt solid; padding-right: 5.4pt; border-top: medium none;padding-left: 5.4pt; padding-bottom: 0cm; border-left: #7ba0cd 1pt solid; width: 125.9pt;padding-top: 0cm; border-bottom: #7ba0cd 1pt solid" valign="top" width="168"&gt;&lt;br /&gt;                    &lt;p class="MsoNormal" style="margin-bottom: 0pt; line-height: normal; text-align: justify"&gt;&lt;br /&gt;                        &lt;b&gt;&lt;span lang="EN-GB" style="font-size: 10pt; font-family: 'Verdana','sans-serif'"&gt;&amp;lt;code&amp;gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;br /&gt;                &lt;/td&gt;&lt;br /&gt;                &lt;td style="border-right: #7ba0cd 1pt solid; padding-right: 5.4pt; border-top: medium none;padding-left: 5.4pt; padding-bottom: 0cm; border-left: medium none; width: 532.9pt; padding-top: 0cm; border-bottom: #7ba0cd 1pt solid" valign="top" width="711"&gt;&lt;br /&gt;                    &lt;p class="MsoNormal" style="margin-bottom: 0pt; line-height: normal; text-align: justify"&gt;&lt;br /&gt;                        &lt;span lang="EN-GB" style="font-size: 10pt; font-family: 'Verdana','sans-serif'"&gt;Probably not the most intuitive tag name in the world, but this is the name of the HTML file that makes up your gadget.&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;                &lt;/td&gt;&lt;br /&gt;            &lt;/tr&gt;&lt;br /&gt;            &lt;tr&gt;&lt;br /&gt;                &lt;td style="border-right: #7ba0cd 1pt solid; padding-right: 5.4pt; border-top: medium none;padding-left: 5.4pt; background: #d3dfee; padding-bottom: 0cm; border-left: #7ba0cd 1pt solid;width: 125.9pt; padding-top: 0cm; border-bottom: #7ba0cd 1pt solid" valign="top" width="168"&gt;&lt;br /&gt;                    &lt;p class="MsoNormal" style="margin-bottom: 0pt; line-height: normal; text-align: justify"&gt;&lt;br /&gt;                        &lt;b&gt;&lt;span lang="EN-GB" style="font-size: 10pt; font-family: 'Verdana','sans-serif'"&gt;&amp;lt;website&amp;gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;br /&gt;                &lt;/td&gt;&lt;br /&gt;                &lt;td style="border-right: #7ba0cd 1pt solid; padding-right: 5.4pt; border-top: medium none;padding-left: 5.4pt; background: #d3dfee; padding-bottom: 0cm; border-left: medium none;width: 532.9pt; padding-top: 0cm; border-bottom: #7ba0cd 1pt solid" valign="top" width="711"&gt;&lt;br /&gt;                    &lt;p class="MsoNormal" style="margin-bottom: 0pt; line-height: normal; text-align: justify"&gt;&lt;br /&gt;                        &lt;span lang="EN-GB" style="font-size: 10pt; font-family: 'Verdana','sans-serif'"&gt;Web site associated with the gadget&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;                &lt;/td&gt;&lt;br /&gt;            &lt;/tr&gt;&lt;br /&gt;        &lt;/table&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;Place/Copy these files with relevant structure to following location&lt;br /&gt;%userprofile%\appdata\local\microsoft\windows sidebar\gadgets&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://bp0.blogger.com/_m6IH3KVGcj8/SEJNL6-NTRI/AAAAAAAABOg/W8iPRruKbaU/s1600-h/image005.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5206808986397789458" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://bp0.blogger.com/_m6IH3KVGcj8/SEJNL6-NTRI/AAAAAAAABOg/W8iPRruKbaU/s320/image005.jpg" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;We have created a folder names Test.Gadget and placed all the required files under that.&lt;br /&gt;&lt;br /&gt;Now we need to add this gadget to Sidebar. If the side bar is not visible on your desktop, do as following:&lt;br /&gt;Navigate to Start&gt;All Programs&gt;Accessories&gt;Windows Sidebar&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://bp1.blogger.com/_m6IH3KVGcj8/SEJNMK-NTSI/AAAAAAAABOo/uS2uckE5bZw/s1600-h/image006.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5206808990692756770" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://bp1.blogger.com/_m6IH3KVGcj8/SEJNMK-NTSI/AAAAAAAABOo/uS2uckE5bZw/s320/image006.jpg" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;Click on “Windows Sidebar”. This will add windows sidebar to your desktop.&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://bp1.blogger.com/_m6IH3KVGcj8/SEJNMK-NTTI/AAAAAAAABOw/Tf1evtoWWfw/s1600-h/image007.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5206808990692756786" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://bp1.blogger.com/_m6IH3KVGcj8/SEJNMK-NTTI/AAAAAAAABOw/Tf1evtoWWfw/s320/image007.jpg" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;Click on “+” sign next to Gadget on top of Windows sidebar&lt;br /&gt;This will open Gadget selection screen&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://bp1.blogger.com/_m6IH3KVGcj8/SEJNMK-NTUI/AAAAAAAABO4/49fcYC-6GZA/s1600-h/image008.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5206808990692756802" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://bp1.blogger.com/_m6IH3KVGcj8/SEJNMK-NTUI/AAAAAAAABO4/49fcYC-6GZA/s320/image008.jpg" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;You can apply filter to it by going to dropdown on top right.&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://bp0.blogger.com/_m6IH3KVGcj8/SEJP56-NTVI/AAAAAAAABPA/ZnUsi6lRqps/s1600-h/image009.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5206811975695027538" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://bp0.blogger.com/_m6IH3KVGcj8/SEJP56-NTVI/AAAAAAAABPA/ZnUsi6lRqps/s320/image009.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;Select your profile name. The gadget we have copied to profile folder should appear in this list. Select it and click on add&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://bp0.blogger.com/_m6IH3KVGcj8/SEJP56-NTWI/AAAAAAAABPI/1HvXEoVOmI0/s1600-h/image010.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5206811975695027554" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://bp0.blogger.com/_m6IH3KVGcj8/SEJP56-NTWI/AAAAAAAABPI/1HvXEoVOmI0/s320/image010.jpg" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;This will add this new gadget to Windows Sidebar&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://bp0.blogger.com/_m6IH3KVGcj8/SEJP56-NTXI/AAAAAAAABPQ/e_6gbqIzLLU/s1600-h/image011.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5206811975695027570" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://bp0.blogger.com/_m6IH3KVGcj8/SEJP56-NTXI/AAAAAAAABPQ/e_6gbqIzLLU/s320/image011.jpg" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;On click of “Get Machine Info”, the machine information will appear.&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://bp1.blogger.com/_m6IH3KVGcj8/SEJP6K-NTYI/AAAAAAAABPY/CG0SBhK4JIA/s1600-h/image012.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5206811979989994882" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://bp1.blogger.com/_m6IH3KVGcj8/SEJP6K-NTYI/AAAAAAAABPY/CG0SBhK4JIA/s320/image012.jpg" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;On moving mouse over Gadget, + sign and grid of dots appear on top right corner of Gadget. You can use this to drag the gadget to anywhere you want.&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://bp1.blogger.com/_m6IH3KVGcj8/SEJP6K-NTZI/AAAAAAAABPg/RtaQrd9nodo/s1600-h/image013.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5206811979989994898" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://bp1.blogger.com/_m6IH3KVGcj8/SEJP6K-NTZI/AAAAAAAABPg/RtaQrd9nodo/s320/image013.jpg" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://bp2.blogger.com/_m6IH3KVGcj8/SEJRRa-NTaI/AAAAAAAABPo/y4B0NAjK-Y8/s1600-h/image014.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5206813478933581218" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://bp2.blogger.com/_m6IH3KVGcj8/SEJRRa-NTaI/AAAAAAAABPo/y4B0NAjK-Y8/s320/image014.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;Note: We have used WMI calls to get machine information. We can use the same information in the Gadget instead opening a new page after click. We can also have auto refreshing Gadget page. This is all about how you design your HTML page to show up in Gadget.&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-7639719131637786486?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/7639719131637786486/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2008/06/developing-gadgets-for-microsoft-vista.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/7639719131637786486'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/7639719131637786486'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2008/06/developing-gadgets-for-microsoft-vista.html' title='Developing Gadgets for Microsoft Vista sidebar'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp2.blogger.com/_m6IH3KVGcj8/SEJKTa-NTOI/AAAAAAAABOI/J6I_7dYbH9M/s72-c/image001.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-6294289415763636386</id><published>2008-05-24T16:19:00.002Z</published><updated>2008-05-24T16:23:29.495Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='ASP.NET'/><title type='text'>ASP.NET Webservice TIP</title><content type='html'>To allow only required protocol to the web service you are creating, you can use following in web.config file. &lt;br /&gt;&lt;br /&gt;&amp;lt;webServices&amp;gt;&lt;br /&gt;&amp;lt;protocols&amp;gt;&lt;br /&gt;&amp;lt;remove name="Documentation"/&amp;gt;&lt;br /&gt;&amp;lt;remove name="HttpGet"/&amp;gt;&lt;br /&gt;&amp;lt;add name="HttpPost"/&amp;gt;&lt;br /&gt;&amp;lt;/protocols&amp;gt;&lt;br /&gt;&amp;lt;/webServices&amp;gt;&lt;br /&gt;&lt;br /&gt;Only the required protocols should be allowed to the web service. If you allow the documentation, any malicious user can access and get the information about your web method. Using that information, hacker be a threat to your web service. &lt;br /&gt;&lt;br /&gt;Above section in web.config file only allows POST method. User will not be able to use your web service using GET protocol.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-6294289415763636386?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/6294289415763636386/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2008/05/aspnet-webservice-tip.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/6294289415763636386'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/6294289415763636386'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2008/05/aspnet-webservice-tip.html' title='ASP.NET Webservice TIP'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-2204957808579638949</id><published>2008-03-08T19:13:00.001Z</published><updated>2008-03-08T19:13:59.495Z</updated><title type='text'>Creating folder named “con” on windows OS</title><content type='html'>Windows OS does not allow creating folder named like con, lpt1, lpt2, com1, etc. If you try creating it using Windows Explorer, it will simply ignore the name. If you try creating it through command prompt, it will say “The directory name is invalid.” &lt;br /&gt;&lt;br /&gt;The reason could be it is not allowing creation of folder named with con… : &lt;br /&gt;&lt;br /&gt;Back in old days when Windows was not there, “con” used to be a reserved word. Remember command “copy con”? We used it use that con word in those days. If  you see words like lpt1, com1.. those are still in use. Com1 is used to access com1 device. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;If you still want to create folder with name con, lpt1, etc. you can try following. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Prefix “\\.\” with full physical path where you would like to create the dir and create folder using command prompt. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Example: &lt;br /&gt;&lt;br /&gt;D:\test&gt;mkdir \\.\D:\test\con&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-2204957808579638949?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/2204957808579638949/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2008/03/creating-folder-named-con-on-windows-os.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/2204957808579638949'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/2204957808579638949'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2008/03/creating-folder-named-con-on-windows-os.html' title='Creating folder named “con” on windows OS'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-6130954185730182979</id><published>2008-03-01T15:17:00.003Z</published><updated>2008-03-01T15:23:07.454Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='ADO.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Best Practices'/><title type='text'>ADO.NET Best practices</title><content type='html'>Here are few tips which can be considered while working with ADO.NET. These may help using ADO.NET effectively. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;1. Database Connection:&lt;/strong&gt; &lt;br /&gt;&lt;br /&gt;While working with database, one should open the connection with database as late as possible and should close it as early as possible. &lt;br /&gt;&lt;br /&gt;It is always better to use connection pooling with database. When application uses connection pooling, the connection once created goes back to connection pool and can be reutilized by the system for another database call. The overhead for creation of connection will be bypassed by using connection from pool. The connection pool size can be defined in connection string. For same connection string ADO.NET creates connection pool. &lt;br /&gt;&lt;br /&gt;One should call the close method on connection object. Calling close method returns the connection to the connection pool. This connection from connection pool can be reutilized. One should not rely on garbage collector to destroy the connection object. &lt;br /&gt;&lt;br /&gt;It is better to use “using” block of C# for connection. This automatically disposes the connection as connection object implements Idisposable interface. &lt;br /&gt;&lt;br /&gt;&lt;strong&gt;2. Transaction:&lt;/strong&gt; &lt;br /&gt;&lt;br /&gt;Most of the enterprise distributed application uses transactions. There are two kind of transactions - manual and automatic. Transactions can span over one database or multiple databases. In ADO.NET one can use the transaction by calling the BeginTransaction method on the connection object. Use of automatic transaction could be an overhead on performance. &lt;br /&gt;&lt;br /&gt;&lt;strong&gt;3. Connection String:&lt;/strong&gt; &lt;br /&gt;&lt;br /&gt;It is recommended to store the connection string securely as it is very sensitive piece of information. Storing connection string in clear text is not recommended. The connection string should be encrypted. &lt;br /&gt;&lt;br /&gt;One can store the connection string into registry. Storing connection into registry string could cause issues while deploying. Following command can be used to store the connection in registry. &lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;aspnet_setreg -k “software\applicationData” -u:UserID -p:Password&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;It encrypts the user ID and password and stores that in the specified key. &lt;br /&gt;&lt;br /&gt;One can keep encrypted connection string into web.config file too. For encrypting connection string in web.config, aspnet_regiis utility can be used. (Note: There are providers to encrypt/decrypt the connection string. One can create their own providers for encryption/decryption) &lt;br /&gt;&lt;br /&gt;&lt;strong&gt;4. DataReader &amp; DataSet:&lt;/strong&gt; &lt;br /&gt;&lt;br /&gt;One should decide when to use data reader and when to use dataset. &lt;br /&gt;&lt;br /&gt;Avoid using DataAdapter’s Fill method which takes startRecord and maxRecord as parameters. This will fill dataset with only records between startRecord and maxRecord though it will fetch full set of data from database every time the method get called. &lt;br /&gt;&lt;br /&gt;DataReader should be closed before accessing any of the output parameters. One should close the DataReader after reading the data. If you pass CommandBehaviour.CloseConnection to ExecuteReader method, it will close the associated connection when you close the data reader. &lt;br /&gt;&lt;br /&gt;The data reader should not be accessed through layers. It is designed for connected data access. &lt;br /&gt;&lt;br /&gt;When accessing values of the columns from database, one should use GetString/GEtInt32, etc. This reduces casing overhead and improves performance. Only one data reader can be opened on single associated connection. &lt;br /&gt;&lt;br /&gt;The default behaviour of DataReader is to load entire row into memory for each Read. By this one can have random access to columns within current row. If you do not require random access, you can pass CommandBehaviour.SequentialAccess to ExecuteReader method. This will change the default behaviour of DataReader and will load data into memory only when requested. Using this behaviour, you need to access the columns in order and once you have read a column, you can no longer read the value of it. Passing SequentialAccess behaviour gives better performance. &lt;br /&gt;&lt;br /&gt;&lt;strong&gt;5. Command Object:&lt;/strong&gt; &lt;br /&gt;&lt;br /&gt;To have better performance of parameterized commands, should use Command.Prepare. On calling of prepare method, data source optimizes the command for multiple calls. &lt;br /&gt;&lt;br /&gt;Note: For SQL Server 2000, commands are implicitly optimized and so Prepare method calling will not be doing anything extra. Though the same prepare command will be effective with data source such as SQL Server 7.0 &lt;br /&gt;&lt;br /&gt;While calling stored procedure, it is better to set CommandType to StoredProcedure. This will remove the need to parse the command. &lt;br /&gt;&lt;br /&gt;One should call Cancel on command before calling Close on data reader in case you are closing before reading all the records. Calling Close causes data reader to retrieve pending results and empty the stream before closing cursor. Calling Cancel on Command discards the results on server and so data reader does not have to read when it closed. &lt;br /&gt;&lt;br /&gt;Note: If you are returning output parameters form command, calling cancel will discard those too. So if you need any output parameters, do not call cancel on the command, instead call Close on the Data Reader. &lt;br /&gt;&lt;br /&gt;&lt;strong&gt;6. CommandBuilder:&lt;/strong&gt; &lt;br /&gt;&lt;br /&gt;CommandBuilder generates insert/update/delete commands for Data adapter based on select command. Automatic creation of insert/update/delete commands hinders performance. In case one knows the contents of insert/update/delete, should create those explicitly. Better to create explicit stored procedures for insert/update/delete and assign those. &lt;br /&gt;&lt;br /&gt;The CommandBuilder uses SelectComand property of DataAdapter to determine values for other commands. If there is change in SelectCommand of DataAdapter, remember to call ReferhScheme to update the command properties. &lt;br /&gt;&lt;br /&gt;CommandBuilder only generates a command for data adapter’s Command property if command property is null. By default command properties are null for data adapter. If you explicitly set a command property, the CommandBuilder does not overwrite it. You need to set the command property to null to allow CommandBuilder to generate a command for Command property.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-6130954185730182979?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/6130954185730182979/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2008/03/adonet-best-practices.html#comment-form' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/6130954185730182979'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/6130954185730182979'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2008/03/adonet-best-practices.html' title='ADO.NET Best practices'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-2827544963823667160</id><published>2007-10-28T09:24:00.000Z</published><updated>2007-10-29T04:20:26.604Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='ASP.NET'/><title type='text'>Things to consider while uploading files using ASP.NET</title><content type='html'>While uploading data using ASP.NET application we need to take care of the size of data. If the original settings have not been modified, ASP.NET allows 4096 KB data in request.&lt;br /&gt;To have more data or uploading larger files, one needs to have changes in web.config file. The maxRequestLength attribute of the httpRuntime element can be modified accordingly.&lt;br /&gt;The Machine.config file may also have the maxRequestLength attribute. In such case, custom error pages cannot be displayed, instead IE displays error page “Cannot find server or DNS”.&lt;br /&gt;Following are the default values of attributes in Machine.config file:&lt;br /&gt;&lt;br /&gt;httpruntime executiontimeout="90" &lt;br /&gt;maxrequestlength="4096" &lt;br /&gt;usefullyqualifiedredirecturl="false" &lt;br /&gt;minfreethreads="8" &lt;br /&gt;minlocalrequestfreethreads="4" &lt;br /&gt;apprequestqueuelimit="100"&lt;br /&gt;&lt;br /&gt;Note: The Machine.config file is located in the \System Root\Microsoft.NET\Framework\Version Number\CONFIG directory.&lt;br /&gt;ADDITIONAL INFORMATION&lt;br /&gt;The ASP.NET worker process has virtual address space of 2 GB but it uses somewhat more than 1 GB because health monitoring and memory fragmentation. During file upload process, ASP.NET loads the whole file in memory before saving to disk. We can specify value of memoryLimit attribute of the processModel tag. The value is percentage of physical memory that ASP.NET worker process can exhaust before the process automatically recycled. Recycling prevents memory leaks from causing ASP.NET to crash or to stop responding.&lt;br /&gt;Other things to consider while uploading file are available memory, available hard disk space, network traffic and processor speed. The recommended maximum file size is in range of 10 to 20 MB.&lt;br /&gt;Following error messages can be noticed during large file upload process:&lt;br /&gt;- The page cannot be displayed.&lt;br /&gt;- Server application is unavailable.&lt;br /&gt;&lt;br /&gt;In the event log, the error message will be similar to the following:&lt;br /&gt;aspnet_wp.exe (PID:PIDNumber) was recycled because memory consumption exceeded the SizeLimit MB (Percentage percent of available RAM).&lt;br /&gt;• Exception of type System.OutOfMemoryException was thrown.&lt;br /&gt;You may also find that uploads occur very slowly. If you watch the Aspnet_wp.exe process in Windows Task Manager, you will notice that the memory delta changes by 64 KB every 1 to 2 seconds. Depending on the size of the file, this delay may cause the ASP.NET worker process to recycle because of a responseDeadlock error.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-2827544963823667160?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/2827544963823667160/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2007/10/things-to-consider-while-uploading.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/2827544963823667160'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/2827544963823667160'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2007/10/things-to-consider-while-uploading.html' title='Things to consider while uploading files using ASP.NET'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-2253176924583727838</id><published>2007-05-10T05:45:00.000Z</published><updated>2007-05-10T05:49:56.569Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='ASP.NET'/><title type='text'>Paging in repeater control</title><content type='html'>&lt;p&gt;&lt;br /&gt;By default repeater control does not have paging capability. To have that we can use PagedDataSource Class.  Using PagedDataSource class it is easy to have paging capability in repeater control. Following are the steps to have this functionality:&lt;/p&gt;&lt;p&gt;1.       Create object instance of PagedDataSource class (The class can be found in System.Web.UI.WebControls namespace &lt;a href="http://msdn2.microsoft.com/en-us/library/system.web.ui.webcontrols.pageddatasource(VS.80).aspx"&gt;&lt;span style="font-size:78%;"&gt;http://msdn2.microsoft.com/en-us/library/system.web.ui.webcontrols.pageddatasource(VS.80).aspx&lt;/span&gt;&lt;/a&gt;)&lt;/p&gt;&lt;p&gt;2.       Assign your data to DataSource property of PagedDataSource object.&lt;/p&gt;&lt;p&gt;3.       Set the paging properties of PagedDataSource object. The properties may include AllowPaging, PageSize etc.&lt;/p&gt;&lt;p&gt;4.       You may like to set the current page index using CurrentPageIndex property of PagedDataSource object.&lt;/p&gt;&lt;p&gt;5.       IsFirstPage/IsLastPage properties can be used to take care of disabling/enabling navigation buttons.&lt;/p&gt;&lt;p&gt;6.       Assign the PagedDataSource object to DataSource property of Repeater control.&lt;/p&gt;&lt;p&gt;7.       Call the DataBind() method of Repeater control.&lt;/p&gt;&lt;p&gt;8.       For page navigation you need to have your own link or buttons.&lt;/p&gt;&lt;p&gt;Hope this helps you!!!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-2253176924583727838?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/2253176924583727838/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2007/05/paging-in-repeater-control.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/2253176924583727838'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/2253176924583727838'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2007/05/paging-in-repeater-control.html' title='Paging in repeater control'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-4527931427538676457</id><published>2007-02-14T10:53:00.000Z</published><updated>2007-02-14T10:56:52.179Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='Guidelines'/><title type='text'>Interface Naming Guidelines</title><content type='html'>&lt;p&gt;- Should name the interface with noun or noun phrase or adjective that describes its behavior.&lt;br /&gt;For example: The interface name IComponent uses a descriptive noun. The interface name ICustomAttributeProvider uses a noun phrase. The name IPersistable uses an adjective.&lt;br /&gt;- Should use Pascal case for interface name&lt;br /&gt;- Use abbreviations carefully&lt;br /&gt;- Should prefix interface name with the letter “I” to indicate that it’s of type interface.&lt;br /&gt;- Use similar names when you define a class/interface pair where the class is a standard implementation of the interface. The names should differ only by the letter I prefix on the interface name.&lt;br /&gt;For example: ICalculator is interface and related class could be Calculator&lt;br /&gt;- Should NOT use the underscore character "_"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The following are examples of naming interfaces:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;&lt;span style="color:#3333ff;"&gt;public interface IServiceProvider&lt;br /&gt;public interface IFormatable&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;Following code illustrates how to define an interface IComponent and its standard implementation, the class Component.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;font-size:85%;color:#3333ff;"&gt;public interface IComponent&lt;br /&gt;{&lt;br /&gt;   // Interface code goes here.&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;public class Component: IComponent&lt;br /&gt;{&lt;br /&gt;   // class Implementation code goes here.&lt;br /&gt;}&lt;br /&gt;&lt;/span&gt; &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-4527931427538676457?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/4527931427538676457/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2007/02/interface-naming-guidelines.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/4527931427538676457'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/4527931427538676457'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2007/02/interface-naming-guidelines.html' title='Interface Naming Guidelines'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-5900763497924334084</id><published>2007-01-26T09:41:00.000Z</published><updated>2007-01-26T09:45:57.420Z</updated><title type='text'>Exception when trying to transfer data between .NET Framework 2.0 and 1.1</title><content type='html'>We have some old piece of code which is written in .NET 1.1 framework. The new development is going on .NET 2.0 framework. We would not wanted to rewrite the business logic we had already written in 1.1 and so we thought of using .NET remoting to invoke those methods from new 2.0 code.&lt;br /&gt;&lt;br /&gt;The issue we faced when we were coding is, it gives exception when we try to pass data from 2.0 to 1.1 remoting objects. And the error was there specially when we were trying to send DataSet and Date objects. We thought there is different serialization in both the frameworks which is the cause of issue. Well, we could able to achieve it as we converted date in string and DataSet in XML.&lt;br /&gt;Later we could able to find out there is &lt;a href="http://support.microsoft.com/kb/907262"&gt;hotfix &lt;/a&gt;available to handle this.&lt;br /&gt;&lt;br /&gt;The URL of the hotfix is&lt;br /&gt;&lt;a href="http://support.microsoft.com/kb/907262"&gt;http://support.microsoft.com/kb/907262&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-5900763497924334084?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/5900763497924334084/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2007/01/exception-when-trying-to-transfer-data.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/5900763497924334084'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/5900763497924334084'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2007/01/exception-when-trying-to-transfer-data.html' title='Exception when trying to transfer data between .NET Framework 2.0 and 1.1'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-2115866539777433102</id><published>2007-01-24T09:48:00.001Z</published><updated>2007-01-25T11:28:40.790Z</updated><title type='text'>Constructors in c#</title><content type='html'>There are two types of constructors in C#&lt;br /&gt;instance constructor or non-static constructor&lt;br /&gt;Class constructor (.cctor) or static constructor&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Instance constructor is used to create an instance of the class by providing new keyword. It can take parameters (parameterized constructor). The access modifier of the instance constructor has to be public and there should not be any return type.&lt;br /&gt;&lt;br /&gt;Static constructor is used to initialize static members of the class and is called when the class is referenced first time. Static constructor does not take any parameters and it does not have any access modifiers. From static constructor you cannot access non-static members.&lt;br /&gt;&lt;br /&gt;As I said above, static constructor is used to initialize static members. It is used when we would like to initialize static members depending on some condition, and that condition can be kept in static constructor. This cannot be achieved if we initialize the static members at time of declaration. The static constructor of the class gets executed first whenever you try calling any static member or creating instance of the class.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-2115866539777433102?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/2115866539777433102/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2007/01/constructors-in-c.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/2115866539777433102'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/2115866539777433102'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2007/01/constructors-in-c.html' title='Constructors in c#'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-6610190832957443552</id><published>2006-12-12T20:36:00.000Z</published><updated>2006-12-12T20:45:26.566Z</updated><title type='text'>How to convert Image in Binary Stream/Byte array</title><content type='html'>Following code explains how to get an image from a website as stream and convert it to byte array. Then from byte array to System.Drawing.Image.&lt;br /&gt;&lt;br /&gt;The important thing to notice is, when we get stream from web, it gives error in getting length of the stream. The helper method gets the length and convert the stream to byte array.&lt;br /&gt;&lt;br /&gt;Following is the code:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;private void buttonProcess_Click(object sender, EventArgs e)&lt;br /&gt;{&lt;br /&gt;string url = @"http://localhost:1137/WebSiteImage/TestImage.jpg";&lt;br /&gt;HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);&lt;br /&gt;HttpWebResponse response = (HttpWebResponse)request.GetResponse();&lt;br /&gt;byte[] byteData;&lt;br /&gt;using (Stream stream = response.GetResponseStream())&lt;br /&gt;{&lt;br /&gt;byteData = ReadStream(stream, 1000);&lt;br /&gt;}&lt;br /&gt;using (MemoryStream mStream = new MemoryStream(byteData))&lt;br /&gt;{&lt;br /&gt;Image image = Image.FromStream(mStream);&lt;br /&gt;this.pictureBoxTest.Image = image;&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;&lt;br /&gt;private byte[] ReadStream(Stream stream, int initialLength)&lt;br /&gt;{&lt;br /&gt;if (initialLength &lt; 1)&lt;br /&gt;{&lt;br /&gt;initialLength = 32768;&lt;br /&gt;}&lt;br /&gt;byte[] buffer = new byte[initialLength];&lt;br /&gt;int read = 0;&lt;br /&gt;int chunk;&lt;br /&gt;while ((chunk = stream.Read(buffer, read, buffer.Length - read)) &gt; 0)&lt;br /&gt;{&lt;br /&gt;read += chunk;&lt;br /&gt;if (read == buffer.Length)&lt;br /&gt;{&lt;br /&gt;int nextByte = stream.ReadByte();&lt;br /&gt;if (nextByte == -1)&lt;br /&gt;{&lt;br /&gt;return buffer;&lt;br /&gt;}&lt;br /&gt;byte[] newBuffer = new byte[buffer.Length * 2];&lt;br /&gt;Array.Copy(buffer, newBuffer, buffer.Length);&lt;br /&gt;newBuffer[read] = (byte)nextByte;&lt;br /&gt;buffer = newBuffer;&lt;br /&gt;read++;&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;byte[] bytes = new byte[read];&lt;br /&gt;Array.Copy(buffer, bytes, read);&lt;br /&gt;return bytes;&lt;br /&gt;}&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-6610190832957443552?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/6610190832957443552/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2006/12/how-to-convert-image-in-binary.html#comment-form' title='8 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/6610190832957443552'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/6610190832957443552'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2006/12/how-to-convert-image-in-binary.html' title='How to convert Image in Binary Stream/Byte array'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><thr:total>8</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-6270145881364260278</id><published>2006-11-23T14:45:00.000Z</published><updated>2006-11-23T14:48:16.118Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='Problem'/><title type='text'>.NET 2.0 SmtpClient and IIS</title><content type='html'>&lt;p&gt;&lt;br /&gt;In .NET 2.0 using System.Net.Mail to send mail we do following:&lt;br /&gt;&lt;br /&gt;Create object of MailMessage&lt;br /&gt;Provide value for&lt;br /&gt;From&lt;br /&gt;Sender&lt;br /&gt;ReplyTo&lt;br /&gt;Subject&lt;br /&gt;Body&lt;br /&gt;Create object of SmtpClient&lt;br /&gt;Assign Host&lt;br /&gt;Assign Port&lt;br /&gt;Call send() method&lt;br /&gt;&lt;br /&gt;Using above simple steps, one can sent email using .NET System.Net.Mail library.&lt;br /&gt;On other side, if using IIS as SMTP server, we need to have the same host address in allow list of SMTP server as we have provided in smtpClient object.&lt;br /&gt;&lt;br /&gt;I was working on sending mail and it my application was not able to send mail as I have defined Host as 127.0.0.1 in application and in SMTP server in allow list the IP was 10.1.1.9 (actual IP of my machine). And system was unable to send mail. All the time I was getting exception kinda saying “mailbox unavailable”&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-6270145881364260278?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/6270145881364260278/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2006/11/net-20-smtpclient-and-iis.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/6270145881364260278'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/6270145881364260278'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2006/11/net-20-smtpclient-and-iis.html' title='.NET 2.0 SmtpClient and IIS'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5221006467183643372.post-1117021100100487569</id><published>2006-11-21T21:37:00.000Z</published><updated>2006-11-21T21:52:29.770Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='DOT NET'/><title type='text'>Viewing Fusion log</title><content type='html'>Today I came across the situation where I need to resolve the dependency issue of assembly. I was referring an assembly remotely and that assembly was referring to some other assembly. I was getting error that assembly was not found but I could not able to figure out where I need to place the assembly file so that system can pickup. Then I came to know there is something known as Fusionlog. Fusionlog can help finding issues related to assembly bindings.&lt;br /&gt;You might need to configure some settings before you able to see the log. You can use fuslogvw.exe to view the log. To create/modify settings you need to do following:&lt;br /&gt;1. Create a folder where you would like to dump the log files. For example &lt;span style="color:#000099;"&gt;D:\MyFusionLogs&lt;/span&gt;&lt;br /&gt;2. Add a key in registry of type string named “&lt;strong&gt;LogPath&lt;/strong&gt;” at following location&lt;br /&gt;&lt;span style="color:#000099;"&gt;HKLM\SOFTWARE\Microsoft\Fusion\&lt;br /&gt;&lt;/span&gt;3. Set value of key “&lt;strong&gt;LogFailures&lt;/strong&gt;” to 1 at same location&lt;br /&gt;Doing this will enable writing fusion log and those logs can be viewed using fuslogvw.exe utility. This is a GUI and you need to run &lt;strong&gt;fuslogvw.exe&lt;/strong&gt; command on Visual Studio’s command prompt to get this.&lt;br /&gt;&lt;br /&gt;Fusion log can be used for debugging while you have issues related to assembly bindings.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5221006467183643372-1117021100100487569?l=visualarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://visualarch.blogspot.com/feeds/1117021100100487569/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://visualarch.blogspot.com/2006/11/viewing-fusion-log.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/1117021100100487569'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5221006467183643372/posts/default/1117021100100487569'/><link rel='alternate' type='text/html' href='http://visualarch.blogspot.com/2006/11/viewing-fusion-log.html' title='Viewing Fusion log'/><author><name>Ashish Basran</name><uri>http://www.blogger.com/profile/15356650518872845935</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_m6IH3KVGcj8/SedhA8PBA1I/AAAAAAAAB-U/SRvb1PORKXA/S220/DSC04941.JPG'/></author><thr:total>0</thr:total></entry></feed>
