<?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-12691002</id><updated>2012-02-16T01:29:07.364-08:00</updated><category term='Hard Disk'/><category term='IIS 7'/><category term='MOSS 2007'/><category term='SharePoint Portal Server 2003'/><category term='SQL'/><category term='SQL Server'/><category term='Search User'/><category term='Remote Blob Storage'/><category term='Atomic Disk'/><category term='Windows'/><category term='Log'/><category term='SSMS No Intellisense'/><category term='Visual Studio 2010'/><category term='ASP.NET MVC'/><category term='ASP.NET'/><category term='Administration'/><category term='SharePoint Profile DB'/><category term='Visual Studio 2008'/><category term='PowerShell'/><category term='License'/><category term='Google DART'/><category term='VSeWSS'/><category term='Services Management'/><category term='Classic ASP'/><category term='Virtual Machine'/><category term='Code Resources'/><category term='Solid State Drive'/><category term='jQuery'/><category term='Script'/><category term='HDD'/><category term='SharePoint Site DB'/><category term='WebMatrix'/><category term='SQL Server 2005'/><category term='Windows Services'/><category term='Memory Management'/><category term='SharePoint 2010'/><category term='IIS'/><category term='C#'/><category term='Active Direcory User'/><category term='Upgrade'/><category term='Tip'/><category term='Database'/><category term='Active Directory'/><category term='IIS 6'/><category term='HTML'/><category term='IE'/><category term='Update'/><category term='SQL Server 2008 R2'/><category term='Backup/Restore'/><category term='JavaScript'/><category term='Installation'/><title type='text'>By The Way...</title><subtitle type='html'>SharePoint 2010, SharePoint Foundation 2010, MOSS 2007, SharePoint Portal Server 2003, ASP.NET MVC, ASP.NET, SQL Server, JavaScript (Web Technologies), Content Management and Migration Specialist</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>64</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-12691002.post-1887685075127693266</id><published>2012-01-12T16:13:00.000-08:00</published><updated>2012-01-17T14:23:29.795-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Atomic Disk'/><category scheme='http://www.blogger.com/atom/ns#' term='HDD'/><category scheme='http://www.blogger.com/atom/ns#' term='Hard Disk'/><category scheme='http://www.blogger.com/atom/ns#' term='Solid State Drive'/><title type='text'>Future of Hard-Disk Drives?</title><content type='html'>All tape drives of the past and most recent high capacity drives used today after all are magnetic drives (which use "ferromagnets" to store bits). &lt;br /&gt;&lt;br /&gt;Then Solid State Drives (SSDs) gave a new direction of fastest drives. I think that's the future of hard-drives for another 5 years. &lt;br /&gt;&lt;br /&gt;However, what if we had a mixture of two? The real future of storage I think will be storage using atomic structures with an addressing scheme and algorithm of an SSD and a four-atom-wide wires. Instead of flip-flops, "antiferromagnets" will be used and result will be lightening fast drives with thousands of TB of storage... ?&lt;br /&gt;&lt;br /&gt;Read about flip-flop replacement:&lt;br /&gt;&lt;a href="http://futureoftech.msnbc.msn.com/_news/2012/01/12/10140571-tiny-hard-drive-stores-one-bit-of-data-with-just-12-atoms?chromedomain=cosmiclog"&gt;Tiny hard drive stores one byte of data with just 12 atoms&lt;/a&gt;&lt;br /&gt;About connecting-wire replacement:&lt;br /&gt;&lt;a href="http://futureoftech.msnbc.msn.com/_news/2012/01/10/10096888-four-atom-wide-wire-may-herald-tiny-computers"&gt;Four-atom-wide wire may herald tiny computers&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I am ready to buy that drive as soon as it becomes available ;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-1887685075127693266?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/1887685075127693266/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2012/01/future-of-hard-disk-drives.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/1887685075127693266'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/1887685075127693266'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2012/01/future-of-hard-disk-drives.html' title='Future of Hard-Disk Drives?'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-3728794478171769416</id><published>2012-01-07T14:44:00.001-08:00</published><updated>2012-01-07T14:44:53.254-08:00</updated><title type='text'>Microsoft Visual Studio Useful Shortcuts</title><content type='html'>&lt;p&gt;Here is a link where Visual Studio shortcuts are available which can make you efficient developer if you make good use of them…&lt;/p&gt; &lt;p&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/da5kh0wa.aspx"&gt;http://msdn.microsoft.com/en-us/library/da5kh0wa.aspx&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/12691002-3728794478171769416?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/3728794478171769416/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2012/01/microsoft-visual-studio-useful.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/3728794478171769416'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/3728794478171769416'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2012/01/microsoft-visual-studio-useful.html' title='Microsoft Visual Studio Useful Shortcuts'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-5060183473592040448</id><published>2011-12-15T13:34:00.000-08:00</published><updated>2011-12-15T13:34:26.658-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='IE'/><category scheme='http://www.blogger.com/atom/ns#' term='Update'/><category scheme='http://www.blogger.com/atom/ns#' term='Upgrade'/><title type='text'>IE 6 is ending in January 2012</title><content type='html'>So Microsoft has planned to give a new year present by forcefully pushing IE6 to the next world. They have decided to upgrade everyone's browser to maintain a minimum version.&lt;br /&gt;&lt;br /&gt;Read more here:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://windowsteamblog.com/ie/b/ie/archive/2011/12/15/ie-to-start-automatic-upgrades-across-windows-xp-windows-vista-and-windows-7.aspx"&gt;IE to Start Automatic Upgrades across Windows XP, Windows Vista, and Windows 7&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-5060183473592040448?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/5060183473592040448/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2011/12/ie-6-is-ending-in-january-2012.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/5060183473592040448'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/5060183473592040448'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2011/12/ie-6-is-ending-in-january-2012.html' title='IE 6 is ending in January 2012'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-7582235770157657888</id><published>2011-10-11T14:00:00.000-07:00</published><updated>2011-10-11T14:00:06.148-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SSMS No Intellisense'/><title type='text'>SQL Server Management Studio 2008 (SSMS) - Intellisense is not working</title><content type='html'>The SSMS intellisense wasn't working for me when we migrated our database server from 2005 to 2008. Here is what I used and its working for me pretty well.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.devart.com/dbforge/sql/sqlcomplete/download.html"&gt;http://www.devart.com/dbforge/sql/sqlcomplete/download.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Install the Express version of it and it does the job!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-7582235770157657888?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/7582235770157657888/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2011/10/sql-server-management-studio-2008-ssms.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/7582235770157657888'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/7582235770157657888'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2011/10/sql-server-management-studio-2008-ssms.html' title='SQL Server Management Studio 2008 (SSMS) - Intellisense is not working'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-4822047935936439084</id><published>2011-10-10T12:47:00.000-07:00</published><updated>2011-10-10T12:47:34.838-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Google DART'/><title type='text'>Google DART - A Structured way of web programming</title><content type='html'>How often do you see a new programming language launched? Yes, its very rare.&lt;br /&gt;&lt;br /&gt;Google today has launched a new programming language called DART which seems similar to C/C++ and Java. &lt;br /&gt;&lt;br /&gt;Following up here: &lt;br /&gt;&lt;a href="http://news.cnet.com/8301-30685_3-20117924-264/google-debuts-dart-a-javascript-alternative/"&gt;Google Dart - A javascript alternative&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;and&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dartlang.org/"&gt;http://www.dartlang.org/&lt;br /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-4822047935936439084?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/4822047935936439084/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2011/10/google-dart-structured-way-of-web.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/4822047935936439084'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/4822047935936439084'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2011/10/google-dart-structured-way-of-web.html' title='Google DART - A Structured way of web programming'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-6030143337487770710</id><published>2011-10-10T11:48:00.000-07:00</published><updated>2011-10-10T11:48:10.003-07:00</updated><title type='text'>Microsoft Security Essentials and Google Chrome</title><content type='html'>Recently, Microsoft Security Essentials (MSSE) installed on my PC detected a "Password Stealer". I opted to delete the "password stealer". Then I tried to open my Chrome browser and BOOM, it crashed saying the file doesn't exist. I figured out that the "password stealer" deleted by MSSE was in fact Google Chrome.&lt;br /&gt;&lt;br /&gt;I reinstalled Chrome, but that won't run saying a permission error. Here is what I did to solve that:&lt;br /&gt;&lt;br /&gt;1. Go to: C:\Documents and Settings\&lt;your username here&gt;\Local Settings\Application Data\Google\Chrome\Application&lt;br /&gt;2. Run chrome_new.exe&lt;br /&gt;&lt;br /&gt;That's it, now run Chrome.exe, and you should be able to use Google Chrome again.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-6030143337487770710?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/6030143337487770710/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2011/10/microsoft-security-essentials-and.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/6030143337487770710'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/6030143337487770710'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2011/10/microsoft-security-essentials-and.html' title='Microsoft Security Essentials and Google Chrome'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-3038039282926704728</id><published>2011-06-01T16:52:00.000-07:00</published><updated>2011-06-01T16:52:17.550-07:00</updated><title type='text'>Quick Code Documentation</title><content type='html'>Documentation of Code seem the least "productive" task but it is important. I have always been adding comments in the code but until today, I couldn't find a "great" tool that could do more than just copying my comments and display in an auto-generated documentation.&lt;br /&gt;&lt;br /&gt;Then, here is what I found, an automated documentation generating tool:&lt;br /&gt;1. Download and install "Doxygen"&lt;br /&gt;http://www.stack.nl/~dimitri/doxygen/index.html&lt;br /&gt;&lt;br /&gt;2. Install GraphViz (open source majorly funded by AT&amp;T)&lt;br /&gt;http://www.graphviz.org/&lt;br /&gt;&lt;br /&gt;3. While generating the documentaion through "Doxygen", mention "Use dot tool from the GraphViz Package" option if you are on the Wizard &gt; Diagrams tab.&lt;br /&gt;&lt;br /&gt;4. Create Folder in which you want to have the documentation generated and specify other preferences.&lt;br /&gt;&lt;br /&gt;5. You'll have to select "Run" tab and say "Run Doxygen" to generate to documentation.&lt;br /&gt;&lt;br /&gt;Open "Index.html" to start viewing the documentation!&lt;br /&gt;&lt;br /&gt;The tool is so good that it allows you to create Class Diagrams, Inheritence Diagram, UML Diagrams and more all by looking at the code.&lt;br /&gt;&lt;br /&gt;Have Fun!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-3038039282926704728?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/3038039282926704728/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2011/06/quick-code-documentation.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/3038039282926704728'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/3038039282926704728'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2011/06/quick-code-documentation.html' title='Quick Code Documentation'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-9027646208398631945</id><published>2011-04-27T15:16:00.000-07:00</published><updated>2011-04-27T15:16:31.510-07:00</updated><title type='text'>Cannot add a SimpleContent column to a table containing element columns or nested relations</title><content type='html'>Recently I ran into a problem while dealing with DataSets. I was adding a colum to an XSD through Visual Studio desinger and it kept failing with following error:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Cannot add a SimpleContent column to a table containing element columns or nested relations.&lt;/blockquote&gt;&lt;br /&gt;This is a known issue. However, the solution is not well known :)&lt;br /&gt;&lt;br /&gt;To be simple and streight forward, I tell you the solution which I tried and it worked,&lt;br /&gt;1. Note down the column names, datatypes and relationships of the table. &lt;br /&gt;2. Delete the table.&lt;br /&gt;3. Add new table and add columns to it.&lt;br /&gt;4. Redefine relationships.&lt;br /&gt;&lt;br /&gt;Best of luck.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-9027646208398631945?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/9027646208398631945/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2011/04/cannot-add-simplecontent-column-to.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/9027646208398631945'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/9027646208398631945'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2011/04/cannot-add-simplecontent-column-to.html' title='Cannot add a SimpleContent column to a table containing element columns or nested relations'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-7967576291764311350</id><published>2011-03-29T11:09:00.000-07:00</published><updated>2011-03-29T11:10:06.209-07:00</updated><title type='text'>Search All Tables in SQL Database for a Value</title><content type='html'>You can use the following query to perform your search. Just replace the "@myValue" with your value.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Declare @TN as varchar(200), @CN as varchar(200), @myValue varchar(30), @SQL as nvarchar(1000) &lt;br /&gt;, @SN as varchar(200), @Exact_Match bit &lt;br /&gt;&lt;br /&gt;Create Table #myTable (Table_Name varchar(200), Column_Name varchar(200), Number_Of_Rows int) &lt;br /&gt;&lt;br /&gt;-- Replace @myValue with the value you're searching for in the database &lt;br /&gt;Set @myValue = 'Value to Search'  &lt;br /&gt;-- 0 for LIKE match, 1 for exact match &lt;br /&gt;Set @Exact_Match = 1     &lt;br /&gt;&lt;br /&gt;Declare myCursor Cursor For &lt;br /&gt;Select T.Table_Name, C.Column_Name, T.Table_Schema &lt;br /&gt;From INFORMATION_SCHEMA.TABLES T Inner Join INFORMATION_SCHEMA.COLUMNS C  &lt;br /&gt;On T.Table_Schema = C.Table_Schema And T.Table_Name = C.Table_Name &lt;br /&gt;Where T.Table_Name &lt;&gt; 'dtproperties' And Table_Type = 'Base Table' &lt;br /&gt;And C.Data_Type In ('varchar','char','nvarchar','nchar','sql_variant') &lt;br /&gt;--And C.Data_Type In ('text','ntext') &lt;br /&gt;--And C.Data_Type In ('tinyint','int','bigint','numeric','decimal','money','float','smallint','real','smallmoney') &lt;br /&gt;--And C.Data_Type In ('datetime','dmalldatetime') &lt;br /&gt;-- Fields not searched: image, uniqueidentifier, bit, varbinary, binary, timestamp &lt;br /&gt;Open myCursor &lt;br /&gt;Fetch Next From myCursor Into @TN, @CN, @SN &lt;br /&gt;While @@Fetch_Status &lt;&gt; -1 &lt;br /&gt;Begin &lt;br /&gt;If @Exact_Match = 0 &lt;br /&gt;Set @SQL = N'Insert Into #myTable Select ''' + @SN + '.' + @TN + ''', ''' + @CN + ''', Count(*) From [' + @SN + '].[' + @TN + '] Where [' + @CN + '] Like ''%' + @myValue + '%''' &lt;br /&gt;Else &lt;br /&gt;Set @SQL = N'Insert Into #myTable Select ''' + @SN + '.' + @TN + ''', ''' + @CN + ''', Count(*) From [' + @SN + '].[' + @TN + '] Where [' + @CN + '] = ''' + @myValue + '''' &lt;br /&gt;--Print @SQL &lt;br /&gt;Exec sp_executesql @SQL  &lt;br /&gt;Fetch Next From myCursor Into @TN, @CN, @SN &lt;br /&gt;End &lt;br /&gt;Close myCursor &lt;br /&gt;Deallocate myCursor &lt;br /&gt;Select * From #myTable Where Number_Of_Rows &gt; 0 Order By Table_Name &lt;br /&gt;Drop Table #myTable &lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;Source: http://www.experts-exchange.com/Microsoft/Development/MS-SQL-Server/Q_23001597.html&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-7967576291764311350?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/7967576291764311350/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2011/03/search-all-tables-in-sql-database-for.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/7967576291764311350'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/7967576291764311350'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2011/03/search-all-tables-in-sql-database-for.html' title='Search All Tables in SQL Database for a Value'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-788106347431328742</id><published>2011-02-27T22:10:00.001-08:00</published><updated>2011-02-27T22:10:59.098-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint 2010'/><category scheme='http://www.blogger.com/atom/ns#' term='PowerShell'/><title type='text'>SharePoint 2010 PowerShell cmdlets</title><content type='html'>&lt;p&gt;&lt;a title="http://technet.microsoft.com/en-us/library/ee890108.aspx" href="http://technet.microsoft.com/en-us/library/ee890108.aspx"&gt;http://technet.microsoft.com/en-us/library/ee890108.aspx&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/12691002-788106347431328742?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/788106347431328742/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2011/02/sharepoint-2010-powershell-cmdlets.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/788106347431328742'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/788106347431328742'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2011/02/sharepoint-2010-powershell-cmdlets.html' title='SharePoint 2010 PowerShell cmdlets'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-3626140822433910584</id><published>2011-02-18T00:42:00.001-08:00</published><updated>2011-02-18T00:42:45.678-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Administration'/><category scheme='http://www.blogger.com/atom/ns#' term='Tip'/><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint 2010'/><title type='text'>Enabling/ Disabling Developer Dashboard in SharePoint 2010</title><content type='html'>&lt;p&gt;Developer dashboard is not only for Developers, the administrators can also take good advantage of it. They can do quantitative analysis if their site is slow then how much slow and when the users started raising complaints.&lt;/p&gt; &lt;p&gt;There are three in which this DD can remain:&lt;/p&gt; &lt;p&gt;1. OFF (which is by default)&lt;/p&gt; &lt;p&gt;2. ON - which turns it on all the time. It is generally not a good option as it causes performance overhead and turning it on would make all the Site Collection Admins to see it.&lt;/p&gt; &lt;p&gt;3. On Demand – It appears like a small button and site collection admins can turn it on any time they want. This is most feasible option. &lt;/p&gt; &lt;p&gt;To set it to OnDemand, execute following powershell cmdlets:&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;$dd = [Microsoft.SharePoint.Administration.SPWebService]::ContentService.DeveloperDashboardSettings&lt;/p&gt; &lt;p&gt;$dd.DisplayLevel = ‘OnDemand’&lt;/p&gt; &lt;p&gt;$dd.TraceEnabled = $true&lt;/p&gt; &lt;p&gt;$dd.Update()&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;This is enabled on the whole farm so you can go and look the the Right-Top of the site where a white colored button should appear. Upon clicking that, you should be able to see the developer dashboard.&lt;/p&gt; &lt;p&gt;Display Level can be:&lt;/p&gt; &lt;p&gt;$dd.DisplayLevel = ‘OnDemand’&lt;/p&gt; &lt;p&gt;$dd.DisplayLevel = ‘On’&lt;/p&gt; &lt;p&gt;OR&lt;/p&gt; &lt;p&gt;$dd.DisplayLevel = ‘Off’&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-3626140822433910584?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/3626140822433910584/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2011/02/enabling-disabling-developer-dashboard.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/3626140822433910584'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/3626140822433910584'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2011/02/enabling-disabling-developer-dashboard.html' title='Enabling/ Disabling Developer Dashboard in SharePoint 2010'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-4485582061955209727</id><published>2011-02-14T19:56:00.001-08:00</published><updated>2011-02-14T19:56:32.627-08:00</updated><title type='text'>The server was unable to process the request due to an internal error. For more information about the error, either turn on IncludeExceptionDetailInFaults (either from ServiceBehaviorAttribute or from the configuration behavior) on the server in order to send the exception information back to the client, or turn on tracing as per the Microsoft .NET Framework 3.0 SDK documentation and inspect the server trace logs.</title><content type='html'>&lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;While configuring the SharePoint 2010 for Forms Based Authentication, I encountered above error. To get the problem, I had to change “IncludeExceptionDetailInFaults” to true somewhere. But WHERE?&lt;/p&gt; &lt;p&gt;Here is what solved my problem:&lt;/p&gt; &lt;p&gt;Go to following path:&lt;/p&gt; &lt;p&gt;1. C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\WebServices\SecurityToken&lt;/p&gt; &lt;p&gt;2. Open Web.config there.&lt;/p&gt; &lt;p&gt;3. Add following in the “behaviors &amp;gt; serviceBehaviors &amp;gt; behavior” node.&lt;/p&gt; &lt;p&gt;&amp;lt;serviceDebug includeExceptionDetailInFaults="true"/&amp;gt; &lt;p&gt;Now try to login and see what error it gives, off to a next error &lt;img style="border-bottom-style: none; border-right-style: none; border-top-style: none; border-left-style: none" class="wlEmoticon wlEmoticon-smile" alt="Smile" src="http://lh3.ggpht.com/_Cf69iNjTAjQ/TVn5cCUZ67I/AAAAAAAAABg/Nws_2lgQarU/wlEmoticon-smile%5B2%5D.png?imgmax=800"&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-4485582061955209727?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/4485582061955209727/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2011/02/server-was-unable-to-process-request.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/4485582061955209727'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/4485582061955209727'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2011/02/server-was-unable-to-process-request.html' title='The server was unable to process the request due to an internal error. For more information about the error, either turn on IncludeExceptionDetailInFaults (either from ServiceBehaviorAttribute or from the configuration behavior) on the server in order to send the exception information back to the client, or turn on tracing as per the Microsoft .NET Framework 3.0 SDK documentation and inspect the server trace logs.'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_Cf69iNjTAjQ/TVn5cCUZ67I/AAAAAAAAABg/Nws_2lgQarU/s72-c/wlEmoticon-smile%5B2%5D.png?imgmax=800' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-4138478524269865989</id><published>2011-02-14T19:52:00.001-08:00</published><updated>2011-02-14T19:52:25.668-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tip'/><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint 2010'/><category scheme='http://www.blogger.com/atom/ns#' term='Log'/><title type='text'>SharePoint 2010 Error Log Viewer</title><content type='html'>&lt;p&gt;Perhaps I posted this before, but if not, I am posting again for my reference.&lt;/p&gt; &lt;p&gt;Use this tool to view SharePoint 2010 Error Logs:&lt;/p&gt; &lt;p&gt;&lt;a title="http://code.msdn.microsoft.com/ULSViewer/Release/ProjectReleases.aspx?ReleaseId=3308" href="http://code.msdn.microsoft.com/ULSViewer/Release/ProjectReleases.aspx?ReleaseId=3308"&gt;http://code.msdn.microsoft.com/ULSViewer/Release/ProjectReleases.aspx?ReleaseId=3308&lt;/a&gt;&lt;/p&gt; &lt;p&gt;SharePoint 2010 Log files are usually located here, sort by date and open the latest one in the ULS Viewer:&lt;/p&gt; &lt;p&gt;C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\LOGS&lt;/p&gt; &lt;p&gt;Create a “Filter” and select “Message” and enter “Error” in value. This should give you all error entries in the file and you can find out what is wrong.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-4138478524269865989?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/4138478524269865989/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2011/02/sharepoint-2010-error-log-viewer.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/4138478524269865989'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/4138478524269865989'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2011/02/sharepoint-2010-error-log-viewer.html' title='SharePoint 2010 Error Log Viewer'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-4629179374920724175</id><published>2011-02-11T18:21:00.001-08:00</published><updated>2011-02-16T16:05:24.840-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint Site DB'/><category scheme='http://www.blogger.com/atom/ns#' term='Remote Blob Storage'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server 2008 R2'/><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint 2010'/><title type='text'>Before Uninstalling the Filestream Provider for Remote Blob Storage for SharePoint 2010</title><content type='html'>&lt;p&gt;Before uninstalling the Filestream provider, make sure that you have content migrated back in the content database. To ensure this, just open “AllDocStreams” in the SharePoint Content database and look at the “Content” and “Rbsid” columns. the “Rbsid” columns should be NULL and “Content” column should be filled with data.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;If you uninstall the RBS provider before migrating the data back in the content database, all the data will become unavailable/ inaccessible.&lt;/strong&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Use following command to Migrate content back and forth from and to DB to Blob Store:&lt;br/&gt;&lt;br /&gt;$rbss.SetActiveProviderName(“”)&lt;br /&gt;$rbss.Migrate()&lt;br /&gt;&lt;br /&gt;&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/12691002-4629179374920724175?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/4629179374920724175/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2011/02/before-uninstalling-filestream-provider.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/4629179374920724175'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/4629179374920724175'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2011/02/before-uninstalling-filestream-provider.html' title='Before Uninstalling the Filestream Provider for Remote Blob Storage for SharePoint 2010'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-6608619375900191083</id><published>2011-02-11T18:13:00.001-08:00</published><updated>2011-02-11T18:14:23.856-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint Site DB'/><category scheme='http://www.blogger.com/atom/ns#' term='Remote Blob Storage'/><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint 2010'/><title type='text'>Enabling Remote Blob Storage on Content Database Again</title><content type='html'>&lt;p&gt;The scenario was, I installed the RBS with Filestream and uninstalled the RBS and realized that all the blobs are still out there on file system due to which the uninstall process failed. Now I tried to call $rbss.Migrate() in PS but it failed because the RBS was no longer installed!&lt;/p&gt; &lt;p&gt;I tried to call $rbss.Enable() but it failed with an error saying “SQL Remote Blob Storage should be installed on the web front end and content database before your can enable it” something like that.&lt;/p&gt; &lt;p&gt;I re-installed RBS and filestream provider but it didn’t let me enable it and kept giving error.&lt;/p&gt; &lt;p&gt;RESOLUTION and Lesson Learnt:&lt;/p&gt; &lt;p&gt;To resolve the error, I re-booted the server and it worked. It is important to note that after installing RBS, it is required to restart the windows if are failing to “Enable” it on the content database.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-6608619375900191083?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/6608619375900191083/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2011/02/enabling-remote-blob-storage-on-content.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/6608619375900191083'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/6608619375900191083'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2011/02/enabling-remote-blob-storage-on-content.html' title='Enabling Remote Blob Storage on Content Database Again'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-9183107412216833122</id><published>2011-02-09T18:55:00.001-08:00</published><updated>2011-02-11T11:16:57.810-08:00</updated><title type='text'>SharePoint Remote Blob Store with FILESTREAM Provider</title><content type='html'>&lt;p&gt;To provision a Remote Blob Storage with FILESTREAM Provider provided by Microsoft, you have to follow instructions in this article:&lt;/p&gt; &lt;p&gt;&lt;a title="http://technet.microsoft.com/en-us/library/ee663474.aspx" href="http://technet.microsoft.com/en-us/library/ee663474.aspx"&gt;http://technet.microsoft.com/en-us/library/ee663474.aspx&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Things to NOTE:&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;1. For me, the tables with prefix mssqlrbs in the content database somehow didn’t appear by running the following command so I had to use wizard to create those tables in the content database instead of following command:&lt;/p&gt;&lt;pre&gt;msiexec /qn /lvx* rbs_install_log.txt /i RBS_X64.msi TRUSTSERVERCERTIFICATE=true FILEGROUP=PRIMARY DBNAME="&lt;em&gt;&amp;lt;ContentDbName&amp;gt;&lt;/em&gt;" DBINSTANCE="&lt;em&gt;&amp;lt;DBInstanceName&amp;gt;&lt;/em&gt;" FILESTREAMFILEGROUP=RBSFilestreamProvider FILESTREAMSTORENAME=FilestreamProvider_1&lt;/pre&gt;&lt;br /&gt;&lt;p&gt;Where: &lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;em&gt;&amp;lt;ContentDbName&amp;gt;&lt;/em&gt; is the database name. &lt;br /&gt;&lt;li&gt;&lt;em&gt;&amp;lt;DBInstanceName&amp;gt;&lt;/em&gt; is the SQL Server instance name.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;p&gt;2. To Migrate all the data from Database to newly provisioned Blob Store, just execute following cmdlets in SharePoint Powershell:&lt;/p&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;p&gt;$cdb = Get-SPContentDatabase -WebApplication &amp;lt;&lt;a href="http://SiteName"&gt;http://SiteName&lt;/a&gt;&amp;gt;&lt;br&gt;$rbss = $cdb.RemoteBlobStorageSettings&lt;br&gt;$rbss.SetActiveProviderName($rbss.GetProviderNames()[0])&lt;br&gt;$rbss.Migrate()&lt;/p&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;p&gt;To reverse the process, execute following:&lt;/p&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;p&gt;$rbss.SetActiveProviderName(“”)&lt;br&gt;$rbss.Migrate()&lt;/p&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;p&gt;Upon running 1st Migrate Command, notice that in the “AllDocStreams” table in content database, the content is removed from the “Content” column and “Rbsid” is populated with IDs of content on file system. When we set the “active provider” back to none and then run the migrate command, the Rbsid column is emptied and “Content” column is populated with content.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;3. FILESTREAM Provider Limitations: It doesn’t allow you to use anything other than local disk space. To use any other network storage, you have to write your own provider. Go to &lt;a href="http://sqlrbs.codeplex.com"&gt;http://sqlrbs.codeplex.com&lt;/a&gt; to get a basic version of custom RBS provider. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;4. The SQLRemoteBlobs.dll path should be following after the installation of RBS: C:\Windows\assembly\GAC_MSIL\Microsoft.Data.SqlRemoteBlobs\10.50.0.0__89845dcd8080cc91\Microsoft.Data.SqlRemoteBlobs.dll &lt;/p&gt;&lt;br /&gt;&lt;p&gt;5. Must read following before customizing it (Specifications):&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/cc905212(v=SQL.100).aspx" href="http://msdn.microsoft.com/en-us/library/cc905212(v=SQL.100).aspx"&gt;http://msdn.microsoft.com/en-us/library/cc905212(v=SQL.100).aspx&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;6. Garbage Collection:&lt;/strong&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;a title="http://www.sqlskills.com/BLOGS/PAUL/post/FILESTREAM-garbage-collection.aspx" href="http://www.sqlskills.com/BLOGS/PAUL/post/FILESTREAM-garbage-collection.aspx"&gt;http://www.sqlskills.com/BLOGS/PAUL/post/FILESTREAM-garbage-collection.aspx&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;a title="http://technet.microsoft.com/en-us/library/ff943566.aspx" href="http://technet.microsoft.com/en-us/library/ff943566.aspx"&gt;http://technet.microsoft.com/en-us/library/ff943566.aspx&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;C:\Program Files\Microsoft SQL Remote Blob Storage 10.50\Maintainer&amp;gt;Microsoft.Data.SqlRemoteBlobs.Maintainer.exe -ConnectionStringName RBSMaintainerConnection -Operation GarbageCollection -GarbageCollectionPhases r&lt;/p&gt;&lt;br /&gt;&lt;p&gt;With above command, the table “rbs_internal_blobs” is cleaned up. But the duplicated resources are not yet deleted from file system.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-9183107412216833122?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/9183107412216833122/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2011/02/sharepoint-remote-blob-store-with.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/9183107412216833122'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/9183107412216833122'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2011/02/sharepoint-remote-blob-store-with.html' title='SharePoint Remote Blob Store with FILESTREAM Provider'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-3803374166647146216</id><published>2011-01-18T11:09:00.001-08:00</published><updated>2011-01-18T11:09:14.252-08:00</updated><title type='text'>SharePoint 2010: Specified value is not supported for the parameter</title><content type='html'>&lt;p&gt;Make sure AD is accessible. If you are not connected to domain directly, make sure you have VPN connected.&lt;/p&gt; &lt;p&gt;Hope this helps…&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-3803374166647146216?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/3803374166647146216/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2011/01/sharepoint-2010-specified-value-is-not.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/3803374166647146216'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/3803374166647146216'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2011/01/sharepoint-2010-specified-value-is-not.html' title='SharePoint 2010: Specified value is not supported for the parameter'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-8433169493459951310</id><published>2011-01-15T16:58:00.001-08:00</published><updated>2011-01-15T16:58:23.365-08:00</updated><title type='text'>The local farm is not accessible. Cmdlets with FeatureDependencyId are not registered.</title><content type='html'>&lt;p&gt;Try following:&lt;/p&gt; &lt;p&gt;- Right click powershell and “Run as Administrator”. This worked for me because my user already had dbo rights to SharePoint_Config database.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-8433169493459951310?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/8433169493459951310/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2011/01/local-farm-is-not-accessible-cmdlets.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/8433169493459951310'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/8433169493459951310'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2011/01/local-farm-is-not-accessible-cmdlets.html' title='The local farm is not accessible. Cmdlets with FeatureDependencyId are not registered.'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-2023742535297052826</id><published>2011-01-14T17:50:00.001-08:00</published><updated>2011-01-14T17:50:58.379-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tip'/><category scheme='http://www.blogger.com/atom/ns#' term='License'/><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint 2010'/><title type='text'>SharePoint 2010  - Upgrade License from Trial</title><content type='html'>&lt;p&gt;Go to Central Administration&amp;gt;Upgrade and Migration&amp;gt;Convert License Type&amp;gt; check the current license under Current License. Enter new key to upgrade to new license type.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-2023742535297052826?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/2023742535297052826/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2011/01/sharepoint-2010-upgrade-license-from.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/2023742535297052826'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/2023742535297052826'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2011/01/sharepoint-2010-upgrade-license-from.html' title='SharePoint 2010  - Upgrade License from Trial'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-683306481915182813</id><published>2011-01-14T12:17:00.001-08:00</published><updated>2011-01-14T12:17:11.364-08:00</updated><title type='text'>Windows Server 2008 R2 and VPN before logon</title><content type='html'>&lt;p&gt;At first, I thought I cannot connect VPN before logging in to Windows Server 2008 R2. But then I figured out that there are a couple of things one must do to use the dial-up connection before login.&lt;/p&gt; &lt;p&gt;1. Create a VPN connection and during connection setup, make sure you have selected “Allow other people to use this connection”.&lt;/p&gt; &lt;p&gt;2. After log-off from current user, hit “Switch User” button and look at the Right Bottom of the screen where you should see a button. Click that and it will ask you VPN credentials. Enter credentials and that’s it! You are in!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-683306481915182813?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/683306481915182813/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2011/01/windows-server-2008-r2-and-vpn-before.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/683306481915182813'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/683306481915182813'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2011/01/windows-server-2008-r2-and-vpn-before.html' title='Windows Server 2008 R2 and VPN before logon'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-7052720520730519850</id><published>2011-01-13T17:03:00.001-08:00</published><updated>2011-01-13T17:03:09.241-08:00</updated><title type='text'>Windows Server 2008 on Dell L501X and WiFi</title><content type='html'>&lt;p&gt;To install and enable WiFi on Windows Server 2008 on Dell Studio L501X, I had to follow the steps below:&lt;/p&gt;  &lt;p&gt;1. Go to&amp;#160; Start &amp;gt; Administrative Tools &amp;gt; Server Manager…&lt;/p&gt;  &lt;p&gt;2. In the Feature Summary, click Add Feature, and check “Wireless LAN Service&amp;quot; and Install it.&lt;/p&gt;  &lt;p&gt;3. Download WiFi driver from Dell’s site OR locate it on your “resource disk” comes with the laptop. Mine was “R273603” driver for the adaptor.&lt;/p&gt;  &lt;p&gt;4. Well, running the driver package won’t install it, so just let it extract it to “c:\dell\drivers\R273603” folder (or your driver name folder). &lt;/p&gt;  &lt;p&gt;5. Now go in “c:\dell\drivers\R273603\drivers\” folder and execute “DPinst64.exe”.&lt;/p&gt;  &lt;p&gt;6. RESTART the system and should be all set!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-7052720520730519850?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/7052720520730519850/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2011/01/windows-server-2008-on-dell-l501x-and.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/7052720520730519850'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/7052720520730519850'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2011/01/windows-server-2008-on-dell-l501x-and.html' title='Windows Server 2008 on Dell L501X and WiFi'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-5631812263237142209</id><published>2010-12-23T20:43:00.001-08:00</published><updated>2010-12-23T20:46:31.668-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tip'/><category scheme='http://www.blogger.com/atom/ns#' term='Database'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server 2005'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL'/><title type='text'>Find Column in Database - SQL Server</title><content type='html'>&lt;p&gt;Use the following query to find column in your database. Change “yourdbname” and “%ColumnNameToSearch%” column name accordingly.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;font face="Calibri"&gt;Use &lt;strong&gt;yourdbname&lt;/strong&gt;        &lt;br /&gt;GO        &lt;br /&gt;SELECT t.name AS table_name,        &lt;br /&gt;SCHEMA_NAME(schema_id) AS schema_name,        &lt;br /&gt;c.name AS column_name        &lt;br /&gt;FROM sys.tables AS t        &lt;br /&gt;INNER JOIN sys.columns c ON t.OBJECT_ID = c.OBJECT_ID        &lt;br /&gt;WHERE c.name LIKE &lt;strong&gt;'%ColumnNameToSearch%'&lt;/strong&gt;        &lt;br /&gt;ORDER BY schema_name, table_name;&lt;/font&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&lt;a href="http://blog.sqlauthority.com/2008/08/06/sql-server-query-to-find-column-from-all-tables-of-database/" target="_blank"&gt;Thanks to Pinaldave&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/12691002-5631812263237142209?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/5631812263237142209/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2010/12/find-column-in-database-sql-server.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/5631812263237142209'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/5631812263237142209'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2010/12/find-column-in-database-sql-server.html' title='Find Column in Database - SQL Server'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-8612638157704495070</id><published>2010-12-22T23:15:00.001-08:00</published><updated>2010-12-22T23:39:31.933-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Active Direcory User'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.NET MVC'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><category scheme='http://www.blogger.com/atom/ns#' term='Active Directory'/><title type='text'>Enumerating Active Directory object properties using C#</title><content type='html'>&lt;p&gt;I had to look up for a properties in Active Directory against my login. Since I didn’t even know the name of properties, I had to enumerate through them. Here is the code.&lt;/p&gt;  &lt;p&gt;1. Create C# application and add a configuration file “app.config”.&lt;/p&gt;  &lt;p&gt;2. Update it as follows:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;font size="2" face="Calibri"&gt;&amp;lt;configuration&amp;gt;       &lt;br /&gt;&amp;#160; &amp;lt;appSettings&amp;gt;        &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;add key=&amp;quot;ADDomain&amp;quot; value=&amp;quot;mydomain&amp;quot;/&amp;gt;        &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;add key=&amp;quot;username&amp;quot; value=&amp;quot;username&amp;quot;/&amp;gt;        &lt;br /&gt;&amp;#160; &amp;lt;/appSettings&amp;gt;        &lt;br /&gt;&amp;lt;/configuration&amp;gt;&lt;/font&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Update your “domain” and “username”.&lt;/p&gt;  &lt;p&gt;3. Add following code in Main method (usually in program.cs file)&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;font size="2" face="Calibri"&gt;try       &lt;br /&gt;{        &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; using (DirectoryEntry de = new DirectoryEntry(@&amp;quot;LDAP://&amp;quot; + ConfigurationSettings.AppSettings[&amp;quot;ADDomain&amp;quot;]))        &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; {        &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; using (DirectorySearcher adSearch = new DirectorySearcher(de))        &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {        &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; adSearch.Filter = &amp;quot;(sAMAccountName=&amp;quot; + ConfigurationSettings.AppSettings[&amp;quot;username&amp;quot;] + &amp;quot;)&amp;quot;;        &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; SearchResult sr = adSearch.FindOne();        &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; foreach (string prop in sr.Properties.PropertyNames)        &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {        &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Console.WriteLine(prop + &amp;quot; = &amp;quot; +sr.Properties[prop][0].ToString());        &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }        &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }        &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; }        &lt;br /&gt;}        &lt;br /&gt;catch (Exception ex)        &lt;br /&gt;{        &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; Console.WriteLine(ex.ToString());        &lt;br /&gt;}&lt;/font&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;NOTE: If your computer is on domain on which you are searching, you can get “current” domain by doing the following:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;font size="2" face="Calibri"&gt;DirectoryEntry deDomain = new DirectoryEntry();       &lt;br /&gt;deDomain.Name.Replace(&amp;quot;DC=&amp;quot;, &amp;quot;&amp;quot;)&lt;/font&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;So you won’t need to have the ADDomain config entry.&lt;/p&gt;  &lt;p&gt;PERFORMANCE NOTE: When you know the property name you need, specify it as follows before calling “find” method:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;font size="2" face="Calibri"&gt;adSearch.PropertiesToLoad.Add(&amp;quot;mail&amp;quot;);&lt;/font&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;This will only load the given property instead of loading the whole object.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-8612638157704495070?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/8612638157704495070/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2010/12/enumerating-active-directory-object.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/8612638157704495070'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/8612638157704495070'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2010/12/enumerating-active-directory-object.html' title='Enumerating Active Directory object properties using C#'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-2888422520662822389</id><published>2010-12-22T20:59:00.001-08:00</published><updated>2010-12-22T20:59:07.477-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Search User'/><category scheme='http://www.blogger.com/atom/ns#' term='Active Directory'/><title type='text'>Search User on Active Directory</title><content type='html'>&lt;p&gt;If you know first or last name or both, you can look it up in active directory for details (such as email/title/phone etc)&lt;/p&gt;  &lt;p&gt;Simply create a shortcut on your desktop and point it to following:&lt;/p&gt;  &lt;p&gt;%SystemRoot%\System32\rundll32.exe dsquery,OpenQueryWindow&lt;/p&gt;  &lt;p&gt;Now double click the shortcut and search!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-2888422520662822389?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/2888422520662822389/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2010/12/search-user-on-active-directory.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/2888422520662822389'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/2888422520662822389'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2010/12/search-user-on-active-directory.html' title='Search User on Active Directory'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-7610484416270354980</id><published>2010-12-22T17:36:00.001-08:00</published><updated>2010-12-22T17:36:30.412-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Script'/><category scheme='http://www.blogger.com/atom/ns#' term='IIS 6'/><category scheme='http://www.blogger.com/atom/ns#' term='IIS'/><category scheme='http://www.blogger.com/atom/ns#' term='IIS 7'/><title type='text'>Recycle Application Pool using Command Line</title><content type='html'>&lt;p&gt;IIS 6 uses different management scripts than IIS 7.&lt;/p&gt;  &lt;p&gt;This is important to note as all your target environments may not have same version of IIS.&lt;/p&gt;  &lt;p&gt;To recycle Application Pool in IIS 6, use the following script (in .bat file):&lt;/p&gt;  &lt;p&gt;@set apppool=SharePoint - testportal.mycompany.com80   &lt;br /&gt;cscript.exe %windir%\system32\iisapp.vbs /a &amp;quot;%apppool%&amp;quot; /r&lt;/p&gt;  &lt;p&gt;To recycle Application Pool in IIS 7, use the following:&lt;/p&gt;  &lt;p&gt;@set apppool=SharePoint - testportal.mycompany.com80   &lt;br /&gt;%windir%\system32\inetsrv\appcmd recycle apppool /apppool.name:&amp;quot;%apppool%&amp;quot;&lt;/p&gt;  &lt;p&gt;Make sure there is no space between “apppool.name:” and &amp;quot;%apppool%&amp;quot; otherwise you’ll receive an error.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-7610484416270354980?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/7610484416270354980/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2010/12/recycle-application-pool-using-command.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/7610484416270354980'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/7610484416270354980'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2010/12/recycle-application-pool-using-command.html' title='Recycle Application Pool using Command Line'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-4678968567087426352</id><published>2010-12-11T03:42:00.001-08:00</published><updated>2010-12-11T14:12:54.627-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='JavaScript'/><category scheme='http://www.blogger.com/atom/ns#' term='HTML'/><category scheme='http://www.blogger.com/atom/ns#' term='jQuery'/><title type='text'>Enumerate through all href using jQuery – Update all URLs on page using jQuery</title><content type='html'>&lt;p&gt;I first tried doing the following:&lt;/p&gt;  &lt;p&gt;$.each($('a'), function (index, value) {    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; alert($('a')[index]);     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; });&lt;/p&gt;  &lt;p&gt;Well, the above code works and gives you the absolute URLs, however, you can’t make any change to the anchor tag itself, which is why most likely you are enumerating. Therefore, I rewrote the code as follows:&lt;/p&gt;  &lt;p&gt;$('a').each(function () {    &lt;br /&gt;&amp;#160;&amp;#160; alert($(this).attr('href'));     &lt;br /&gt;});&lt;/p&gt;  &lt;p&gt;You can clearly see, this is indeed the right way to go!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-4678968567087426352?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/4678968567087426352/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2010/12/enumerate-through-all-href-using-jquery.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/4678968567087426352'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/4678968567087426352'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2010/12/enumerate-through-all-href-using-jquery.html' title='Enumerate through all href using jQuery – Update all URLs on page using jQuery'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-8504062517403621491</id><published>2010-12-09T22:01:00.001-08:00</published><updated>2010-12-11T02:53:09.990-08:00</updated><title type='text'>Using Delegation Control (such as AdditionalPageHead or SmallSearchInputBox) to add headers (scripts, styles etc) in MOSS 2007 sites</title><content type='html'>&lt;p&gt;This is an easy way to add control across all the sites/pages in MOSS (whether system or other templates provided by Microsoft).&lt;/p&gt;  &lt;p&gt;These can be used in your custom layouts/ Master Pages as well.&lt;/p&gt;  &lt;p&gt;More on &lt;a href="http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.webcontrols.delegatecontrol.aspx" target="_blank"&gt;DelegationControl is here&lt;/a&gt;. Note that WSS 3.0 and SharePoint 2010, both provide this useful control.&lt;/p&gt;  &lt;p&gt;Scenario: Let’s say you have to add a JavaScript on all the pages in all SharePoint sites. The easiest way to do it would be using DelegateControl. &lt;/p&gt;  &lt;p&gt;AdditionalPageHead is one of the controls provided by Microsoft in the SharePoint Master Pages. Let’s see how we can use this.&lt;/p&gt;  &lt;p&gt;1. Open Visual Studio 2008 and select “SharePoint” in the group (this should be there if you have VSeWSS installed) and create “Empty” project named “MyProject”.&lt;/p&gt;  &lt;p&gt;2. Add a class MyControl and inherit it from “System.Web.UI.WebControls.WebControl”.&lt;/p&gt;  &lt;p&gt;3. Implement the method “OnLoad” like the following:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;using System.Web.UI.WebControls;&lt;/p&gt;    &lt;p&gt;namespace MyProject      &lt;br /&gt;{       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; public class MyControl: WebControl       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; {       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; protected override void OnLoad(EventArgs e)       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; this.Page.ClientScript.RegisterClientScriptBlock(this.GetType(), &amp;quot;popup&amp;quot;, &amp;quot;&amp;lt;script&amp;gt;alert('hello man!');&amp;lt;/script&amp;gt;&amp;quot;);       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; }       &lt;br /&gt;}&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;4. Open the WSP View (if you don’t find it, go to “View&amp;gt;Other Windows&amp;gt;WSP View&amp;quot; in Visual Studio)&lt;/p&gt;  &lt;p&gt;5. Add new Feature there, and select “WebApplication” when it asks for its scope. You can change the scope later as well but since in this case we want the script be available all across the application we selected “WebApplication”. You can select “Web” if you need it only on one site and “Site” if you need it on only one site collection. If you select “Farm” it will be applied to all the applications and sites on the server.&lt;/p&gt;  &lt;p&gt;6. In the WSP View, open the featuer.xml and edit as follows:&lt;/p&gt;  &lt;p&gt;&amp;lt;Feature Id=&amp;quot;306e3fa9-8876-4778-9e01-17757c362f36&amp;quot; Title=&amp;quot;My Control Title&amp;quot; Scope=&amp;quot;WebApplication&amp;quot; Version=&amp;quot;12.0.0.0&amp;quot; Hidden=&amp;quot;FALSE&amp;quot; DefaultResourceFile=&amp;quot;core&amp;quot; xmlns=&amp;quot;&lt;a href="http://schemas.microsoft.com/sharepoint/&amp;quot;"&gt;http://schemas.microsoft.com/sharepoint/&amp;quot;&lt;/a&gt;&amp;gt;     &lt;br /&gt;&amp;#160; &amp;lt;ElementManifests&amp;gt;     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;ElementManifest Location=&amp;quot;Feature1\Elements.xml&amp;quot; /&amp;gt;     &lt;br /&gt;&amp;#160; &amp;lt;/ElementManifests&amp;gt;     &lt;br /&gt;&amp;lt;/Feature&amp;gt;&lt;/p&gt;  &lt;p&gt;(change the folder name as you see it in the “Solution Explorer” that contains Element1.xml. I renamed the elements file name)&lt;/p&gt;  &lt;p&gt;7. Edit the elements.xml file as follows:&lt;/p&gt;  &lt;p&gt;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;    &lt;br /&gt;&amp;lt;Elements Id=&amp;quot;b749dad4-3e1d-489b-a21b-bcab3258736b&amp;quot; xmlns=&amp;quot;&lt;a href="http://schemas.microsoft.com/sharepoint/&amp;quot;"&gt;http://schemas.microsoft.com/sharepoint/&amp;quot;&lt;/a&gt;&amp;gt;     &lt;br /&gt;&amp;#160; &amp;lt;Control Id=&amp;quot;AdditionalPageHead&amp;quot;     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; ControlAssembly=&amp;quot;MyProject, Version=1.0.0.0, Culture=neutral, PublicKeyToken=7a16335555e20c79&amp;quot;     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; ControlClass=&amp;quot;MyProject.MyControl&amp;quot; Sequence=&amp;quot;1&amp;quot;/&amp;gt;     &lt;br /&gt;&amp;lt;/Elements&amp;gt;&lt;/p&gt;  &lt;p&gt;- specify Sequence number under 100    &lt;br /&gt;- Use &lt;a href="http://reflector.red-gate.com/download.aspx?TreatAsUpdate=1" target="_blank"&gt;.NET Reflector&lt;/a&gt; to use get the assembly full name     &lt;br /&gt;- ControlClass should contain full “namespace.classname”&lt;/p&gt;  &lt;p&gt;8. Now open the web.app of the application you need to deploy this control to. It should be in C:\Inetpub\wwwroot\wss\VirtualDirectories folder.&lt;/p&gt;  &lt;p&gt;9. Add entry as below:&lt;/p&gt;  &lt;p&gt;&amp;lt;SafeControl Assembly=&amp;quot;MyProject, Version=1.0.0.0, Culture=neutral, PublicKeyToken=7a16335555e20c79&amp;quot; Namespace=&amp;quot;MyProject&amp;quot; TypeName=&amp;quot;MyControl&amp;quot; Safe=&amp;quot;True&amp;quot; /&amp;gt;&lt;/p&gt;  &lt;p&gt;- Make sure you give full assembly information in “Assembly” property    &lt;br /&gt;- Make sure Namespace ONLY contains namespace (and not the class name). You would say, of course, but Yea, a little care would save you some time.     &lt;br /&gt;- TypeName should contain ONLY the class name of control OR “*”. Adding asterisk would make all the controls in the assembly “safe” for the web application which some administrators may not like.&lt;/p&gt;  &lt;p&gt;Just right click solution and hit “Deploy”. Watch closely to ensure it compiled successfully. Because even if it fails, VSeWSS will deploy the old assemblies, if available.&lt;/p&gt;  &lt;p&gt;We are all set!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-8504062517403621491?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/8504062517403621491/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2010/12/using-delegationcontrol-such-as.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/8504062517403621491'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/8504062517403621491'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2010/12/using-delegationcontrol-such-as.html' title='Using Delegation Control (such as AdditionalPageHead or SmallSearchInputBox) to add headers (scripts, styles etc) in MOSS 2007 sites'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-5463977907204472597</id><published>2010-12-09T16:31:00.001-08:00</published><updated>2010-12-09T21:23:07.166-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tip'/><category scheme='http://www.blogger.com/atom/ns#' term='VSeWSS'/><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio 2008'/><category scheme='http://www.blogger.com/atom/ns#' term='MOSS 2007'/><title type='text'>Enable Debugging in the VSeWSS with Visual Studio 2008 and MOSS 2007</title><content type='html'>&lt;p&gt;Go to the application you are deploying your feature to, and open web.config and make following changes in the given sections (CustomeErrors, compilation and SafeMode sections are already there):&lt;/p&gt;  &lt;p&gt;&amp;lt;customErrors mode=&amp;quot;Off&amp;quot; /&amp;gt;    &lt;br /&gt;&amp;lt;compilation debug=&amp;quot;true&amp;quot;…     &lt;br /&gt;&amp;lt;SafeMode CallStack=&amp;quot;true&amp;quot;…&lt;/p&gt;  &lt;p&gt;Now press F5 and it should start debugging your projects/features/solutions created with VSeWSS.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-5463977907204472597?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/5463977907204472597/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2010/12/enable-debugging-in-vsewss-with-visual.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/5463977907204472597'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/5463977907204472597'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2010/12/enable-debugging-in-vsewss-with-visual.html' title='Enable Debugging in the VSeWSS with Visual Studio 2008 and MOSS 2007'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-3090274023622781264</id><published>2010-12-08T20:27:00.001-08:00</published><updated>2010-12-09T14:51:27.555-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tip'/><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio 2008'/><category scheme='http://www.blogger.com/atom/ns#' term='Installation'/><category scheme='http://www.blogger.com/atom/ns#' term='MOSS 2007'/><title type='text'>VSEWSS - The HTTP request is unauthorized with client authentication scheme 'Negotiate'. The authentication header received from the server was 'Negotiate,NTLM'."</title><content type='html'>&lt;p&gt;I faced this issue after installing VSeWSS (Visual Studio Extensions for Windows SharePoint Services) V1.3. O/S was Windows Server 2003 SP2 and I was trying to package my solution for SharePoint in Visual Studio 2008 when it kept failing by giving following errors:&lt;/p&gt;  &lt;p&gt;“The HTTP request is unauthorized with client authentication scheme 'Negotiate'. The authentication header received from the server was 'Negotiate,NTLM'.&amp;quot;&amp;quot;&lt;/p&gt;  &lt;p&gt;and (at times when I was trying different things) the following error:&lt;/p&gt;  &lt;p&gt;“The HTTP request is unauthorized with client authentication scheme 'Negotiate'. The authentication header received from the server was 'Negotiate,NTLM'.”&lt;/p&gt;  &lt;p&gt;Do the following to resolve, go to (try after each step in order): &lt;/p&gt;  &lt;p&gt;0. If you are using domain account, make sure you are connected to that domain otherwise user (against which the VSeWSS site application pool is running) will not be able to authenticate.&lt;/p&gt;  &lt;p&gt;1. Follow this article and make sure IIS enables NTAuthenticationProviders. &lt;a title="http://support.microsoft.com/kb/215383" href="http://support.microsoft.com/kb/215383"&gt;http://support.microsoft.com/kb/215383&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;2. Start Menu &amp;gt; Administrative Tools &amp;gt; Local Security Policy &amp;gt; (Expand) Local Policies &amp;gt; Security Options &amp;gt; (Look for) Network Security: LAN Manager Authentication Level &amp;gt; (set it to) Send LM &amp;amp; NTLM – use NTLMv2 Session security if negotiated. &amp;gt; Hit OK and restart the system.&lt;/p&gt;  &lt;p&gt;If above step doesn’t resolve the problem, make sure the following are true:&lt;/p&gt;  &lt;p&gt;1. Enable the Anonymous access to the VSeWSS site (which the VSeWSS setup creates during installation).&lt;/p&gt;  &lt;p&gt;2. Make sure you are able to access the VseWSS site.&lt;/p&gt;  &lt;p&gt;3. Make sure correct address is there in the registry.    &lt;br /&gt;Start &amp;gt; Run &amp;gt; regedit (hit enter)     &lt;br /&gt;Then select following key in registry:     &lt;br /&gt;HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Shared Tools\Web Server Extensions\12.0     &lt;br /&gt;Look for “VSeWSSServiceURL” key and make sure it is pointing to an accessible address of your service site.&lt;/p&gt;  &lt;p&gt;4. You may have to restart IIS, Visual Studio or computer depending upon what you change.&lt;/p&gt;  &lt;p&gt;Best of luck&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-3090274023622781264?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/3090274023622781264/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2010/12/vsewss-http-request-is-unauthorized.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/3090274023622781264'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/3090274023622781264'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2010/12/vsewss-http-request-is-unauthorized.html' title='VSEWSS - The HTTP request is unauthorized with client authentication scheme &amp;#39;Negotiate&amp;#39;. The authentication header received from the server was &amp;#39;Negotiate,NTLM&amp;#39;.&amp;quot;'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-7437895528014283676</id><published>2010-12-05T00:42:00.001-08:00</published><updated>2010-12-05T00:42:14.111-08:00</updated><title type='text'>Microsoft.com is blocked/ won’t open in my Windows Server 2003, all other websites are opening…</title><content type='html'>&lt;p&gt;I started my old VM to configure MOSS 2007 on it and to my surprise, the site &lt;a href="http://www.microsoft.com"&gt;www.microsoft.com&lt;/a&gt; was not opening. Rest of the websites were opening just fine. &lt;/p&gt;  &lt;p&gt;Here is the solution:&lt;/p&gt;  &lt;p&gt;Go to: &lt;/p&gt;  &lt;p&gt;Start &amp;gt; Run &amp;gt; (type) “services.msc” (which opens the services mmc) &amp;gt; Now stop the “DNS Client” service. Now open &lt;a href="http://www.microsoft.com"&gt;www.microsoft.com&lt;/a&gt; in browser and it should open just fine!&lt;/p&gt;  &lt;p&gt;Weird enough. :)&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-7437895528014283676?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/7437895528014283676/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2010/12/microsoftcom-is-blocked-wont-open-in-my.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/7437895528014283676'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/7437895528014283676'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2010/12/microsoftcom-is-blocked-wont-open-in-my.html' title='Microsoft.com is blocked/ won’t open in my Windows Server 2003, all other websites are opening…'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-5002216318017381612</id><published>2010-12-04T17:12:00.001-08:00</published><updated>2010-12-04T17:12:13.070-08:00</updated><title type='text'>401 Unauthorized Access Denied in MOSS 2007 when using hostname/ host header – Cannot Login on MOSS site</title><content type='html'>&lt;p&gt;For a short assignment, I had to jump back to MOSS 2007 and while setting up the MOSS environment on Windows Server 2003, I came across a showstopper which I didn’t face before. &lt;/p&gt;  &lt;p&gt;When create a site collection and specify a host header for it, it doesn’t let you login no matter what (Even if you are 100% sure that the credentials are correct). Anyways. I was lucky that others have faced the same problem and figured out that it was due to Service Pack on Windows Server 2003.&lt;/p&gt;  &lt;p&gt;Solution:&lt;/p&gt;  &lt;p&gt;Follow these steps*:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Click &lt;strong&gt;Start&lt;/strong&gt;, click &lt;strong&gt;Run&lt;/strong&gt;, type regedit, and then click &lt;strong&gt;OK&lt;/strong&gt;. &lt;/li&gt;    &lt;li&gt;In Registry Editor, locate and then click the following registry key:      &lt;p&gt;&lt;strong&gt;HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa&lt;/strong&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Right-click &lt;strong&gt;Lsa&lt;/strong&gt;, point to &lt;strong&gt;New&lt;/strong&gt;, and then click &lt;strong&gt;DWORD Value&lt;/strong&gt;. &lt;/li&gt;    &lt;li&gt;Type DisableLoopbackCheck, and then press ENTER. &lt;/li&gt;    &lt;li&gt;Right-click &lt;strong&gt;DisableLoopbackCheck&lt;/strong&gt;, and then click &lt;strong&gt;Modify&lt;/strong&gt;. &lt;/li&gt;    &lt;li&gt;In the &lt;strong&gt;Value data&lt;/strong&gt; box, type 1, and then click &lt;strong&gt;OK&lt;/strong&gt;. &lt;/li&gt;    &lt;li&gt;Quit Registry Editor, and then restart your computer.&lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;&lt;font size="1"&gt;*Thanks to &lt;a href="http://koenvosters.wordpress.com/2009/06/15/access-denied-when-using-hostname-search-and-site-on-moss-2007/" target="_blank"&gt;Koen&lt;/a&gt; who gave this simple solution.&lt;/font&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-5002216318017381612?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/5002216318017381612/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2010/12/401-unauthorized-access-denied-in-moss.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/5002216318017381612'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/5002216318017381612'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2010/12/401-unauthorized-access-denied-in-moss.html' title='401 Unauthorized Access Denied in MOSS 2007 when using hostname/ host header – Cannot Login on MOSS site'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-2977689898636853256</id><published>2010-11-30T16:15:00.001-08:00</published><updated>2010-11-30T16:15:51.082-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tip'/><category scheme='http://www.blogger.com/atom/ns#' term='Windows Services'/><category scheme='http://www.blogger.com/atom/ns#' term='Windows'/><category scheme='http://www.blogger.com/atom/ns#' term='Virtual Machine'/><category scheme='http://www.blogger.com/atom/ns#' term='Services Management'/><category scheme='http://www.blogger.com/atom/ns#' term='Memory Management'/><title type='text'>Windows Service Management for Better Performance! OR Call it Memory Management</title><content type='html'>&lt;p&gt;During development, its quite common to find out that SQL Server has eaten up all your RAM and other processes also keep ballooning.&lt;/p&gt;  &lt;p&gt;I tried simplest workaround for that and it worked well. Just write a couple of batch files to stop the services. You add/remove services as per your liking. Here is an example file that I sometime use when I am working on Microsoft Project, Microsoft Visio or have to run Virtual Machine (VM) or when I am not in the “coding mode”:&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;File1: StopServicesToRunVM.bat&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;net stop &amp;quot;SQL Full-text Filter Daemon Launcher (MSSQLSERVER)&amp;quot;   &lt;br /&gt;net stop &amp;quot;SQL Server (MSSQLSERVER)&amp;quot;    &lt;br /&gt;net stop &amp;quot;SQL Server Agent (MSSQLSERVER)&amp;quot;    &lt;br /&gt;net stop &amp;quot;SQL Server Analysis Services (MSSQLSERVER)&amp;quot;    &lt;br /&gt;net stop &amp;quot;SQL Server Browser&amp;quot;    &lt;br /&gt;net stop &amp;quot;SQL Server Integration Services 10.0&amp;quot;    &lt;br /&gt;net stop &amp;quot;SQL Server Reporting Services (MSSQLSERVER)&amp;quot;    &lt;br /&gt;net stop &amp;quot;SQL Server VSS Writer&amp;quot;    &lt;br /&gt;net stop &amp;quot;SharePoint 2010 Administration&amp;quot;    &lt;br /&gt;net stop &amp;quot;SharePoint 2010 Timer&amp;quot;    &lt;br /&gt;net stop &amp;quot;SharePoint 2010 Tracing&amp;quot;    &lt;br /&gt;net stop &amp;quot;SharePoint Server Search 14&amp;quot;    &lt;br /&gt;net stop &amp;quot;IIS Admin Service&amp;quot;    &lt;br /&gt;net stop &amp;quot;World Wide Web Publishing Service&amp;quot;    &lt;br /&gt;net stop &amp;quot;Microsoft FTP Service&amp;quot;    &lt;br /&gt;pause&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;File2: StartServicesToUseSharePoint.bat&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;net start &amp;quot;SQL Full-text Filter Daemon Launcher (MSSQLSERVER)&amp;quot;   &lt;br /&gt;net start &amp;quot;SQL Server (MSSQLSERVER)&amp;quot;    &lt;br /&gt;net start &amp;quot;SQL Server Agent (MSSQLSERVER)&amp;quot;    &lt;br /&gt;net start &amp;quot;SQL Server Analysis Services (MSSQLSERVER)&amp;quot;    &lt;br /&gt;net start &amp;quot;SQL Server Browser&amp;quot;    &lt;br /&gt;net start &amp;quot;SQL Server Integration Services 10.0&amp;quot;    &lt;br /&gt;net start &amp;quot;SQL Server Reporting Services (MSSQLSERVER)&amp;quot;    &lt;br /&gt;net start &amp;quot;SQL Server VSS Writer&amp;quot;    &lt;br /&gt;net start &amp;quot;SharePoint 2010 Administration&amp;quot;    &lt;br /&gt;net start &amp;quot;SharePoint 2010 Timer&amp;quot;    &lt;br /&gt;net start &amp;quot;SharePoint 2010 Tracing&amp;quot;    &lt;br /&gt;net start &amp;quot;SharePoint Server Search 14&amp;quot;    &lt;br /&gt;net start &amp;quot;IIS Admin Service&amp;quot;    &lt;br /&gt;net start &amp;quot;World Wide Web Publishing Service&amp;quot;    &lt;br /&gt;net start &amp;quot;Microsoft FTP Service&amp;quot;    &lt;br /&gt;pause&lt;/p&gt;  &lt;p&gt;So essentially, you write one file to stop all services and a counterpart to start them when you need to use those services.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Syntax:     &lt;br /&gt;&lt;/strong&gt;net start “{SERVICE NAME}”    &lt;br /&gt;(You can go to “RUN &amp;gt; Services.msc” and copy the service name)&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-2977689898636853256?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/2977689898636853256/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2010/11/windows-service-management-for-better.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/2977689898636853256'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/2977689898636853256'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2010/11/windows-service-management-for-better.html' title='Windows Service Management for Better Performance! OR Call it Memory Management'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-2527610598715544086</id><published>2010-11-30T15:50:00.001-08:00</published><updated>2010-11-30T17:02:43.097-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio 2010'/><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint 2010'/><category scheme='http://www.blogger.com/atom/ns#' term='Code Resources'/><title type='text'>SharePoint 2010 Getting Started–Hands-on Labs by Microsoft</title><content type='html'>&lt;p&gt;Here are some &lt;a href="http://www.microsoft.com/downloads/en/details.aspx?FamilyID=c010fc68-b47f-4db6-b8a8-ad4ba33a35c5&amp;amp;displaylang=en" target="_blank"&gt;Microsoft’s SharePoint 2010 Hands-on Labs&lt;/a&gt; to get started with the development. Very useful!&lt;/p&gt;  &lt;p&gt;Microsoft has worked really well to produce &lt;a href="http://sharepoint.microsoft.com/en-us/Pages/default.aspx" target="_blank"&gt;quality content&lt;/a&gt; to explain its products to all sorts of users. As more and more organizations have already adopted previous versions of SharePoint, there is plenty for content already published related to SharePoint 2010 for those who are jumping in now.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-2527610598715544086?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/2527610598715544086/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2010/11/sharepoint-2010-getting-startedhands-on.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/2527610598715544086'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/2527610598715544086'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2010/11/sharepoint-2010-getting-startedhands-on.html' title='SharePoint 2010 Getting Started–Hands-on Labs by Microsoft'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-4765999913964219816</id><published>2010-11-30T15:27:00.001-08:00</published><updated>2010-11-30T15:31:09.210-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WebMatrix'/><category scheme='http://www.blogger.com/atom/ns#' term='Classic ASP'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.NET MVC'/><title type='text'>ASP.NET WebMatrix–Beta 3 is out now</title><content type='html'>&lt;p&gt;Microsoft took first step way ahead when it launched ASP.NET 1.1 after “Classic ASP”. Then moved back by providing ASP.NET MVC flavor and now WebMatrix is another step forward to speed up the web development. &lt;/p&gt;  &lt;p&gt;It is a nice step to reduce costs of projects. I expect WebMatrix to have the most project templates as compared to templates for other flavors of ASP.NET.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;What is WebMatrix?*&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;WebMatrix is everything you need to build Web sites using Windows. It includes IIS Express (a development Web server), ASP.NET (a Web framework), and SQL Server Compact (an embedded database). It streamlines Web site development and makes it easy to start Web sites from popular open-source apps. The skills and code you develop with WebMatrix transition seamlessly to Visual Studio and SQL Server.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Who is it for?*&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;WebMatrix is for developers, students, or just about anyone who just wants a &lt;strong&gt;&lt;em&gt;&lt;u&gt;small and simple&lt;/u&gt;&lt;/em&gt;&lt;/strong&gt; way to build Web sites. Start coding, testing, and deploying your own Web sites without having to worry about configuring your own Web server, managing databases, or learning a lot of concepts. WebMatrix makes Web site development easy.&lt;/p&gt;  &lt;p&gt;&lt;img src="http://www.microsoft.com/web/media/webx-stack-gfx.png" /&gt;*&lt;/p&gt;  &lt;p&gt;&lt;font size="1"&gt;*Ref: &lt;/font&gt;&lt;a title="http://www.microsoft.com/web/webmatrix/" href="http://www.microsoft.com/web/webmatrix/"&gt;&lt;font size="1"&gt;http://www.microsoft.com/web/webmatrix/&lt;/font&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/12691002-4765999913964219816?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/4765999913964219816/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2010/11/aspnet-webmatrixbeta-3-is-out-now.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/4765999913964219816'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/4765999913964219816'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2010/11/aspnet-webmatrixbeta-3-is-out-now.html' title='ASP.NET WebMatrix–Beta 3 is out now'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-6090665304232620669</id><published>2009-12-21T10:23:00.001-08:00</published><updated>2009-12-21T10:23:28.080-08:00</updated><title type='text'>A nice read about Microsoft Windows Communication Foundation (WCF)</title><content type='html'>&lt;p&gt;Uploaded here is a nice and small book on WCF to get quick understanding of its architecture.&lt;/p&gt;  &lt;p&gt;&lt;a title="http://en.csharp-online.net/WCF_Essentials%E2%80%94What_Is_WCF%3F" href="http://en.csharp-online.net/WCF_Essentials%E2%80%94What_Is_WCF%3F"&gt;http://en.csharp-online.net/WCF_Essentials%E2%80%94What_Is_WCF%3F&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/12691002-6090665304232620669?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/6090665304232620669/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2009/12/nice-read-about-microsoft-windows.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/6090665304232620669'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/6090665304232620669'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2009/12/nice-read-about-microsoft-windows.html' title='A nice read about Microsoft Windows Communication Foundation (WCF)'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-6389570294572941241</id><published>2009-11-18T18:32:00.000-08:00</published><updated>2010-12-16T18:37:50.622-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='VSeWSS'/><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio 2008'/><category scheme='http://www.blogger.com/atom/ns#' term='MOSS 2007'/><title type='text'>Writing HttpHandler for SharePoint</title><content type='html'>&lt;p&gt;I am assuming that you already have WSS/MOSS installed on your system and you are using Visual Studio 2008.    &lt;br /&gt;&lt;br /&gt;1. Download and install VSeWSS (Visual Studio Extensions for WSS)     &lt;br /&gt;&lt;a href="http://www.microsoft.com/downloads/en/details.aspx?FamilyID=B2C0B628-5CAB-48C1-8CAE-C34C1CCBDC0A&amp;amp;displaylang=en"&gt;http://www.microsoft.com/downloads/en/details.aspx?FamilyID=B2C0B628-5CAB-48C1-8CAE-C34C1CCBDC0A&amp;amp;displaylang=en&lt;/a&gt;     &lt;br /&gt;&lt;br /&gt;2. Create new project and select SharePoint group on the left. Then select Empty from the templates (make sure SharePoint group of template is selected). Name the project &amp;quot;MyTest&amp;quot;. (that means, this is also going be your assembly name). Select &amp;quot;Partial Trust&amp;quot; when it asks.     &lt;br /&gt;&lt;br /&gt;3. Add new class, say &amp;quot;MyNewHandler&amp;quot;.     &lt;br /&gt;&lt;br /&gt;4. Inherit the new class from &amp;quot;System.Web.IHttpHandler&amp;quot;.     &lt;br /&gt;&lt;br /&gt;5. Right click on the &amp;quot;System.Web.IHttpHandler&amp;quot; and click &amp;quot;Implement&amp;quot;.     &lt;br /&gt;&lt;br /&gt;6. Modify your code to look like the following:&lt;/p&gt;&lt;pre&gt;public bool IsReusable&lt;br /&gt;{&lt;br /&gt;get { return false; }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;public void ProcessRequest(HttpContext context)&lt;br /&gt;{&lt;br /&gt;context.Response.Write(&amp;quot;test pdf&amp;quot;);    &lt;br /&gt;}&lt;/pre&gt;&lt;br /&gt;7. Right click your project and select &amp;quot;Deploy&amp;quot;. (If you have trouble deploying it, see following post: &lt;br /&gt;&lt;br /&gt;&lt;a href="http://tahiridrees.blogspot.com/2010/12/vsewss-http-request-is-unauthorized.html"&gt;http://tahiridrees.blogspot.com/2010/12/vsewss-http-request-is-unauthorized.html&lt;/a&gt;) &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;(If it gives error &amp;quot;VSeWSS Service Error: No SharePoint Site exists at the specified URL&amp;quot; then in VS, go to Project Properties and select &amp;quot;Debug&amp;quot; tab and enter your sharepoint site URL where it should deploy) &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;NOTE: The Deploy will copy your dll in the bin folder of the sharepoint application. &lt;br /&gt;&lt;br /&gt;8. Now open your sharepoint site's Web.Config file. Your site would be in the &amp;quot;C:\Inetpub\wwwroot\wss\VirtualDirectories&amp;quot; folder and Web.Config should be within it. Open it in Visual Studio. &lt;br /&gt;&lt;br /&gt;9. Look for &amp;lt;httpHandlers&amp;gt; section and add your handler in there like this: &lt;br /&gt;&lt;br /&gt;&amp;lt;add verb=&amp;quot;*&amp;quot; path=&amp;quot;*.ext&amp;quot; type=&amp;quot;MyTest.MyNewHandler, MyTest&amp;quot;/&amp;gt; &lt;br /&gt;&lt;br /&gt;10. Access your sharepoint site and write &amp;quot;&lt;a href="http://yourspsite/testingextension.ext"&gt;http://yourspsite/testingextension.ext&lt;/a&gt;&amp;quot; &lt;br /&gt;&lt;br /&gt;Note that the &amp;quot;ext&amp;quot; is the extension you entered while registering the handler in the sharepoint web app in step 9.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-6389570294572941241?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/6389570294572941241/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2010/12/writing-httphandler-for-sharepoint.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/6389570294572941241'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/6389570294572941241'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2010/12/writing-httphandler-for-sharepoint.html' title='Writing HttpHandler for SharePoint'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-3060031298870043404</id><published>2009-07-14T05:47:00.001-07:00</published><updated>2009-07-14T05:47:10.037-07:00</updated><title type='text'>Microsoft SharePoint 2010</title><content type='html'>&lt;p&gt;Take a look at the SharePoint 2010 features!&lt;/p&gt;  &lt;p&gt;&lt;a title="http://sharepoint.microsoft.com/2010/Sneak_Peek/Pages/default.aspx" href="http://sharepoint.microsoft.com/2010/Sneak_Peek/Pages/default.aspx"&gt;http://sharepoint.microsoft.com/2010/Sneak_Peek/Pages/default.aspx&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/12691002-3060031298870043404?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/3060031298870043404/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2009/07/microsoft-sharepoint-2010.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/3060031298870043404'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/3060031298870043404'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2009/07/microsoft-sharepoint-2010.html' title='Microsoft SharePoint 2010'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-9005197906794663102</id><published>2009-07-10T02:06:00.001-07:00</published><updated>2009-07-10T02:06:57.403-07:00</updated><title type='text'>Now Using Windows Live Writer to Write Blog</title><content type='html'>&lt;p&gt;Couldn’t find it easy to login every time on my blog and write an entry. On my laptop with Windows Vista, I never tried Windows Live Writer to create blogs quickly and easily until my colleague told me its usefulness. Now I will be able to write more regularly on what I have been doing in past few months and doing these days.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-9005197906794663102?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/9005197906794663102/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2009/07/now-using-windows-live-writer-to-write.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/9005197906794663102'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/9005197906794663102'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2009/07/now-using-windows-live-writer-to-write.html' title='Now Using Windows Live Writer to Write Blog'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-6649468351196419711</id><published>2009-03-04T08:57:00.000-08:00</published><updated>2009-03-04T09:16:35.842-08:00</updated><title type='text'>Unable to delete Shared Services Provider in SharePoint (MOSSS)</title><content type='html'>Sometimes The SSP you create in MOSS are not created properly. This can be result of interruption while SSP was being created or in result of bad migration from SPS03 or MCMS to MOSS.&lt;br /&gt;&lt;br /&gt;Symptoms: &lt;br /&gt;1. In left nav of SharePoint Central Administration, the name of your new SSP will not render rather, it will show up as text.&lt;br /&gt;2. If you try to delete that from the Central Admin, the Delete option is disabled.&lt;br /&gt;&lt;br /&gt;Resolution:&lt;br /&gt;You should delete the SSP using stsadm command line tool (NOTE: My SSP's name is "SSP" which is specified after "title" in command:&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\BIN&gt;stsa&lt;br /&gt;dm -o deletessp -title "SSP"&lt;/strong&gt;&lt;br /&gt;However, if you have any dependencies, you will have to delete them first or you will get following error when you try deleting it through command line tool:&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;An object in the SharePoint administrative framework, "SharedResourceProvider Na&lt;br /&gt;me=SSP Parent=SPFarm Name=SharePoint_Config", could not be deleted because other&lt;br /&gt; objects depend on it.  Update all of these dependants to point to null or diffe&lt;br /&gt;rent objects and retry this operation.  The dependant objects are as follows:&lt;br /&gt;SPWebApplication Name=SSP_MYSITE Parent=SPWebService&lt;br /&gt;SPWebApplication Name=SSP2 Parent=SPWebService&lt;br /&gt;SPWebApplication Name=super.company.com Parent=SPWebService&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;To get rid of the dependencies, you will have to use a trick:&lt;br /&gt;Open SQL Server Management Studio and execute following query to fetch the SSP dependencies:&lt;br /&gt;&lt;strong&gt;SELECT * from Objects WHERE Objects.name like '%SSP%'&lt;/strong&gt;&lt;br /&gt;Note that in the "Status" column, you'll find "3". Changing that back to default "0" does the job:&lt;br /&gt;&lt;strong&gt;UPDATE Objects SET Objects.Status=0 WHERE Objects.name='SSP'&lt;/strong&gt;&lt;br /&gt;Now again run the command:&lt;br /&gt;&lt;strong&gt;C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\BIN&gt;stsadm -o deletessp -title "SSP"&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Your currupt SSP is gone!&lt;br /&gt;&lt;br /&gt;Now you should be able to create a new SSP without problems.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-6649468351196419711?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/6649468351196419711/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2009/03/unable-to-delete-shared-services.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/6649468351196419711'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/6649468351196419711'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2009/03/unable-to-delete-shared-services.html' title='Unable to delete Shared Services Provider in SharePoint (MOSSS)'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-7692033207109578770</id><published>2009-01-28T17:13:00.001-08:00</published><updated>2009-02-23T15:14:48.789-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint Site DB'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server 2005'/><category scheme='http://www.blogger.com/atom/ns#' term='MOSS 2007'/><title type='text'>Switch MOSS Database Server / Move MOSS 2007 Site Database</title><content type='html'>If you want to move a MOSS 2007 databases over to a new DB server, do the following:&lt;br /&gt;&lt;br /&gt;1. Run SharePoint configuration wizard (on the web server)&lt;br /&gt;2. Disconnect from existing configuration database (on web server)&lt;br /&gt;3. Move the SITE database over to the new database server (on DB server)&lt;br /&gt;4. Run configuration wizard again and create a new farm (on web server)&lt;br /&gt;5. Give NEW database server and NEW configuration database (on web server)&lt;br /&gt;6. After configuration wizard is finished, create web application by going in the SharePoint Cetral Admin (on web server)&lt;br /&gt;7. Give it any web site name. Here you'll specify the New database server and OLD SITE db name. Hit OK. That's it. So only the combination of New DB server and Old Database name are important to specify in all this scenario.&lt;br /&gt;&lt;br /&gt;Now open web browser and open the site with same URL that it had been running before.&lt;br /&gt;&lt;br /&gt;You can also follow other processes like descriped on &lt;a href="http://blogs.msdn.com/ronalg/archive/2007/09/20/change-the-sql-server-in-a-moss-2007-wss-3-0-farm.aspx"&gt;"Ron Grzywacz's Blog"&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-7692033207109578770?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/7692033207109578770/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2009/01/blog-post.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/7692033207109578770'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/7692033207109578770'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2009/01/blog-post.html' title='Switch MOSS Database Server / Move MOSS 2007 Site Database'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-5335233112304218311</id><published>2008-12-22T02:22:00.000-08:00</published><updated>2008-12-22T02:48:34.283-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint Portal Server 2003'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server 2005'/><category scheme='http://www.blogger.com/atom/ns#' term='MOSS 2007'/><title type='text'>Error in Upgrade.log: The statistics 'SectionName' is dependent on column 'SectionName'</title><content type='html'>In Upgrade.log file generated after running upgrade by clicking "Begin Upgrade" in central administration of MOSS, I found following errors in log when upgrading from SharePoint 2003 to MOSS 2007. &lt;br /&gt;&lt;br /&gt;"[ProfileDatabaseSequence] [ERROR] [12/21/2008 3:07:31 AM]: Action 12.0.18.0 of Microsoft.SharePoint.Portal.Upgrade.ProfileDatabaseSequence failed.&lt;br /&gt;[ProfileDatabaseSequence] [ERROR] [12/21/2008 3:07:31 AM]: The statistics 'SectionName' is dependent on column 'SectionName'.&lt;br /&gt;ALTER TABLE DROP COLUMN SectionName failed because one or more objects access this column."&lt;br /&gt;&lt;br /&gt;I used following query to find table having column "SectionName" in the database, since i didnt know which table had it:&lt;br /&gt;     SELECT name FROM sysobjects WHERE id IN ( SELECT id FROM syscolumns WHERE name = 'SectionName')&lt;br /&gt;It returned "ProfileUI" table name.&lt;br /&gt;I expanded the "ProfileUI" table in SPS2003's Profile DB and then explanded "Statistics". There was the dependency caused error. Deleting the SectionName from Statistics of table removed its dependency.&lt;br /&gt;Now upgrade would run the "alter table drop column" command. It would have failed if I had dropped the column, so I didn't drop column manually, just removed the "SectionName" dependency.&lt;br /&gt; &lt;br /&gt;I was able to run upgrade successfully after cleaning up and reinstalling MOSS. All the sites are displayed for me to be upgraded one by one.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-5335233112304218311?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/5335233112304218311/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2008/12/error-in-upgradelog-statistics.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/5335233112304218311'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/5335233112304218311'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2008/12/error-in-upgradelog-statistics.html' title='Error in Upgrade.log: The statistics &apos;SectionName&apos; is dependent on column &apos;SectionName&apos;'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-2143618706658568936</id><published>2008-12-22T01:16:00.000-08:00</published><updated>2009-01-05T02:16:34.305-08:00</updated><title type='text'>Upgrade ERROR: The statistics 'SectionName' is dependent on column 'SectionName'.</title><content type='html'>Msg 5074, Level 16, State 1, Line 1&lt;br /&gt;The object 'IX_ProfileUI' is dependent on column 'SectionName'.&lt;br /&gt;Msg 5074, Level 16, State 1, Line 1&lt;br /&gt;The statistics 'SectionName' is dependent on column 'SectionName'.&lt;br /&gt;Msg 4922, Level 16, State 9, Line 1&lt;br /&gt;ALTER TABLE DROP COLUMN SectionName failed because one or more objects access this column.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-2143618706658568936?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/2143618706658568936/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2008/12/upgrade-error-statistics-sectionname-is.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/2143618706658568936'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/2143618706658568936'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2008/12/upgrade-error-statistics-sectionname-is.html' title='Upgrade ERROR: The statistics &apos;SectionName&apos; is dependent on column &apos;SectionName&apos;.'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-7863939066239884848</id><published>2008-12-21T20:52:00.000-08:00</published><updated>2008-12-22T00:31:03.042-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server'/><title type='text'>Find database table column</title><content type='html'>To find out a column you are not sure of where in your entire database, select database from the dropdown and run following query:&lt;br /&gt;&lt;br /&gt;SELECT name FROM sysobjects WHERE id IN ( SELECT id FROM syscolumns WHERE name = 'COLUMN_NAME'&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-7863939066239884848?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/7863939066239884848/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2008/12/find-database-table-column.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/7863939066239884848'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/7863939066239884848'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2008/12/find-database-table-column.html' title='Find database table column'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-1944077547225550678</id><published>2008-12-21T02:16:00.001-08:00</published><updated>2008-12-22T00:32:00.633-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint Portal Server 2003'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server 2005'/><title type='text'>Error "Cannot complete this action. Please try again."</title><content type='html'>"Error: The site http://server/personal/sitename cannot be opened. The site might be corrupted.  To fix this problem, delete the site and recreate it.&lt;br /&gt;12/19/2008 03:43:30 Microsoft.SharePoint.SPException: Cannot complete this action.&lt;br /&gt;Please try again. ---&gt; System.Runtime.InteropServices.COMException (0x80004005): Cannot complete this action.&lt;br /&gt;Please try again.&lt;br /&gt;   at Microsoft.SharePoint.Library.SPRequestInternalClass.OpenWeb..........."&lt;br /&gt;&lt;br /&gt;When accessing a personal site, you may face error above. For a scenario, when you don't have to care about "mysite" if they cause problem. You can do the following:&lt;br /&gt;Open SQL Server 2005 Management studio&lt;br /&gt;Open SITE database of SharePoint Portal Server 2003&lt;br /&gt;Open Sites table by right clicking on it and "Open Table".&lt;br /&gt;Look for the site you want to get rid of.&lt;br /&gt;Copy the "Id" column value of it.&lt;br /&gt;Open new query and select the SITE db to execute it on.&lt;br /&gt;Execute following queries:&lt;br /&gt;&lt;br /&gt;1. select * from userinfo where tp_login='&lt;domain\username&gt;' and tp_siteid='565d7b07-ed53-4352-834d-9f7572b96ccb'&lt;br /&gt;&lt;br /&gt;Make sure above query brings only your site. If it brings more than 1 sites, go back in Sites table and look for more information to provide in query to bring only your site. Since, in my case above query will brought only one result, execute query below to set it as deleted.&lt;br /&gt;&lt;br /&gt;update userinfo set tp_deleted='1' where tp_login='domain\sharepointadmin' and tp_siteid='565d7b07-ed53-4352-834d-9f7572b96ccb'&lt;br /&gt;&lt;br /&gt;Now even running prescan tool and upgrading to sharepoint 2007 should work without problems.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-1944077547225550678?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/1944077547225550678/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2008/12/error-cannot-complete-this-action.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/1944077547225550678'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/1944077547225550678'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2008/12/error-cannot-complete-this-action.html' title='Error &quot;Cannot complete this action. Please try again.&quot;'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-4615052027279820934</id><published>2008-12-20T17:16:00.000-08:00</published><updated>2008-12-22T00:34:46.014-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint Portal Server 2003'/><category scheme='http://www.blogger.com/atom/ns#' term='Backup/Restore'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server 2005'/><title type='text'>SharePoint 2003: Portal creation failed: The server principal "user" is not able to access the database "db" under the current security context</title><content type='html'>I tried to restore SharePoint 2003 portal on SQL Server 2005 and it failed with following error even though I granted db owner rights to the user:&lt;br /&gt;&lt;br /&gt;Portal creation failed System.Data.SqlClient.SqlException: The server principal "domain\sharepointadmin" is not able to access the database "ORG_SITE" under the current security context. at Microsoft.SharePoint.Portal.Data.a.c(SqlCommand A_0, Boolean A_1) at Microsoft.SharePoint.Portal.Data.a.b(SqlCommand A_0) at Microsoft.SharePoint.Portal.Topology.Database.d(a A_0, String A_1) at Microsoft.SharePoint.Portal.Topology.Database.a(String A_0, String A_1, String A_2, Boolean A_3) at Microsoft.SharePoint.Portal.Admin.c.b() at Microsoft.SharePoint.Portal.Admin.c.f()&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Investigation the issue, it ended up as a SQL server's security issue.&lt;br /&gt;Resolution:&lt;br /&gt;I granted the domain\sharepointadmin user sysadmin role on the SQL Server 2005 and problem was solved! It restored portal smoothly.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-4615052027279820934?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/4615052027279820934/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2008/12/sharepoint-2003-portal-creation-failed.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/4615052027279820934'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/4615052027279820934'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2008/12/sharepoint-2003-portal-creation-failed.html' title='SharePoint 2003: Portal creation failed: The server principal &quot;user&quot; is not able to access the database &quot;db&quot; under the current security context'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-7292295010644273225</id><published>2008-12-20T17:05:00.000-08:00</published><updated>2008-12-20T17:14:57.357-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint Site DB'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL'/><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint Profile DB'/><title type='text'>Rename SQL 2005 Database - Error: The database could not be exclusively locked to perform the operation.</title><content type='html'>During database restore, I tried to rename existing database in SQL Server 2005 by simply trying following command:&lt;br /&gt;ALTER DATABASE mydatabase MODIFY NAME = mydatabase_OLD&lt;br /&gt;&lt;br /&gt;But it didn't work and gave following error:&lt;br /&gt;"The database could not be exclusively locked to perform the operation."&lt;br /&gt;&lt;br /&gt;In order to fix, I had to set it to single user for a while, change the name and then set it back to multi-user.&lt;br /&gt;&lt;br /&gt;I had to execute following commands to make it work:&lt;br /&gt;&lt;br /&gt;ALTER DATABASE mydatabase SET SINGLE_USER WITH ROLLBACK IMMEDIATE &lt;br /&gt;GO&lt;br /&gt;ALTER DATABASE mydatabase MODIFY NAME = mydatabase_OLD&lt;br /&gt;GO&lt;br /&gt;ALTER DATABASE mydatabase_OLD SET MULTI_USER&lt;br /&gt;GO&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-7292295010644273225?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/7292295010644273225/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2008/12/rename-sql-2005-database-error-database.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/7292295010644273225'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/7292295010644273225'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2008/12/rename-sql-2005-database-error-database.html' title='Rename SQL 2005 Database - Error: The database could not be exclusively locked to perform the operation.'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-8525840193162596620</id><published>2008-03-18T05:04:00.001-07:00</published><updated>2008-12-20T18:49:21.035-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='IIS'/><category scheme='http://www.blogger.com/atom/ns#' term='MOSS 2007'/><title type='text'>Accessing Physical Page/Web Service in IIS Web Application within Virtual Directory of SharePoint Site</title><content type='html'>&lt;span xmlns=''&gt;&lt;p&gt;I created a web service in .NET and placed it in the "_layouts" folder and created Application in IIS. Somehow, the application pool of it was not the same as of SharePoint site's App Pool in which it was placed. It caused following error:&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;An error occurred loading a configuration file: Failed to start monitoring changes to "&amp;lt;your virtual directory here&amp;gt;" because access is denied.&lt;br /&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;Changing the App pool of the web application for the web service to the one SharePoint site had fixed the problem.&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-8525840193162596620?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/8525840193162596620/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2008/03/accessing-physical-pageweb-service-in.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/8525840193162596620'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/8525840193162596620'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2008/03/accessing-physical-pageweb-service-in.html' title='Accessing Physical Page/Web Service in IIS Web Application within Virtual Directory of SharePoint Site'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-7016869427517890135</id><published>2008-02-28T13:47:00.001-08:00</published><updated>2008-12-22T00:11:32.999-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MOSS 2007'/><title type='text'>Commands to Deactivate, Uninstall, Install and Activate Features in SharePoint (MOSS)</title><content type='html'>&lt;span xmlns=''&gt;&lt;p&gt;I created a batch file that every time I have to update my particular feature, it eases the job.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;One can create such file to speed up the development process:&lt;br /&gt;&lt;/p&gt;&lt;p&gt;My Installfeature.bat contents look like this:&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='font-family:Courier New; font-size:10pt'&gt;set folderpath = "C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\"&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='font-family:Courier New; font-size:10pt'&gt;%folderpath%BIN\stsadm -o deactivatefeature -name MyProject -url http://test.mysharepintsite.com&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='font-family:Courier New; font-size:10pt'&gt;%folderpath%BIN\stsadm -o uninstallfeature -name MyProject&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='font-family:Courier New; font-size:10pt'&gt;%folderpath%BIN\stsadm -o installfeature -name MyProject&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='font-family:Courier New; font-size:10pt'&gt;%folderpath%BIN\stsadm -o activatefeature -name MyProject -url http://test.mysharepintsite.com&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='font-family:Courier New; font-size:10pt'&gt;iisapp.vbs /a "DefaultAppPool" /r&lt;/span&gt;&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-7016869427517890135?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/7016869427517890135/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2008/02/commands-to-deactivate-uninstall.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/7016869427517890135'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/7016869427517890135'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2008/02/commands-to-deactivate-uninstall.html' title='Commands to Deactivate, Uninstall, Install and Activate Features in SharePoint (MOSS)'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-1839548003342245004</id><published>2008-02-28T13:39:00.001-08:00</published><updated>2008-02-28T13:39:59.872-08:00</updated><title type='text'>SharePoint (MOSS) Event Handlers using Content Type Deployed as Features</title><content type='html'>&lt;span xmlns=''&gt;&lt;p&gt;In my post earlier, I wrote how to create event handlers which get associated with all the lists/document libraries of specific types. You can change the elements.xml file as follows to create and register event handlers against it. Later you can associate the content type with any document library for example, to associate the event handler only to that particular library.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Elements.xml file contents would look like this:&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;lt;Elements xmlns="http://schemas.microsoft.com/sharepoint/"&amp;gt;&lt;br/&gt; &amp;lt;ContentType ID="0x010100B6507616196543198ED529CE8720311F" Name="MyContentType" Group="MyGroupForContentType" Description="Event handler enabled content type." Version="0"&amp;gt;&lt;br/&gt;   &amp;lt;XmlDocuments&amp;gt;&lt;br/&gt;      &amp;lt;XmlDocument NamespaceURI="http://schemas.microsoft.com/sharepoint/events"&amp;gt;&lt;br/&gt;        &amp;lt;spe:Receivers xmlns:spe="http://schemas.microsoft.com/sharepoint/events"&amp;gt;&lt;br/&gt;          &amp;lt;Receiver&amp;gt;&lt;br/&gt;            &amp;lt;Name&amp;gt;ItemDeleting&amp;lt;/Name&amp;gt;&lt;br/&gt;            &amp;lt;Type&amp;gt;ItemDeleting&amp;lt;/Type&amp;gt;&lt;br/&gt;            &amp;lt;SequenceNumber&amp;gt;2500&amp;lt;/SequenceNumber&amp;gt;&lt;br/&gt;            &amp;lt;Assembly&amp;gt;MyProject, Version=1.0.0.0, Culture=neutral, &lt;br /&gt;PublicKeyToken=456g1dh4314356c3&amp;lt;/Assembly&amp;gt;&lt;br/&gt;            &amp;lt;Class&amp;gt;MyProject.MyEventHandlerClass&amp;lt;/Class&amp;gt;&lt;br/&gt;            &amp;lt;Data&amp;gt;&lt;br/&gt;            &amp;lt;/Data&amp;gt;&lt;br/&gt;            &amp;lt;Filter&amp;gt;&lt;br/&gt;            &amp;lt;/Filter&amp;gt;&lt;br/&gt;          &amp;lt;/Receiver&amp;gt;&lt;br/&gt;        &amp;lt;/spe:Receivers&amp;gt;&lt;br/&gt;      &amp;lt;/XmlDocument&amp;gt;&lt;br/&gt;   &amp;lt;/XmlDocuments&amp;gt;&lt;br/&gt; &amp;lt;/ContentType&amp;gt;&lt;br/&gt;&amp;lt;/Elements&amp;gt;&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-1839548003342245004?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/1839548003342245004/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2008/02/sharepoint-moss-event-handlers-using.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/1839548003342245004'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/1839548003342245004'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2008/02/sharepoint-moss-event-handlers-using.html' title='SharePoint (MOSS) Event Handlers using Content Type Deployed as Features'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-6627242034415917788</id><published>2008-02-28T12:51:00.001-08:00</published><updated>2008-02-28T12:51:39.489-08:00</updated><title type='text'>Postbuild technique to perform various operations including adding assembly in Global Assembly Cache</title><content type='html'>&lt;span xmlns=''&gt;&lt;p&gt;Using the command line options for "Post-Build" events you can execute any type of DOS commands which could perform different operations.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Create/Open a project in Microsoft Visual Studio.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Add a new file "PostBuild.bat".&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Add following commands in it&lt;br /&gt;&lt;/p&gt;&lt;p&gt;In Project Properties, go to Build Events.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;In "Post-build Event Command Line" add following command to execute your file which is:&lt;br /&gt;&lt;/p&gt;&lt;p&gt;"$(ProjectDir)"postbuild.bat&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Postbuild.bat contents can be:&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='font-family:Courier New; font-size:10pt'&gt;rem -- set environment specific variables&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='font-family:Courier New; font-size:10pt'&gt;set projPath=C:\MyProject&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='font-family:Courier New; font-size:10pt'&gt;set pdbFilePath=d:\MyProject\bin\debug\Edwards.Moss.Web.Common.pdb&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='font-family:Courier New; font-size:10pt'&gt;set appPoolName="DefaultAppPool"&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt; &lt;/p&gt;&lt;p&gt;&lt;span style='font-family:Courier New; font-size:10pt'&gt;rem -- copy assembly and debug database&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='font-family:Courier New; font-size:10pt'&gt;"C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\Bin\gacutil.exe" /i %projPath%\bin\Debug\MyProject.dll /f&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='font-family:Courier New; font-size:10pt'&gt;copy %projPath%\bin\Debug\MyProject.pdb  "C:\WINDOWS\assembly\GAC_MSIL\MyProject\1.0.0.0__g530125dghad5ac3\MyProject.pdb"&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='font-family:Courier New; font-size:10pt'&gt;iisapp.vbs /a %appPoolName% /r&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-6627242034415917788?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/6627242034415917788/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2008/02/postbuild-technique-to-perform-various.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/6627242034415917788'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/6627242034415917788'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2008/02/postbuild-technique-to-perform-various.html' title='Postbuild technique to perform various operations including adding assembly in Global Assembly Cache'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-3736754312244492909</id><published>2008-02-28T08:19:00.000-08:00</published><updated>2009-01-05T03:15:32.165-08:00</updated><title type='text'>Adding Event Handlers for all Lists in SharePoint Using Features in WSS 3.0</title><content type='html'>&lt;p&gt;&lt;strong&gt;To add event handler to all document libraries in the site:&lt;br /&gt;&lt;/strong&gt;Create a Class Library project "EventHandlerProject" in Microsoft Visual Studio 2005.&lt;br /&gt;Add a class named "EventHandler".&lt;br /&gt;Inherit this class from "SPItemEventReceiver".&lt;br /&gt;Override the ItemDeleting method as follows:&lt;br /&gt;public override void ItemDeleting(SPItemEventProperties properties)&lt;br /&gt;{&lt;br /&gt;base.ItemDeleting(properties);&lt;br /&gt;properties.Cancel = true;&lt;br /&gt;properties.ErrorMessage = "It should work now. its already too late";&lt;br /&gt;}&lt;br /&gt;Compile the above project and add the assembly in cache.&lt;br /&gt;Create an elements.xml file and put the fillowing xml in it.&lt;br /&gt;&amp;lt;elements xmlns="http://schemas.microsoft.com/sharepoint/"&gt;&lt;br /&gt;&amp;lt;receivers listtemplateid="101"&gt;&lt;br /&gt;&amp;lt;receiver&gt;&lt;br /&gt;&amp;lt;name&gt;ItemDeleting&amp;lt;/name&gt;&lt;br /&gt;&amp;lt;type&gt;ItemDeleting&amp;lt;/type&gt;&lt;br /&gt;&amp;lt;sequencenumber&gt;400&amp;lt;/sequencenumber&gt;&lt;br /&gt;&amp;lt;assembly&gt;EventHandlerProject, Version=1.0.0.0, Culture=neutral, PublicKeyToken=a1901tr121134ect&amp;lt;/assembly&gt;&lt;br /&gt;&amp;lt;class&gt;EventHandlerProject.EventHandlerClassName&amp;lt;/class&gt;&lt;br /&gt;&amp;lt;data&gt;&amp;lt;/data&gt;&lt;br /&gt;&amp;lt;filter&gt;&amp;lt;/filter&gt;&lt;br /&gt;&amp;lt;/receiver&gt;&lt;br /&gt;&amp;lt;/receivers&gt;&lt;br /&gt;&amp;lt;/elements&gt;&lt;br /&gt;&lt;br /&gt;Create a feature.xml and put following XML in it.&lt;br /&gt;&amp;lt;feature scope="site" id="FBC1E9AD-741E-492a-84FB-491B7FCA1D79" title="Event Handler Feature" xmlns="http://schemas.microsoft.com/sharepoint/" description="My feature." hidden="false"&gt;&lt;br /&gt;&amp;lt;elementmanifests&gt;&lt;br /&gt;&amp;lt;elementmanifest location="Elements.xml" /&gt;&lt;br /&gt;&amp;lt;/elementmanifests&gt;&lt;br /&gt;&amp;lt;/feature&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-3736754312244492909?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/3736754312244492909/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2008/02/adding-event-handlers-for-all-lists-in.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/3736754312244492909'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/3736754312244492909'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2008/02/adding-event-handlers-for-all-lists-in.html' title='Adding Event Handlers for all Lists in SharePoint Using Features in WSS 3.0'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-520874028387711076</id><published>2008-02-18T08:43:00.000-08:00</published><updated>2009-02-17T13:01:24.122-08:00</updated><title type='text'>Writing and Using HttpModule</title><content type='html'>You can create and use HttpModule in both existing and new projects. Here I am going to create it in new project.&lt;br /&gt;Open VS2005 and create a class library project. Add a new class called MyModule. Add following code in it.&lt;br /&gt;&lt;br /&gt;namespace MyNamespace&lt;br /&gt;{&lt;br /&gt;public class MyModule : IHttpModule&lt;br /&gt;{&lt;br /&gt;public MyModule()&lt;br /&gt;{&lt;br /&gt;}&lt;br /&gt;///&lt;br /&gt;/// Required by the interface IHttpModule&lt;br /&gt;///&lt;br /&gt;public void Dispose()&lt;br /&gt;{&lt;br /&gt;}&lt;br /&gt;///&lt;br /&gt;/// Required by the interface IHttpModule&lt;br /&gt;/// I also wire up the Begin Request event.&lt;br /&gt;///&lt;br /&gt;public void Init(System.Web.HttpApplication Appl)&lt;br /&gt;{&lt;br /&gt;Appl.PreRequestHandlerExecute += new EventHandler(OnPreRequestHandlerExecute);&lt;br /&gt;Appl.BeginRequest += new System.EventHandler(OnBeginRequest);&lt;br /&gt;}&lt;br /&gt;public void OnPreRequestHandlerExecute(object sender, EventArgs e)&lt;br /&gt;{&lt;br /&gt;HttpApplication app = (HttpApplication)sender;&lt;br /&gt;app.Response.Write("Instances of underlying objects have also been created.");&lt;br /&gt;//can do your operations here.&lt;br /&gt;}&lt;br /&gt;public void OnBeginRequest(object sender, EventArgs e)&lt;br /&gt;{&lt;br /&gt;HttpApplication app = (HttpApplication)sender;&lt;br /&gt;app.Response.Write("Hello World");&lt;br /&gt;//this is the method called on every http request to the server.&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Assign strong name to the generated assembly by going in the project properties.&lt;br /&gt;Add assembly in cache by using following command:&lt;br /&gt;&lt;br /&gt;"C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\Bin\gacutil.exe" /i %projPath%\bin\Debug\MyModule.dll /f&lt;br /&gt;&lt;br /&gt;Recycle the application pool&lt;br /&gt;iisapp.vbs /a %appPoolName% /r&lt;br /&gt;&lt;br /&gt;Add the following line the web application:&lt;br /&gt;&amp;lt;add type="MyNameSpace.MyModule, MyModule, Version=1.0.0.0, Culture=neutral, PublicKeyToken=a3401fe654535df3" name="MyModule"&amp;gt;&lt;br /&gt;To pick the public key token you can go to "C:\Windows\Assembly" folder or use "reflector".&lt;br /&gt;&lt;br /&gt;Thats all!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-520874028387711076?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/520874028387711076/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2008/02/writing-and-using-httpmodule.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/520874028387711076'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/520874028387711076'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2008/02/writing-and-using-httpmodule.html' title='Writing and Using HttpModule'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-115350288632116078</id><published>2006-07-21T10:24:00.000-07:00</published><updated>2006-07-21T10:28:06.483-07:00</updated><title type='text'>__defineSetter__ and __defineGetter__</title><content type='html'>You can use scripting to add properties to the prototypes of some of these static objects. To do so, you must use new features added to NN6. Two new methods— __defineGetter__() and __defineSetter__()—enable you to assign functions to a custom property of an object.&lt;br /&gt;&lt;br /&gt;The functions execute whenever the property is read (the function assigned via&lt;br /&gt;the __defineGetter__() method) or modified (the function assigned via the&lt;br /&gt;__defineSetter__() method). The common way to define these functions is in&lt;br /&gt;the form of an anonymous function. The formats for the two statements&lt;br /&gt;that assign these behaviors to an object prototype are as follows:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;object.prototype.__defineGetter__("propName", function([param1[,...[,paramN]]])&lt;br /&gt;{&lt;br /&gt;  // statements&lt;br /&gt;  return returnValue&lt;br /&gt;})&lt;br /&gt;object.prototype.__defineSetter__("propName", function([param1[,...[,paramN]]])&lt;br /&gt;{&lt;br /&gt;  // statements&lt;br /&gt;  return returnValue&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/12691002-115350288632116078?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/115350288632116078/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2006/07/definesetter-and-definegetter.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/115350288632116078'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/115350288632116078'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2006/07/definesetter-and-definegetter.html' title='__defineSetter__ and __defineGetter__'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-115350263576691698</id><published>2006-07-21T10:22:00.000-07:00</published><updated>2006-07-21T10:23:56.130-07:00</updated><title type='text'>Simulating IE4+ Syntax in NN6 (Simulating innerText and outerHTML)</title><content type='html'>As I explained that we can create simulate/create new properties for static objects in NN6. Here is how we can simulate "innerText" and "outerHTML" which are supported by IE4+ but not by NN6.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;if (HTMLElement) &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;{&lt;br /&gt;  HTMLElement.prototype.__defineSetter__("innerText", function (txt) &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;  {&lt;br /&gt;    var rng = document.createRange();&lt;br /&gt;    rng.selectNodeContents(this);&lt;br /&gt;    rng.deleteContents();&lt;br /&gt;    var newText = document.createTextNode(txt);&lt;br /&gt;    this.appendChild(newText);&lt;br /&gt;    return txt;&lt;br /&gt;  })&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;  HTMLElement.prototype.__defineGetter__("innerText", function () &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;  {&lt;br /&gt;    var rng = document.createRange();&lt;br /&gt;    rng.selectNode(this);&lt;br /&gt;    return rng.toString();&lt;br /&gt;  })&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;  HTMLElement.prototype.__defineSetter__("outerHTML", function (html) &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;  {&lt;br /&gt;    var rng = document.createRange();&lt;br /&gt;    rng.selectNode(this);&lt;br /&gt;    var newHTML = rng.createContextualFragment(html);&lt;br /&gt;    this.parentNode.replaceChild(newHTML,this);&lt;br /&gt;    return html;&lt;br /&gt;  })&lt;br /&gt;  HTMLElement.prototype.__defineGetter__("outerHTML", function() {return ‘’})&lt;br /&gt;}&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The getter function for the innerText property creates a range whose boundaries encompass the current object. Because a range includes only the text part of a document, the adjustment of the range boundaries to the current node encompasses all text, including text nodes of nested elements. Returning the string version of the range provides a copy of all text inside the current element. For the setter action, the anonymous function defines one parameter variable, which is the text to replace the text inside an element. With the help, again, of the Range object, the range is cinched up to encompass the contents of the current node. Those contents are deleted, and new text node is created out of the value assigned to the property (in other words, passed as a parameter to the anonymous function). With the current object no longer containing any nodes after the deletion, the appendChild() method inserts the new text node as a child to the current&lt;br /&gt;object.&lt;br /&gt;&lt;br /&gt;Setting the outerHTML property starts out the same as setting the innerText, but the new content—which arrives as a string assigned to the parameter variable—is converted into a fully formed set of nested nodes via the createContextualFragment() method. This method is invoked on any range object, but it does not affect the range to which it is attached. The value returned from the method is what’s important, containing a node whose content is already set up as genuine DOM nodes. That’s why the returned value can be passed to the replaceChild() method to replace the new content as HTML rather than plain text. But because the outerHTML property applies to the entire current element, it must use the roundabout way of replacing itself as a child of its parent. This prevents the accidental modification of any siblings in the process.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-115350263576691698?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/115350263576691698/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2006/07/simulating-ie4-syntax-in-nn6_21.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/115350263576691698'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/115350263576691698'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2006/07/simulating-ie4-syntax-in-nn6_21.html' title='Simulating IE4+ Syntax in NN6 (Simulating innerText and outerHTML)'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-115350201443133193</id><published>2006-07-21T09:28:00.000-07:00</published><updated>2006-07-21T10:13:34.500-07:00</updated><title type='text'>Simulating IE4+ Syntax in NN6</title><content type='html'>We can simulate different properties which are not supported by NN6 and are supported by IE. In other words we can create new properties which are not supported by NN6 for any type of object. For example "all", "innerText" and "outerHTML" are not supported by NN6. We can simulate them.&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;&lt;strong&gt;Simulating "all": (&lt;/strong&gt;for example "document.all")&lt;/span&gt;&lt;br /&gt;the Node static object is the object from which all elements are derived. That object’s prototype is enhanced here because you have to make sure that all nodes, especially the document node, can acquire the all property.&lt;br /&gt;Here is the code:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;if (!document.all) &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;{&lt;br /&gt;  Node.prototype.__defineGetter__&lt;span style="font-size:130%;"&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;“all”, function() &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;  {&lt;br /&gt;    if (document.getElementsByTagName(“*”).length) &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;    {&lt;br /&gt;      switch (this.nodeType) &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;      {&lt;br /&gt;        case 9:&lt;br /&gt;          return document.getElementsByTagName(“*”);&lt;br /&gt;          break;&lt;br /&gt;        case 1:&lt;br /&gt;          return this.getElementsByTagName(“*”);&lt;br /&gt;          break;&lt;br /&gt;      }&lt;br /&gt;    }&lt;br /&gt;    return ""&lt;br /&gt;  }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;  &lt;strong&gt;&lt;span style="font-size:130%;"&gt;)&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;  Node.prototype.__defineSetter__(“all”, function() {})&lt;br /&gt;}&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The anonymous function first establishes a branch in the code only for the object model if it supports the wildcard parameter for the document.getElementsByTagName() method. The function then performs slightly different extractions depending on whether the node is the document (type 9) or an element (type 1). If the all property should be queried for any other kind of node, the returned value is an empty string. Each time the all property is accessed, the&lt;br /&gt;anonymous function executes to pick up all elements nested inside the current node. Therefore, the collection returned by the all property is always up to date, even if the node structure of the current object changes after the document loads.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-115350201443133193?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/115350201443133193/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2006/07/simulating-ie4-syntax-in-nn6.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/115350201443133193'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/115350201443133193'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2006/07/simulating-ie4-syntax-in-nn6.html' title='Simulating IE4+ Syntax in NN6'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-112685357310829441</id><published>2005-09-15T23:45:00.000-07:00</published><updated>2005-09-15T23:52:53.106-07:00</updated><title type='text'>Enabling Internet Connection Firewall Forcefully !</title><content type='html'>My ICF console was disabled. so i followed the following procedure to enable it.&lt;br /&gt;&lt;br /&gt;1. write gpedit.msc in run&lt;br /&gt;2. goto computer configuration &gt; administrative templates &gt; network connections &gt; windows firewall &gt; "Domain Profile" and in "Standard Profile" folders.&lt;br /&gt;3. find and set the key "Protect all network connections" to "Enabled"&lt;br /&gt;&lt;br /&gt;you will have the firewall enabled.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-112685357310829441?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/112685357310829441/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2005/09/enabling-internet-connection-firewall.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/112685357310829441'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/112685357310829441'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2005/09/enabling-internet-connection-firewall.html' title='Enabling Internet Connection Firewall Forcefully !'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-112685259599356073</id><published>2005-09-15T23:16:00.001-07:00</published><updated>2005-09-15T23:36:36.000-07:00</updated><title type='text'>Enabling Forms Based Authentication</title><content type='html'>Viruses these days are hoping from pc to pc and replicating themselves on networks. The file that "downloads" the viruses is not a virus itself and hence remain unidentified and not recognized by any anti-viruses. Last night, similar kind of virus once again attacked the network and after running on my pc, it disabled forms based authentication on all PCs.&lt;br /&gt;&lt;br /&gt;Well, it is simple to make form based authentication work again.&lt;br /&gt;&lt;br /&gt;1. write "gpedit.msc" in run.&lt;br /&gt;2. goto "conputer configuration &gt; windows settings &gt; security settings &gt; Local policies &gt; user rights assignment. It shows a list of keys.&lt;br /&gt;3. open the key "Access this network from Network" and add "Add User or Group".&lt;br /&gt;4. Add "Users" group from your network domain and "IUSR_{MachineName}" user in this list. and "OK".&lt;br /&gt;&lt;br /&gt;5. Now open your "regedit" in windows directory and look for an entry "EnableDCOM".&lt;br /&gt;6. when found, set its value to "Y" if it is set to "N" by the virus.&lt;br /&gt;&lt;br /&gt;Form based authentication is enabled.! :-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-112685259599356073?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/112685259599356073/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2005/09/enabling-forms-based-authentication_15.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/112685259599356073'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/112685259599356073'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2005/09/enabling-forms-based-authentication_15.html' title='Enabling Forms Based Authentication'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-112348311811698435</id><published>2005-08-07T22:24:00.000-07:00</published><updated>2005-08-07T23:41:35.526-07:00</updated><title type='text'>Xavor's Offsite Sessions</title><content type='html'>&lt;strong&gt;Event dates: 02 &amp;amp; 03-08-2005&lt;/strong&gt;&lt;br /&gt;We've been on offsite training and fun activity sessions. It was a two day session in which first day was dedicated to discussion on a cook book about business in India, named "The World is Flat" and a session on our "Personal Best" experience of project development being a team lead. Second day there were activities of "CAP" Career Action Plans and then Concert and dinner.&lt;br /&gt;So on the first day we went LUMS, Lahore University of Management Sciences. There we had presentation on the book "The World is Flat". Later on, after tea and lunch breaks, we were given paper sheets to fill out by writing your personal best experience of project development being a team lead. Our management skills was the focus of this excercie. People shared their experiences with colleagues. Everyone sounded good team lead. A good luck for the company. :)&lt;br /&gt;&lt;br /&gt;We had to reach at Royal Palm Golf and Country Club for second day activity starting from 2:00PM. So we wind up our work at office and reached the club at around 3:00 coz it started raining heavily ! I enjoyed rain with my colleague during my way to golf club. There we did an interesting activity, making charts. The idea was to create charts with pictures from magazines, newspapers etc and show what your mind thinks. Your ambition, your vision, your dream, your focus of thought, all you can show through pictures. We were provided lots of magazines and newspapers and other digests, chart papers, and good stationery. With alot of efforts i had quite good collection of around 8 pictures which I pasted on the chartpaper. My colleagues created cool charts too, besides mine :). After creating all that, each of us pasted our chart papers on the walls of the hall and it turned out to be an "art gallery".&lt;br /&gt;Then we had some time to walk around and take tea etc. After that, we had to present our Creer Action Plans, rather share our vision. The idea was to zoom out and see what would you be after 10 years. "You are on the front page of a magazine and What would be the story that brings on the front page !" That was really good activity to make me think and realize what I have to achieve in my life in comming 10 years, whats next I have to do to make my 10 years plans come true. We shared our visions, some of us were really enthusiastic and some were jolly, some had facinating ideas and others were very realistic. So that ups and downs were interesting and amusing at the same time.&lt;br /&gt;The final activity was concert, a singer suhail was invited to sing. During concert, we started taking dinner. Dinner was delicious with lots of white meat products, sweet dishes, drinks. Then we took black tea and enjoyed concert, I "cought" a cassette, that was a drop catch by my project manager and HR manager and came to my hands since I was sitting right behind them :). I sung a small song as well and everybody enjoyed alot. Good day it was !&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-112348311811698435?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/112348311811698435/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2005/08/xavors-offsite-sessions.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/112348311811698435'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/112348311811698435'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2005/08/xavors-offsite-sessions.html' title='Xavor&apos;s Offsite Sessions'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-112323842780311638</id><published>2005-08-05T03:27:00.000-07:00</published><updated>2005-08-05T03:40:27.813-07:00</updated><title type='text'>Shake it !</title><content type='html'>found a funny script that... had fun watching it&lt;br /&gt;&lt;a href="http://s94009834.onlinehome.us/xyz/move.html"&gt;http://s94009834.onlinehome.us/xyz/move.html&lt;/a&gt;&lt;br /&gt;to viwe this, javascript was not enabled on my pc ..i wondered whats happening...but when i enabled it .. it couldn't remain without smile :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-112323842780311638?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/112323842780311638/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2005/08/shake-it.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/112323842780311638'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/112323842780311638'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2005/08/shake-it.html' title='Shake it !'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-112252887920667896</id><published>2005-07-27T22:32:00.000-07:00</published><updated>2005-07-27T22:34:39.213-07:00</updated><title type='text'>Microsoft Presents VS &amp; SQL Server 2005 !!</title><content type='html'>Microsoft presents .... have fun ! :)&lt;br /&gt;&lt;a title="http://www.escapeyesterworld.com/" href="http://www.escapeyesterworld.com/"&gt;http://www.escapeyesterworld.com/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-112252887920667896?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/112252887920667896/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2005/07/microsoft-presents-vs-sql-server-2005.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/112252887920667896'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/112252887920667896'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2005/07/microsoft-presents-vs-sql-server-2005.html' title='Microsoft Presents VS &amp; SQL Server 2005 !!'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-111867014077450144</id><published>2005-06-13T06:35:00.000-07:00</published><updated>2005-06-13T06:42:20.776-07:00</updated><title type='text'>Integration of MCMS with VS.NET and Role of SQL Server 2000</title><content type='html'>&lt;span style="font-size:85%;"&gt;When MCMS installs, it integrates itself with VS.NET so that you can create MCMS projects. When you are going to create a site with MCMS, you need to tell MCMS where to save all information. For that purpose we need to configure database in SQL Server. There is no concept of premade pages, all pages are created from template pages with empty controls on it. Later on, when accessed (indirectly through channel name), the controls are filled with data that comes from attached SQL Server database. Its all responsibility of MCMS. Whatever authors add content to site, that all is saved in db, and MCMS fetches the contents of the channel accessed on runtime and fills the controls, and sends it to "Subscriber" (generally called a guest user).&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-111867014077450144?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/111867014077450144/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2005/06/integration-of-mcms-with-vsnet-and.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/111867014077450144'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/111867014077450144'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2005/06/integration-of-mcms-with-vsnet-and.html' title='Integration of MCMS with VS.NET and Role of SQL Server 2000'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-111866955926261849</id><published>2005-06-13T05:23:00.000-07:00</published><updated>2005-06-13T06:32:39.273-07:00</updated><title type='text'>Creating Site using CMS, VS.NET, SQLServer2000, and [MCMS tools:Site Manager, Server Configuration Application and Database Configuration Application]</title><content type='html'>&lt;span style="font-size:85%;"&gt;&lt;strong&gt;&lt;span style="color:#ff0000;"&gt;1.&lt;/span&gt;&lt;/strong&gt; Create SQL Server database with name MCMSTest.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#ff6666;"&gt;&lt;strong&gt;2.&lt;/strong&gt;&lt;/span&gt; Add users (MCMS Admin and MCMS Sys Account) to database and give them rights of db_ddladmin, db_datareader and db_datawriter.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#ff6666;"&gt;&lt;strong&gt;3.&lt;/strong&gt;&lt;/span&gt; Goto "Database Configuration Application" tool of MCMS. Select MCMSTest database and copy MCMS schema through wizard (done automatically on "Next clicks").&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;strong&gt;&lt;span style="color:#ff0000;"&gt;4.&lt;/span&gt;&lt;/strong&gt; Goto "Server Configuration Application"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;             in General tab, Click Configure... and then set "Map Channel Names to Host Header Names:" to Yes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;             in Access tab, click Configure... and select available domains except "workgroup".&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;             in Security tab, click Configure... and set "Allow Guests On Site:" to Yes and add your local user account, for example, TIDREES\IUSR_TIDREES&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;             Click "Close Application" button&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#ff0000;"&gt;&lt;strong&gt;5.&lt;/strong&gt;&lt;/span&gt; Open VS.NET and create MCMS Web Project (in CMS Projects)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;strong&gt;&lt;span style="color:#ff0000;"&gt;6.&lt;/span&gt;&lt;/strong&gt; Give your application name as &lt;/span&gt;&lt;a href="http://localhost:82/site"&gt;&lt;span style="font-size:85%;"&gt;http://localhost:82/site&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; as application name if your "Public site" is running on port 82.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#ff0000;"&gt;&lt;strong&gt;7.&lt;/strong&gt;&lt;/span&gt; Add default.aspx file in your project.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#ff0000;"&gt;&lt;strong&gt;8.&lt;/strong&gt;&lt;/span&gt; Goto MCMS Template Explorer and add new Gallary "News" and add new Template "NewsTemplate".&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#ff0000;"&gt;&lt;strong&gt;9.&lt;/strong&gt;&lt;/span&gt; Goto properties of "NewsTemplate" and mention "TemplateFile" property as "/site/default.aspx"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#ff0000;"&gt;&lt;strong&gt;10.&lt;/strong&gt;&lt;/span&gt; In PlaceholderDefinition click "..." and add HtmlPlaceholderDefinition and set its Name property to "NewsHeading", then add another HtmlPlaceholderDefinition and set its Name Property to "NewsBody". Click Ok&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#ff0000;"&gt;&lt;strong&gt;11.&lt;/strong&gt;&lt;/span&gt; Drag "DefaultConsole.aspx" to default.aspx.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#ff0000;"&gt;&lt;strong&gt;12.&lt;/strong&gt;&lt;/span&gt; In Toolbox, goto CMS tab and add two HtmlPlaceholderControl and set "PlaceholderToBind" property of one to NewsHeading and other to NewsBody.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#ff0000;"&gt;&lt;strong&gt;13.&lt;/strong&gt;&lt;/span&gt; Compile Project(don't give start page).&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#ff0000;"&gt;&lt;strong&gt;14.&lt;/strong&gt;&lt;/span&gt; Open "Site Manager" tool of MCMS, login as your account (anyone that is added in MCMSTest database users).&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#ff0000;"&gt;&lt;strong&gt;15.&lt;/strong&gt;&lt;/span&gt; In Template Gallery, templates made in VS.NET are shown (its because, VS.NET creates templates in MCMSTest db that is now accessed by Site Manager).&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#ff0000;"&gt;&lt;strong&gt;16.&lt;/strong&gt;&lt;/span&gt; Goto Channels and add "New Channel". In "Web Authoring" select Template Gallery path as /Templates/News (that is what we created in VS.NET). Click OK&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#ff0000;"&gt;&lt;strong&gt;17.&lt;/strong&gt;&lt;/span&gt; In "User Roles" select "Subscribers" and add "New Rights Group". Rename the right group to Subscribers. Goto its properties and in "Group Members" tab, add your user. In Group Rights tab, click on all red croses and make them green ticks. OK, and close Site Manager.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#ff0000;"&gt;&lt;strong&gt;18.&lt;/strong&gt;&lt;/span&gt; Open Browser and enter path &lt;/span&gt;&lt;a href="http://localhost:82/news/"&gt;&lt;span style="font-size:85%;"&gt;http://localhost:82/news/&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; (its if your "Public" site is running on 82 port).&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#ff0000;"&gt;&lt;strong&gt;19.&lt;/strong&gt;&lt;/span&gt; Login to site (if it asks for) and then "Create New Page", and select "News" folder and select "NewsTemplate".&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#ff0000;"&gt;&lt;strong&gt;20.&lt;/strong&gt;&lt;/span&gt; Enter data, Click "Save and Exit", Enter name as "main" and then Submit and Approve.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#ff0000;"&gt;&lt;strong&gt;21.&lt;/strong&gt;&lt;/span&gt; Enter in browser &lt;/span&gt;&lt;a href="http://localhost:82/news/main"&gt;&lt;span style="font-size:85%;"&gt;http://localhost:82/news/main&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;Bingo ! your page is open (rather your channel is accessed).&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-111866955926261849?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/111866955926261849/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2005/06/creating-site-using-cms-vsnet.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/111866955926261849'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/111866955926261849'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2005/06/creating-site-using-cms-vsnet.html' title='Creating Site using CMS, VS.NET, SQLServer2000, and [MCMS tools:Site Manager, Server Configuration Application and Database Configuration Application]'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-111777741405914190</id><published>2005-06-02T22:39:00.000-07:00</published><updated>2005-06-02T22:43:34.063-07:00</updated><title type='text'>Adding Assembly to GAC</title><content type='html'>&lt;a id="6"&gt;&lt;/a&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;To create a small Class Library project by using Visual Studio .NET, to generate a strong name, and to install the .dll file of the project in the GAC, follow these steps:&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;1. In Visual Studio .NET, create a new Visual C# .NET Class Library project, and name the project GACDemo.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;&lt;/span&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;2. You must use a strong name. To generate this cryptographic key-pair, use the SN Tool. This tool is located in the \bin subdirectory where the .NET Framework Solution Developer Kit (SDK) is installed. The SN Tool is easy to use. The command-line statement takes the following&lt;br /&gt;form:sn -k "[DriveLetter]:\[DirectoryToPlaceKey]\[KeyName].snk"&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;3. Create a directory named GACKey in C:\ so that you can easily locate the key, and access the key from the command prompt.Note For most users, the .NET tools are located in C:\Program Files\Microsoft.NET\FrameworkSDK\Bin. Before you type the following SN command, you may want to copy this similar path on your computer to the .NET bin directory. Type cd from the command prompt, right-click to paste the path, and then press ENTER to quickly change to the directory where the SN Tool is located.Type the following:&lt;br /&gt;         sn -k "C:\GACKey\GACkey.snk"&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;&lt;/span&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;4. A key is generated, but it is not yet associated with the assembly of the project. To create this association, double-click the AssemblyInfo.cs file in Visual Studio .NET Solution Explorer. This file has the list of assembly attributes that are included by default when a project is created in Visual Studio .NET. Modify the AssemblyKeyFile assembly attribute in the code as follows:&lt;br /&gt;               [assembly: AssemblyKeyFile("C:\\GACKey\\GACKey.snk")]&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;Compile the project by clicking CTRL+SHIFT+B. You do not have to have any additional code to install a .dll file in the GAC.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;&lt;/span&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;5. You can install the .dll file by using the Gacutil Tool, or by dragging the .dll file to the appropriate directory. If you use the Gacutil Tool, you can use the following command:&lt;br /&gt;gacutil -I "[DriveLetter]:\[PathToBinDirectoryInVSProject]\gac.dll"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;If you want to drag the file, use Microsoft Windows Explorer. Open two instances of Windows Explorer. In one instance, find the location of the .dll file output for your console project. In the other instance, find c:\[SystemRoot]\Assembly.Drag your .dll file to the Assembly folder.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;&lt;strong&gt;Verification&lt;/strong&gt;&lt;br /&gt;1. Start Windows Explorer.&lt;br /&gt;2. Locate C:\SystemRoot\ assembly.&lt;br /&gt;3. You see GACDemo in the list of installed .dll files.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-111777741405914190?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/111777741405914190/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2005/06/adding-assembly-to-gac.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/111777741405914190'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/111777741405914190'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2005/06/adding-assembly-to-gac.html' title='Adding Assembly to GAC'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12691002.post-111683384305693140</id><published>2005-05-23T12:40:00.000-07:00</published><updated>2005-05-23T00:37:23.056-07:00</updated><title type='text'>ASP.NET The Validation Process</title><content type='html'>&lt;span style="font-family:verdana;font-size:85%;"&gt;The following is a simplified description of the process that happens when a validation control is used on a page.&lt;br /&gt;&lt;strong&gt;1. &lt;/strong&gt;When a page containing validation controls is requested, the user's browser type and version is evaluated to determine if client-side validation routines should be used.&lt;br /&gt;&lt;strong&gt;2. &lt;/strong&gt;If the browser supports client-side validation, the page loads with the appropriate routines being called from the validation controls. This is handled through a JScript® include file.&lt;br /&gt;&lt;strong&gt;3. &lt;/strong&gt;When the user moves between controls on a client-side validated form after changing a control's value, the validation events for the control that lost the focus are fired and appropriate error messages (if any) are displayed.&lt;br /&gt;&lt;strong&gt;4. &lt;/strong&gt;If the user generates a form submit on a client-side validated form, the entire form is evaluated for any validation controls that are not valid. If even one control is not valid, the form will not be submitted.&lt;br /&gt;&lt;strong&gt;5. &lt;/strong&gt;When the form is posted back to the server through a postback event, it is evaluated for validity on the server. This occurs even if the form was already evaluated on the client.&lt;br /&gt;&lt;strong&gt;6. &lt;/strong&gt;If any of the validation controls are found to be invalid through the server-side check, the page is redisplayed with the appropriate error messages included.&lt;br /&gt;&lt;strong&gt;7. &lt;/strong&gt;If the form passes all validation on both the server and client, the page processing sequence continues with the event that triggered the postback firing.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12691002-111683384305693140?l=tahiridrees.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tahiridrees.blogspot.com/feeds/111683384305693140/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://tahiridrees.blogspot.com/2005/05/aspnet-validation-process.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/111683384305693140'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12691002/posts/default/111683384305693140'/><link rel='alternate' type='text/html' href='http://tahiridrees.blogspot.com/2005/05/aspnet-validation-process.html' title='ASP.NET The Validation Process'/><author><name>Tahir Idrees</name><uri>http://www.blogger.com/profile/09299529331794093185</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
