<?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-1366565687657887442</id><updated>2012-01-18T15:23:34.961+04:00</updated><category term='vmx'/><category term='wiki page edit'/><category term='VMware'/><category term='web'/><category term='ESXi'/><category term='esxupdate'/><category term='security'/><category term='SharePoint'/><category term='ESX'/><category term='testing'/><category term='SharePoint 2010'/><category term='django'/><category term='lockdown'/><title type='text'>New - well forgotten old. Almost...</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://maxshulga.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://maxshulga.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Maxim Shulga (aka MaxBeard)</name><uri>http://www.blogger.com/profile/05615743910272666556</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_J8lG0A5J3Uw/S4zLX9EjLKI/AAAAAAAAADk/iJmrEfpqmV0/S220/My+Photo.png'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>28</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-1366565687657887442.post-1325146307289284405</id><published>2012-01-17T17:49:00.004+04:00</published><updated>2012-01-17T18:10:06.797+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='VMware'/><category scheme='http://www.blogger.com/atom/ns#' term='ESXi'/><category scheme='http://www.blogger.com/atom/ns#' term='ESX'/><title type='text'>Free tool to check VMware ESX/ESXi compliance</title><content type='html'>I'm pleasure to announce that we have released new version of &lt;a href="http://www.vgate.info/en/product"&gt;vGate&lt;/a&gt; &lt;a href="http://www.vgate.info/en/downloads"&gt;Compliance Checker&lt;/a&gt;.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Compliance checker is a free reporting tool that allows you to verify whether your virtual environment complies with industry standards for information security: &lt;a href="https://www.pcisecuritystandards.org/security_standards/documents.php"&gt;PCI DSS 2.0&lt;/a&gt;, &lt;a href="http://benchmarks.cisecurity.org/en-us/?route=downloads.show.single.esx4.100"&gt;CIS VMware ESX Server Benchmark&lt;/a&gt;, &lt;a href="http://communities.vmware.com/docs/DOC-15413"&gt;VMware Security Hardening Best Practices&lt;/a&gt;. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;It is distributed as a single executable – no installation or registration is required.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Supported VMware product versions:&lt;/div&gt;&lt;div&gt;&lt;div&gt;VMware vSphere 4 (Update 2)&lt;/div&gt;&lt;div&gt;VMware vSphere 4.1 (ESX &amp;amp; ESXi)&lt;/div&gt;&lt;/div&gt;&lt;div&gt;VMware vSphere 5.0&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Enjoy :)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1366565687657887442-1325146307289284405?l=maxshulga.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://maxshulga.blogspot.com/feeds/1325146307289284405/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://maxshulga.blogspot.com/2012/01/free-tool-to-check-vmware-esxesxi.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/1325146307289284405'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/1325146307289284405'/><link rel='alternate' type='text/html' href='http://maxshulga.blogspot.com/2012/01/free-tool-to-check-vmware-esxesxi.html' title='Free tool to check VMware ESX/ESXi compliance'/><author><name>Maxim Shulga (aka MaxBeard)</name><uri>http://www.blogger.com/profile/05615743910272666556</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_J8lG0A5J3Uw/S4zLX9EjLKI/AAAAAAAAADk/iJmrEfpqmV0/S220/My+Photo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1366565687657887442.post-671783728257912746</id><published>2011-12-01T10:24:00.032+04:00</published><updated>2011-12-03T22:23:13.213+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ESXi'/><category scheme='http://www.blogger.com/atom/ns#' term='ESX'/><title type='text'>Run vSphere Security Hardening report in Windows</title><content type='html'>&lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; "&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; "&gt;&lt;span style="font-size: 10pt; "&gt;As you probably know VMware has interesting guideline: &lt;/span&gt;&lt;span style="font-size:10.0pt;mso-fareast-font-family:&amp;quot;Times New Roman&amp;quot;;mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;;color:#333333;mso-fareast-language:RU"&gt;&lt;a href="http://www.vmware.com/resources/techresources/10198"&gt;&lt;span style="color:blue"&gt;vSphere 4.1 Security Hardening Guide&lt;/span&gt;&lt;/a&gt;. This document provides instructions on how to securely deploy VMware vSphere™ 4.1 (“vSphere”) in a production environment. Also you can find very useful Perl script&lt;/span&gt;&lt;span style="font-size: 10pt; "&gt;&lt;a href="http://communities.vmware.com/docs/DOC-11901"&gt;&lt;span style="color:blue"&gt;vmwarevSphereSecurityHardeningReportCheck.pl&lt;/span&gt;&lt;/a&gt; that can be ran on your environment and allows you to check your current state in according to the Security Hardening Guide.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; "&gt;&lt;span style="font-size: 10pt; "&gt;Despite the fact that script does not check all requirements, it can help a lot.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; "&gt;&lt;span style="font-size: 10pt; "&gt;To use this script you need to download and run &lt;a href="http://www.vmware.com/support/developer/vima/"&gt;&lt;span style="color:blue"&gt;vSphere Management Assistant&lt;/span&gt;&lt;/a&gt; in your environment. It is distributed as OVF template and can be installed very quickly. Virtual machine already has all necessary SDKs installed and you need just to copy &lt;a href="http://communities.vmware.com/docs/DOC-11901"&gt;&lt;span style="color:blue"&gt;vmwarevSphereSecurityHardeningReportCheck.pl&lt;/span&gt;&lt;/a&gt; script on your vMA. Note: to enable SSH connections on your vMA you need to read this article where you can find instructions “&lt;a href="http://jreypo.wordpress.com/2011/10/19/vma-5-rejects-ssh-connections"&gt;&lt;span style="color:blue"&gt;Issue with vMA5 &amp;amp; ssh&lt;/span&gt;&lt;/a&gt;” (check comments also, because I had some issues with file editing)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; "&gt;&lt;span style="font-size: 10pt; "&gt;The main issue with vMA is its 64-bit OS, so if you want to run vMA on the virtual ESX(i) server you need to have hardware that supports &lt;a href="http://www.intel.com/technology/itj/2006/v10i3/1-hardware/8-virtualization-future.htm"&gt;&lt;span style="color:blue"&gt;VT-x/EPT instructions&lt;/span&gt;&lt;/a&gt;. I have Intel Core 2 Duo on my workstation and it doesn’t support this feature.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; "&gt;&lt;span style="font-size: 10pt; "&gt;Actually script does not need vMA, it uses vSphere SDK for Perl so I have decided to try to run it in Windows host. I installed &lt;a href="http://communities.vmware.com/community/vmtn/developer/downloads"&gt;&lt;span style="color:blue"&gt;vSphere SDK for Perl&lt;/span&gt;&lt;/a&gt; and ran script. And it works, but with some issues that I have fixed: I replaced ‘grep’ with ’findstr ‘ and changed folder creation method. Also you need to have openSSL on your host. I use binary files from this package:&lt;a href="http://gnuwin32.sourceforge.net/packages/openssl.htm"&gt;&lt;span style="color:blue"&gt;http://gnuwin32.sourceforge.net/packages/openssl.htm&lt;/span&gt;&lt;/a&gt;).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size: 10pt; "&gt;These are step by step instructions:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 36pt; text-indent: -18pt; "&gt;&lt;span style="font-size: 10pt; "&gt;1. Download and install &lt;a href="http://communities.vmware.com/community/vmtn/developer/downloads"&gt;&lt;span style="color:blue"&gt;vSphere SDK for Perl&lt;/span&gt;&lt;/a&gt; on the your Windows host (I use Win7 but I think that it should work on XP, 2003 and 2008 also)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 36pt; text-indent: -18pt; "&gt;&lt;span style="font-size: 10pt; "&gt;2. Download openSSL binary package and copy openssl.exe, and libssl32.dll to the directory with Perl binaries.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 36pt; text-indent: -18pt; "&gt;&lt;span style="font-size: 10pt; "&gt;3. Add path to the Perl binaries to your PATH environment variable&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 36pt; text-indent: -18pt; "&gt;&lt;span style="font-size: 10pt; "&gt;4.&lt;a href="https://docs.google.com/leaf?id=0B-FD8KumkK5WYmVhNGQ1N2UtMTIyZC00NzdkLWE3ZGMtZmJjOGI3ZWU3MzJm"&gt;&lt;span style="color:blue"&gt; &lt;/span&gt;&lt;/a&gt;&lt;a href="https://docs.google.com/leaf?id=0B-FD8KumkK5WNWEwY2E0ODUtZGNiOC00NmZkLWFjNzQtNjBkM2JlODgxMjg4"&gt;&lt;span style="color:blue"&gt;Download this script&lt;/span&gt;&lt;/a&gt; and enjoy. It supports ESX(i) 4.X and 5.0. Check RN in the script.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 36pt; text-indent: -18pt; "&gt;&lt;span style="font-size: 10pt; "&gt;ALL COPYRIGHTS for script pertain to William Lam &lt;a href="http://www.virtuallyghetto.com/"&gt;&lt;span style="color:blue"&gt;http://www.virtuallyghetto.com&lt;/span&gt;&lt;/a&gt; | &lt;a href="http://twitter.com/lamw"&gt;&lt;span style="color:blue"&gt;@lamw&lt;/span&gt;&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size: 10pt; "&gt;During the script checking I have fixed 2 bugs in the setting analysis. I posted these bugs (&lt;a href="http://communities.vmware.com/message/1874035"&gt;&lt;span style="color:blue"&gt;1&lt;/span&gt;&lt;/a&gt; &amp;amp; &lt;a href="http://communities.vmware.com/message/1874029"&gt;&lt;span style="color:blue"&gt;2&lt;/span&gt;&lt;/a&gt;) to VMware&lt;a href="http://communities.vmware.com/groups/vspheresecurityhardening"&gt;&lt;span style="color:blue"&gt;vSphereSecuriyHardening&lt;/span&gt;&lt;/a&gt; Group forum and I as far I know William fixed it in the original script also.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size: 10pt; "&gt;Command line example:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size: 10pt; "&gt;perl.exe "PATH_TO_SCRIPT\vmwarevSphereSecurityHardeningReportCheck_win.pl" --recommend_check_level enterprise --server YOUR_SERVER --password PSWD --username USER --reportname "esx41_enter.html"&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size: 10pt; "&gt;Check original script page to get details about command line parameters.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size: 10pt; "&gt;I will update this post and script as soon as it will be changed. I'm planning to extend its functionality so stay tuned.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size: 10pt; "&gt;Now we're planing to use this script for automatic testing. Our product &lt;/span&gt;&lt;span style="font-size: 10pt; "&gt;&lt;a href="http://vgate.info/en/"&gt;&lt;span lang="EN-US" style="color:blue;mso-ansi-language:EN-US"&gt;vGate&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-size: 10pt; "&gt; helps you ensure that your virtual infrastructure is compliant to popular security standarts: VMware Security Hardening Guide, CIS Benchmarks for vSphere 4.0 and PCI DSS 2.0&lt;/span&gt;&lt;span style="font-size: 10pt; "&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size: 10pt; "&gt;Thanks to William who was very responsive and answered all my questions.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size:10.0pt;line-height:115%"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1366565687657887442-671783728257912746?l=maxshulga.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://maxshulga.blogspot.com/feeds/671783728257912746/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://maxshulga.blogspot.com/2011/12/run-vsphere-security-hardening-report.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/671783728257912746'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/671783728257912746'/><link rel='alternate' type='text/html' href='http://maxshulga.blogspot.com/2011/12/run-vsphere-security-hardening-report.html' title='Run vSphere Security Hardening report in Windows'/><author><name>Maxim Shulga (aka MaxBeard)</name><uri>http://www.blogger.com/profile/05615743910272666556</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_J8lG0A5J3Uw/S4zLX9EjLKI/AAAAAAAAADk/iJmrEfpqmV0/S220/My+Photo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1366565687657887442.post-8204294375650103922</id><published>2011-06-30T13:18:00.006+04:00</published><updated>2011-06-30T13:56:02.311+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ESX'/><category scheme='http://www.blogger.com/atom/ns#' term='esxupdate'/><title type='text'>How to install ESX updates from the console</title><content type='html'>Steps:&lt;br /&gt;1. Copy "update.zip" to the "/tmp" folder on ESX host (you can use &lt;a href="http://winscp.net/eng/index.php"&gt;WinSCP&lt;/a&gt;).&lt;br /&gt;2. Enable ESX maintenance mode "&lt;span style="font-weight:bold;"&gt;vimsh -n -e /hostsvc/maintenance_mode_enter&lt;/span&gt;" from the console.&lt;br /&gt;3. Install the update "&lt;span style="font-weight:bold;"&gt;esxupdate update --bundle=/tmp/update.zip --loglevel=INFO&lt;/span&gt;"&lt;br /&gt;4. Exit from ESX maintenance mode "&lt;span style="font-weight:bold;"&gt;vimsh -n -e /hostsvc/maintenance_mode_exit&lt;/span&gt;"&lt;br /&gt;5. Reboot host with "&lt;span style="font-weight:bold;"&gt;reboot&lt;/span&gt;" after the installation completes&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1366565687657887442-8204294375650103922?l=maxshulga.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://maxshulga.blogspot.com/feeds/8204294375650103922/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://maxshulga.blogspot.com/2011/06/how-to-install-esx-updates-from-console.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/8204294375650103922'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/8204294375650103922'/><link rel='alternate' type='text/html' href='http://maxshulga.blogspot.com/2011/06/how-to-install-esx-updates-from-console.html' title='How to install ESX updates from the console'/><author><name>Maxim Shulga (aka MaxBeard)</name><uri>http://www.blogger.com/profile/05615743910272666556</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_J8lG0A5J3Uw/S4zLX9EjLKI/AAAAAAAAADk/iJmrEfpqmV0/S220/My+Photo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1366565687657887442.post-1087396145073990167</id><published>2011-06-28T13:54:00.008+04:00</published><updated>2011-12-02T22:55:49.913+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vmx'/><title type='text'>Reload Virtual Machine settings from vmx file in vSphere Client</title><content type='html'>If you have edited vmx file manually (or changed it in the another vSphere Client), you may need to refresh Virtual Machine settings in already opened Client window.&lt;br /&gt;&lt;br /&gt;Method 1: &lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;you can to re-add this virtual machine.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Method 2: &lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;open server console and type the following:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;vmware-vim-cmd vmsvc/getallvms |grep "Your Virtual Machine Name"&lt;/span&gt;&lt;br /&gt;&lt;i&gt;Note: use vim-cmd command to run in ESXi server.&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;It outputs next result:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style:italic;"&gt;16     Max Virtual Machine   [datastore1] Max Virtual Machine/Max Virtual Machine.vmx   winXPProGuest   vmx-07&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;"16" is inventory ID that can be used to reload configuration:&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;vmware-vim-cmd vmsvc/reload 16&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;Note: use vim-cmd command to run in ESXi server.&lt;/i&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;Now you have virtual machine settings "up to date" in all your vSphere Clients.&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1366565687657887442-1087396145073990167?l=maxshulga.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://maxshulga.blogspot.com/feeds/1087396145073990167/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://maxshulga.blogspot.com/2011/06/reload-virtual-machine-vmx-file-in.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/1087396145073990167'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/1087396145073990167'/><link rel='alternate' type='text/html' href='http://maxshulga.blogspot.com/2011/06/reload-virtual-machine-vmx-file-in.html' title='Reload Virtual Machine settings from vmx file in vSphere Client'/><author><name>Maxim Shulga (aka MaxBeard)</name><uri>http://www.blogger.com/profile/05615743910272666556</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_J8lG0A5J3Uw/S4zLX9EjLKI/AAAAAAAAADk/iJmrEfpqmV0/S220/My+Photo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1366565687657887442.post-144694291873057204</id><published>2011-06-03T12:51:00.007+04:00</published><updated>2011-06-03T14:37:03.500+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ESXi'/><title type='text'>All ESXi host config files in webAccessibleConfigFiles.xml</title><content type='html'>ESXi 4.1 server has interesting file '&lt;span style="font-style:italic;"&gt;/etc/vmware/hostd/webAccessibleConfigFiles.xml&lt;/span&gt;' where is all configuration files are listed. You can find its names and paths there.&lt;br /&gt;&lt;br /&gt;Actually it's list of all config files those are available with web access:&lt;br /&gt;...&lt;br /&gt;&lt;pre&gt;&lt;code&gt;&lt;br /&gt;  &amp;lt;configfileinfo&amp;gt;&lt;br /&gt;     &amp;lt;urireference&amp;gt;/host/vmware.lic&amp;lt;/urireference&amp;gt;&lt;br /&gt;     &amp;lt;path&amp;gt;/etc/vmware/vmware.lic&amp;lt;/path&amp;gt;&lt;br /&gt;     &amp;lt;displayname&amp;gt;vmware.lic&amp;lt;/displayname&amp;gt;&lt;br /&gt;     &amp;lt;mimetype&amp;gt;text/plain&amp;lt;/mimetype&amp;gt;&lt;br /&gt;     &amp;lt;method&amp;gt;GET&amp;lt;/method&amp;gt;&lt;br /&gt;     &amp;lt;method&amp;gt;HEAD&amp;lt;/method&amp;gt;&lt;br /&gt;     &amp;lt;method&amp;gt;PUT&amp;lt;/method&amp;gt;&lt;br /&gt;  &amp;lt;/configfileinfo&amp;gt;&lt;br /&gt;  &amp;lt;configfileinfo&amp;gt;&lt;br /&gt;     &amp;lt;urireference&amp;gt;/host/vmware_config&amp;lt;/urireference&amp;gt;&lt;br /&gt;     &amp;lt;path&amp;gt;/etc/vmware/config&amp;lt;/path&amp;gt;&lt;br /&gt;     &amp;lt;displayname&amp;gt;vmware_config&amp;lt;/displayname&amp;gt;&lt;br /&gt;     &amp;lt;mimetype&amp;gt;text/plain&amp;lt;/mimetype&amp;gt;&lt;br /&gt;     &amp;lt;method&amp;gt;GET&amp;lt;/method&amp;gt;&lt;br /&gt;     &amp;lt;method&amp;gt;HEAD&amp;lt;/method&amp;gt;&lt;br /&gt;     &amp;lt;method&amp;gt;PUT&amp;lt;/method&amp;gt;&lt;br /&gt;  &amp;lt;/configfileinfo&amp;gt;&lt;br /&gt;  &amp;lt;configfileinfo&amp;gt;&lt;br /&gt;     &amp;lt;urireference&amp;gt;/host/vmware_configrules&amp;lt;/urireference&amp;gt;&lt;br /&gt;     &amp;lt;path&amp;gt;/etc/vmware/configrules&amp;lt;/path&amp;gt;&lt;br /&gt;     &amp;lt;displayname&amp;gt;vmware_configrules&amp;lt;/displayname&amp;gt;&lt;br /&gt;     &amp;lt;mimetype&amp;gt;text/plain&amp;lt;/mimetype&amp;gt;&lt;br /&gt;     &amp;lt;method&amp;gt;GET&amp;lt;/method&amp;gt;&lt;br /&gt;     &amp;lt;method&amp;gt;HEAD&amp;lt;/method&amp;gt;&lt;br /&gt;     &amp;lt;method&amp;gt;PUT&amp;lt;/method&amp;gt;&lt;br /&gt;  &amp;lt;/configfileinfo&amp;gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1366565687657887442-144694291873057204?l=maxshulga.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://maxshulga.blogspot.com/feeds/144694291873057204/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://maxshulga.blogspot.com/2011/06/esxi-host-config-files.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/144694291873057204'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/144694291873057204'/><link rel='alternate' type='text/html' href='http://maxshulga.blogspot.com/2011/06/esxi-host-config-files.html' title='All ESXi host config files in webAccessibleConfigFiles.xml'/><author><name>Maxim Shulga (aka MaxBeard)</name><uri>http://www.blogger.com/profile/05615743910272666556</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_J8lG0A5J3Uw/S4zLX9EjLKI/AAAAAAAAADk/iJmrEfpqmV0/S220/My+Photo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1366565687657887442.post-8422306201322923932</id><published>2011-06-03T10:47:00.007+04:00</published><updated>2011-06-03T11:34:03.595+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ESXi'/><title type='text'>Configure persistent logging (syslog) on ESXi host</title><content type='html'>ESXi 4.1 maintains a log of activity in log files, using a syslog facility. The&lt;br /&gt;following logs are available:&lt;br /&gt;• hostd.log&lt;br /&gt;• messages&lt;br /&gt;• vpxa.log (only if the host has been joined to a VirtualCenter instance)&lt;br /&gt;&lt;br /&gt;By default, the messages log on ESXi are stored only in the in-memory file system. The logs are lost upon reboot, and only 1 day’s worth of logs are stored.&lt;br /&gt;According to &lt;a href="http://communities.vmware.com/docs/DOC-15413"&gt;VMware Security Hardening Guide&lt;/a&gt; you can configure persistent logging to a datastore and a dedicated records of server activity are available for that host always.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://kb.vmware.com/kb/1016621"&gt;VMware kb&lt;/a&gt; has recommendations about how to make it possible. But manual changes in 07.logger file work only for current session. After restart all changes reverted (kb has note about this). &lt;a href="http://communities.vmware.com/people/DSTAVERT"&gt;David&lt;/a&gt; note in &lt;a href="http://communities.vmware.com/thread/313462"&gt;this thread&lt;/a&gt; explains this issue. But how to resolve it and make possible persistent logging? Well, yes, vSphere Client works perfect and you can change syslog settings there. But I need to change it from TSM.&lt;br /&gt;&lt;br /&gt;I have tried to edit '&lt;span style="font-style:italic;"&gt;/etc/syslog.conf&lt;/span&gt;' file and it works! Between vSphere Client stores its changes for syslog settings in this file also.&lt;br /&gt;So you need to:&lt;br /&gt;- set your path to log file with 'logfile=' parameter. ie &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;logfile=/vmfs/volumes/4d5abbeb-22518c58-5ddc-000c2954a30d/logging/messagesX&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;where '4d5abbeb-22518c58-5ddc-000c2954a30d' is your storeID. You can use datastore label also (like "datastore1") in this path. Be sure that all folders in this path exist.&lt;br /&gt;&lt;br /&gt;- find existing syslogd process and restart it:&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;ps | grep syslog&lt;/span&gt; &gt; PID of syslogd&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;kill -HUP $syslogPID&lt;/span&gt; (restart process with selected PID)&lt;br /&gt;&lt;br /&gt;Check that syslogd logs in the new file. Keep in mind that it continues to log in original "messages" file also (/var/log/messages). New log file is rotated and old versions are compressed automatically.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1366565687657887442-8422306201322923932?l=maxshulga.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://maxshulga.blogspot.com/feeds/8422306201322923932/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://maxshulga.blogspot.com/2011/06/configure-persistent-logging-syslog-on.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/8422306201322923932'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/8422306201322923932'/><link rel='alternate' type='text/html' href='http://maxshulga.blogspot.com/2011/06/configure-persistent-logging-syslog-on.html' title='Configure persistent logging (syslog) on ESXi host'/><author><name>Maxim Shulga (aka MaxBeard)</name><uri>http://www.blogger.com/profile/05615743910272666556</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_J8lG0A5J3Uw/S4zLX9EjLKI/AAAAAAAAADk/iJmrEfpqmV0/S220/My+Photo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1366565687657887442.post-4640714603301362223</id><published>2011-06-03T10:11:00.006+04:00</published><updated>2011-06-03T11:38:06.993+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ESXi'/><category scheme='http://www.blogger.com/atom/ns#' term='lockdown'/><category scheme='http://www.blogger.com/atom/ns#' term='security'/><title type='text'>Manage ESXi Lockdown Mode from DCUI</title><content type='html'>If your VMware ESXi 4.0 &amp; 4.1 servers are joined in VMware vCenter Server infrastructure then you can enchance security for these hosts. Follow on &lt;a href="http://communities.vmware.com/docs/DOC-15413"&gt;VMware Security Hardening&lt;/a&gt; you need to enable Lockdown Mode to restrict root access (HCN02 requirement). &lt;br /&gt;&lt;br /&gt;Lockdown mode forces all operations to be performed through vCenter Server (you can continue to use Direct Console User Interface aka DCUI to manage host).&lt;br /&gt;&lt;br /&gt;VMware Security Hardening guide notes that lockdown mode can be enabled or disabled in two places:&lt;br /&gt;• In the vSphere Client, when connected to the vCenter Server managing the host&lt;br /&gt;• In the DCUI of the host&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;In ESXi 4.0&lt;/span&gt;:&lt;br /&gt;To check if Lockdown mode is enabled, run the command: &lt;br /&gt;&lt;span style="font-style:italic;"&gt;vim-cmd -U dcui vimsvc/auth/admin_account_is_enabled&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;To disable Lockdown mode, run the command: &lt;br /&gt;&lt;span style="font-style:italic;"&gt;vim-cmd -U dcui vimsvc/auth/admin_account_enable&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;To enable Lockdown mode, run the command: &lt;br /&gt;&lt;span style="font-style:italic;"&gt;vim-cmd -U dcui vimsvc/auth/admin_account_disable&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;In ESXi 4.1&lt;/span&gt;:&lt;br /&gt;To check if Lockdown mode is enabled, run the command: &lt;br /&gt;&lt;span style="font-style:italic;"&gt;vim-cmd -U dcui vimsvc/auth/lockdown_is_enabled&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;To disable Lockdown mode, run the command: &lt;br /&gt;&lt;span style="font-style:italic;"&gt;vim-cmd -U dcui vimsvc/auth/lockdown_mode_exit&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;To enable Lockdown mode, run the command: &lt;br /&gt;&lt;span style="font-style:italic;"&gt;vim-cmd -U dcui vimsvc/auth/lockdown_mode_enter&lt;/span&gt; &lt;br /&gt;&lt;br /&gt;&lt;a href="http://kb.vmware.com/kb/1008077"&gt;See VMware kb to more details&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1366565687657887442-4640714603301362223?l=maxshulga.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://maxshulga.blogspot.com/feeds/4640714603301362223/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://maxshulga.blogspot.com/2011/06/manage-esxi-lockdown-mode-from-dcui.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/4640714603301362223'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/4640714603301362223'/><link rel='alternate' type='text/html' href='http://maxshulga.blogspot.com/2011/06/manage-esxi-lockdown-mode-from-dcui.html' title='Manage ESXi Lockdown Mode from DCUI'/><author><name>Maxim Shulga (aka MaxBeard)</name><uri>http://www.blogger.com/profile/05615743910272666556</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_J8lG0A5J3Uw/S4zLX9EjLKI/AAAAAAAAADk/iJmrEfpqmV0/S220/My+Photo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1366565687657887442.post-8022989723634955512</id><published>2010-10-06T13:35:00.005+04:00</published><updated>2010-10-08T14:32:20.911+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint 2010'/><title type='text'>SharePoint 2010 Client Object Model: "(400) Bad Request" error</title><content type='html'>If you use &lt;a href="http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.client.filecollection.add.aspx"&gt;Microsoft.SharePoint.Client.FileCollection.Add&lt;/a&gt; or &lt;a href="http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.client.file.savebinary.aspx"&gt;Microsoft.SharePoint.Client.File.SaveBinary&lt;/a&gt; &lt;div&gt;method to create (or change) file in SharePoint 2010, you can get "The remote server returned an error: &lt;span class="Apple-style-span"&gt;(400) Bad Request&lt;/span&gt;" error.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;To resolve this issue you need to change default &lt;a href="http://msdn.microsoft.com/en-us/library/ff599489.aspx"&gt;Maximum Message Size&lt;/a&gt; for WCF calls:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;open SharePoint 2010 Management Shell&lt;/div&gt;&lt;div&gt;type:&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span"&gt;$ws = [Microsoft.SharePoint.Administration.SPWebService]::ContentService&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;i&gt;&lt;/i&gt;&lt;/span&gt;&lt;i&gt;&lt;span class="Apple-style-span"&gt;$ws.ClientRequestServiceSettings.MaxReceivedMessageSize &lt;/span&gt;&lt;/i&gt;&lt;span class="Apple-style-span"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;= your_value&lt;/span&gt;  &lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;$ws.Update()&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;I recommend to set &lt;i&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span" style="font-style: normal;"&gt;MaxReceivedMessageSize&lt;/span&gt; &lt;/span&gt;&lt;/i&gt;to Int32.MaxValue - 1 (2147483646).&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;Sometimes you may need to run "iisreset /noforce" to enforce changes applying.&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;Also you can use &lt;a href="http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.client.file.savebinarydirect.aspx"&gt;Microsoft.SharePoint.Client.File.SaveBinaryDirect&lt;/a&gt; approach that does not have this limitation.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1366565687657887442-8022989723634955512?l=maxshulga.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://maxshulga.blogspot.com/feeds/8022989723634955512/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://maxshulga.blogspot.com/2010/10/sharepoint-2010-client-object-model-400.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/8022989723634955512'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/8022989723634955512'/><link rel='alternate' type='text/html' href='http://maxshulga.blogspot.com/2010/10/sharepoint-2010-client-object-model-400.html' title='SharePoint 2010 Client Object Model: &quot;(400) Bad Request&quot; error'/><author><name>Maxim Shulga (aka MaxBeard)</name><uri>http://www.blogger.com/profile/05615743910272666556</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_J8lG0A5J3Uw/S4zLX9EjLKI/AAAAAAAAADk/iJmrEfpqmV0/S220/My+Photo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1366565687657887442.post-3474118042274175561</id><published>2010-09-07T13:01:00.005+04:00</published><updated>2011-05-10T23:15:10.008+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint'/><title type='text'>How to add new aspx pages to SharePoint programmatically</title><content type='html'>There are two different solutions to create new aspx pages in SharePoint.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;First one is using of &lt;a href="http://msdn.microsoft.com/en-us/library/dd587481(office.11).aspx"&gt;SharePoint Services RPC Methods&lt;/a&gt;:&lt;/div&gt;&lt;div&gt;1. Create query in XML format to call &lt;a href="http://msdn.microsoft.com/en-us/library/dd587428(office.11).aspx"&gt;NewWebPage &lt;/a&gt;method:&lt;/div&gt;&lt;blockquote&gt;&lt;code&gt;&lt;font size="2" face="Courier New" color="black"&gt;&lt;font color="#0000ff"&gt;&amp;#60;?&lt;/font&gt;&lt;font color="#800000"&gt;xml&lt;/font&gt; &lt;font color="#ff0000"&gt;version&lt;/font&gt;&lt;font color="#0000ff"&gt;="1.0"&lt;/font&gt; &lt;font color="#ff0000"&gt;encoding&lt;/font&gt;&lt;font color="#0000ff"&gt;="UTF-8"&lt;/font&gt;?&lt;font color="#0000ff"&gt;&amp;#62;&lt;/font&gt;&lt;br /&gt; &lt;font color="#0000ff"&gt;&amp;#60;&lt;/font&gt;&lt;font color="#800000"&gt;Batch&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;#62;&lt;/font&gt;&lt;br /&gt; &lt;font color="#0000ff"&gt;&amp;#60;&lt;/font&gt;&lt;font color="#800000"&gt;Method&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;#62;&lt;/font&gt;&lt;br /&gt; &lt;font color="#0000ff"&gt;&amp;#60;&lt;/font&gt;&lt;font color="#800000"&gt;SetList&lt;/font&gt; &lt;font color="#ff0000"&gt;Scope&lt;/font&gt;&lt;font color="#0000ff"&gt;="Request"&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;#62;&lt;/font&gt;DocLib_ID&lt;font color="#0000ff"&gt;&amp;#60;/&lt;/font&gt;&lt;font color="#800000"&gt;SetList&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;#62;&lt;/font&gt;&lt;br /&gt; &lt;font color="#0000ff"&gt;&amp;#60;&lt;/font&gt;&lt;font color="#800000"&gt;SetVar&lt;/font&gt; &lt;font color="#ff0000"&gt;Name&lt;/font&gt;&lt;font color="#0000ff"&gt;="ID"&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;#62;&lt;/font&gt;New&lt;font color="#0000ff"&gt;&amp;#60;/&lt;/font&gt;&lt;font color="#800000"&gt;SetVar&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;#62;&lt;/font&gt;&lt;br /&gt; &lt;font color="#0000ff"&gt;&amp;#60;&lt;/font&gt;&lt;font color="#800000"&gt;SetVar&lt;/font&gt; &lt;font color="#ff0000"&gt;Name&lt;/font&gt;&lt;font color="#0000ff"&gt;="Cmd"&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;#62;&lt;/font&gt;NewWebPage&lt;font color="#0000ff"&gt;&amp;#60;/&lt;/font&gt;&lt;font color="#800000"&gt;SetVar&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;#62;&lt;/font&gt;&lt;br /&gt; &lt;font color="#0000ff"&gt;&amp;#60;&lt;/font&gt;&lt;font color="#800000"&gt;SetVar&lt;/font&gt; &lt;font color="#ff0000"&gt;Name&lt;/font&gt;&lt;font color="#0000ff"&gt;="Type"&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;#62;&lt;/font&gt;BasicPage|WebPartPage&lt;font color="#0000ff"&gt;&amp;#60;/&lt;/font&gt;&lt;font color="#800000"&gt;SetVar&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;#62;&lt;/font&gt;&lt;br /&gt; &lt;font color="#0000ff"&gt;&amp;#60;&lt;/font&gt;&lt;font color="#800000"&gt;SetVar&lt;/font&gt; &lt;font color="#ff0000"&gt;Name&lt;/font&gt;&lt;font color="#0000ff"&gt;="WebPartPageTemplate"&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;#62;&lt;/font&gt;LayoutID&lt;font color="#0000ff"&gt;&amp;#60;/&lt;/font&gt;&lt;font color="#800000"&gt;SetVar&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;#62;&lt;/font&gt;&lt;br /&gt; &lt;font color="#0000ff"&gt;&amp;#60;&lt;/font&gt;&lt;font color="#800000"&gt;SetVar&lt;/font&gt; &lt;font color="#ff0000"&gt;Name&lt;/font&gt;&lt;font color="#0000ff"&gt;="Title"&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;#62;&lt;/font&gt;AspxTitle&lt;font color="#0000ff"&gt;&amp;#60;/&lt;/font&gt;&lt;font color="#800000"&gt;SetVar&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;#62;&lt;/font&gt;&lt;br /&gt; &lt;font color="#0000ff"&gt;&amp;#60;&lt;/font&gt;&lt;font color="#800000"&gt;SetVar&lt;/font&gt; &lt;font color="#ff0000"&gt;Name&lt;/font&gt;&lt;font color="#0000ff"&gt;="Overwrite"&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;#62;&lt;/font&gt;true&lt;font color="#0000ff"&gt;&amp;#60;/&lt;/font&gt;&lt;font color="#800000"&gt;SetVar&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;#62;&lt;/font&gt;&lt;br /&gt; &lt;font color="#0000ff"&gt;&amp;#60;/&lt;/font&gt;&lt;font color="#800000"&gt;Method&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;#62;&lt;/font&gt;&lt;br /&gt; &lt;font color="#0000ff"&gt;&amp;#60;/&lt;/font&gt;&lt;font color="#800000"&gt;Batch&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;#62;&lt;/font&gt;&lt;/font&gt;&lt;br /&gt;&lt;/code&gt;&lt;/blockquote&gt;&lt;div&gt;Where:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;b&gt;DocLib_ID &lt;/b&gt;is ID (GUID) of document library where do you need to create new aspx file.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;b&gt;BasicPage|WebPartPage &lt;/b&gt; type of aspx. Use BasicPage for page without layout (LayoutID =0) and &lt;b&gt;WebPartPage &lt;/b&gt; for all other terms&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;b&gt;LayoutID &lt;/b&gt;specifies page layout [1...8]&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;2. Call SPWeb.ProcessBatchData method with this query.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;3. If you need to create aspx file in document library subfolder, create it in doclib and move to the necessary subfolder with SPFile.MoveTo method.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;But this approach doesn't work for meeting workspace where you can create several pages with access via convenient multi-page web part.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;To create new pages there you need to use &lt;a href="http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.meetings.spmeeting.addpage.aspx"&gt;SPMeeting.AddPage&lt;/a&gt; (&lt;b&gt;AspxTitle, InstanceID, out resNewPageUrl&lt;/b&gt;) method.  Set &lt;b&gt;InstanceID &lt;/b&gt;= 0 to create page directly in the Workspace Pages library.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1366565687657887442-3474118042274175561?l=maxshulga.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://maxshulga.blogspot.com/feeds/3474118042274175561/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://maxshulga.blogspot.com/2010/09/how-to-add-new-aspx-pages-to-sharepoint.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/3474118042274175561'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/3474118042274175561'/><link rel='alternate' type='text/html' href='http://maxshulga.blogspot.com/2010/09/how-to-add-new-aspx-pages-to-sharepoint.html' title='How to add new aspx pages to SharePoint programmatically'/><author><name>Maxim Shulga (aka MaxBeard)</name><uri>http://www.blogger.com/profile/05615743910272666556</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_J8lG0A5J3Uw/S4zLX9EjLKI/AAAAAAAAADk/iJmrEfpqmV0/S220/My+Photo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1366565687657887442.post-7219435828282484091</id><published>2010-08-20T16:59:00.002+04:00</published><updated>2010-08-20T17:08:42.834+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='django'/><category scheme='http://www.blogger.com/atom/ns#' term='web'/><title type='text'>Django cache (storage)</title><content type='html'>If you need to store something useful between client requests, you can use &lt;a href="http://docs.djangoproject.com/en/dev/topics/cache/"&gt;Django cache framework&lt;/a&gt;.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;It allows you to use memory, file, database or custom storage type. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Its using is very simple:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Add CACHE_BACKEND = 'locmem://' in settings to use memory cache&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Import cache: "from django.core.cache import cache" in .py file.&lt;/div&gt;&lt;div&gt;&lt;b&gt;Get &lt;/b&gt;value: cache.get('stored_data'). It returns None if there is no 'stored_data'.&lt;/div&gt;&lt;div&gt;&lt;b&gt;Set &lt;/b&gt;value: cache.set('stored_data', my_data, 60). '60' is optional - timeout of cache expiration.&lt;/div&gt;&lt;div&gt;&lt;b&gt;Delete &lt;/b&gt;value: cache.delete('stored_data')&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1366565687657887442-7219435828282484091?l=maxshulga.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://maxshulga.blogspot.com/feeds/7219435828282484091/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://maxshulga.blogspot.com/2010/08/django-cache-storage.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/7219435828282484091'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/7219435828282484091'/><link rel='alternate' type='text/html' href='http://maxshulga.blogspot.com/2010/08/django-cache-storage.html' title='Django cache (storage)'/><author><name>Maxim Shulga (aka MaxBeard)</name><uri>http://www.blogger.com/profile/05615743910272666556</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_J8lG0A5J3Uw/S4zLX9EjLKI/AAAAAAAAADk/iJmrEfpqmV0/S220/My+Photo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1366565687657887442.post-7666344230467669139</id><published>2010-06-24T20:25:00.018+04:00</published><updated>2011-06-03T13:29:44.333+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='wiki page edit'/><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint 2010'/><title type='text'>WikiEditPage.InsertWebPartIntoWikiPage - does it have a bug?</title><content type='html'>&lt;div&gt;&lt;span class="Apple-style-span"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  &gt;SharePoint 2010 has new interesting feature "&lt;a href="http://blogs.msdn.com/b/cliffgreen/archive/2010/06/07/sharepoint-2010-team-site-wiki-implementation.aspx"&gt;Team Site Wiki&lt;/a&gt;". It's enabled by default for each team site and replace original site home page (default.aspx) with sitepages/home.aspx. This new page is Wiki and can be edited very simply: you can just type any text there, insert image (without Image WebPart) and etc. Web Parts can be used also.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  &gt;How to edit this wiki page programmatically?&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  &gt;First of all you need to open this aspx file:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  &gt;SPFile wikiFile = web.GetFile(wikiUrl);&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  &gt;After that you can get access to its &lt;b&gt;Item &lt;/b&gt;and &lt;b&gt;LimitedWebPartManager&lt;/b&gt;. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  &gt;Wiki page body is stored in wikiFile.Item["WikiField"] field.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  &gt;Empty wiki page contains something like this&lt;/span&gt;&lt;/div&gt;&lt;blockquote&gt;&lt;code&gt;&lt;font size="2" face="Courier New" color="black"&gt;&lt;font color="#0000ff"&gt;&amp;#60;&lt;/font&gt;&lt;font color="#800000"&gt;div&lt;/font&gt; &lt;font color="#ff0000"&gt;class&lt;/font&gt;&lt;font color="#0000ff"&gt;="ExternalClassB93FFFFBB50E42E5B5D1BE5F906438A1"&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;#62;&lt;/font&gt;&lt;br /&gt; &lt;font color="#0000ff"&gt;&amp;#60;&lt;/font&gt;&lt;font color="#800000"&gt;table&lt;/font&gt; &lt;font color="#ff0000"&gt;id&lt;/font&gt;&lt;font color="#0000ff"&gt;="layoutsTable"&lt;/font&gt; &lt;font color="#ff0000"&gt;style&lt;/font&gt;&lt;font color="#0000ff"&gt;="width:100%"&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;#62;&lt;/font&gt;&lt;br /&gt; &lt;font color="#0000ff"&gt;&amp;#60;&lt;/font&gt;&lt;font color="#800000"&gt;tbody&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;#62;&lt;/font&gt;&lt;br /&gt;&amp;nbsp;&lt;font color="#0000ff"&gt;&amp;#60;&lt;/font&gt;&lt;font color="#800000"&gt;tr&lt;/font&gt; &lt;font color="#ff0000"&gt;style&lt;/font&gt;&lt;font color="#0000ff"&gt;="vertical-align:top"&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;#62;&lt;/font&gt;&lt;br /&gt;&amp;nbsp; &lt;font color="#0000ff"&gt;&amp;#60;&lt;/font&gt;&lt;font color="#800000"&gt;td&lt;/font&gt; &lt;font color="#ff0000"&gt;style&lt;/font&gt;&lt;font color="#0000ff"&gt;="width:100%"&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;#62;&lt;/font&gt;&lt;br /&gt;&amp;nbsp; &lt;font color="#0000ff"&gt;&amp;#60;&lt;/font&gt;&lt;font color="#800000"&gt;div&lt;/font&gt; &lt;font color="#ff0000"&gt;class&lt;/font&gt;&lt;font color="#0000ff"&gt;="ms-rte-layoutszone-outer"&lt;/font&gt; &lt;font color="#ff0000"&gt;style&lt;/font&gt;&lt;font color="#0000ff"&gt;="width:100%"&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;#62;&lt;/font&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;&amp;#60;&lt;/font&gt;&lt;font color="#800000"&gt;div&lt;/font&gt; &lt;font color="#ff0000"&gt;class&lt;/font&gt;&lt;font color="#0000ff"&gt;="ms-rte-layoutszone-inner"&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;#62;&amp;#60;/&lt;/font&gt;&lt;font color="#800000"&gt;div&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;#62;&lt;/font&gt;&lt;br /&gt;&amp;nbsp; &lt;font color="#0000ff"&gt;&amp;#60;/&lt;/font&gt;&lt;font color="#800000"&gt;div&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;#62;&lt;/font&gt;&lt;br /&gt;&amp;nbsp; &lt;font color="#0000ff"&gt;&amp;#60;/&lt;/font&gt;&lt;font color="#800000"&gt;td&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;#62;&lt;/font&gt;&lt;br /&gt;&amp;nbsp;&lt;font color="#0000ff"&gt;&amp;#60;/&lt;/font&gt;&lt;font color="#800000"&gt;tr&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;#62;&lt;/font&gt;&lt;br /&gt; &lt;font color="#0000ff"&gt;&amp;#60;/&lt;/font&gt;&lt;font color="#800000"&gt;tbody&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;#62;&lt;/font&gt;&lt;br /&gt; &lt;font color="#0000ff"&gt;&amp;#60;/&lt;/font&gt;&lt;font color="#800000"&gt;table&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;#62;&lt;/font&gt;&lt;br /&gt; &lt;font color="#0000ff"&gt;&amp;#60;&lt;/font&gt;&lt;font color="#800000"&gt;span&lt;/font&gt; &lt;font color="#ff0000"&gt;id&lt;/font&gt;&lt;font color="#0000ff"&gt;="layoutsData"&lt;/font&gt; &lt;font color="#ff0000"&gt;style&lt;/font&gt;&lt;font color="#0000ff"&gt;="display:none"&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;#62;&lt;/font&gt;false,false,1&lt;font color="#0000ff"&gt;&amp;#60;/&lt;/font&gt;&lt;font color="#800000"&gt;span&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;#62;&lt;/font&gt;&lt;br /&gt;&lt;font color="#0000ff"&gt;&amp;#60;/&lt;/font&gt;&lt;font color="#800000"&gt;div&lt;/font&gt;&lt;font color="#0000ff"&gt;&amp;#62;&lt;/font&gt;&lt;/font&gt;&lt;br /&gt;&lt;/code&gt;&lt;/blockquote&gt;&lt;div&gt;&lt;span class="Apple-style-span"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  &gt;So to add some text message to wiki page you need just to insert your text in HTML format:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span class="Apple-style-span"  &gt;&amp;lt;p&amp;gt; Welcome to our WIKI&amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span  &gt;in div with &lt;span class="Apple-style-span"&gt;&lt;b&gt;ms-rte-layoutszone-inner&lt;/b&gt; class:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span  &gt;&lt;span class="Apple-style-span"&gt;&amp;lt;div class="ms-rte-layoutszone-inner"&amp;gt;&amp;lt;&lt;/span&gt;&lt;span class="Apple-style-span"&gt;&amp;lt;p&amp;gt; Welcome to our WIKI&amp;lt;/p&amp;gt;&lt;/span&gt;&lt;span class="Apple-style-span"&gt;/div&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span class="Apple-style-span"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span  &gt;&lt;span class="Apple-style-span"&gt;Ok. But how to add new Web Part to this page. SharePoint 2010 Object Model suggests to use &lt;a href="http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.webpartpages.wikieditpage.insertwebpartintowikipage.aspx"&gt;WikiEditPage.InsertWebPartIntoWikiPage&lt;/a&gt; method for &lt;/span&gt;&lt;span class="Apple-style-span"&gt;&lt;a href="http://www.martinhatch.com/2009/10/web-parts-on-sharepoint-2010-wiki-pages.html"&gt;this purpose&lt;/a&gt;&lt;/span&gt;&lt;span class="Apple-style-span"&gt;. &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span class="Apple-style-span"  &gt;But looks like it works incorrect: &lt;i&gt;&lt;b&gt;Position&lt;/b&gt;&lt;span class="Apple-style-span" style="font-style: normal;"&gt; parameter is processed by the wrong way and you get non-working page after update.&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span class="Apple-style-span"&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-style: normal;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span class="Apple-style-span"  &gt;Reflected source code:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;pre&gt;&lt;code&gt;&lt;span class="Apple-style-span"  &gt;&lt;div&gt;&lt;br /&gt;public static void InsertWebPartIntoWikiPage(SPFile wikiFile, WebPart webpart, int position)&lt;/div&gt;&lt;div&gt;{&lt;/div&gt;&lt;div&gt;    if (wikiFile == null)&lt;/div&gt;&lt;div&gt;    {&lt;/div&gt;&lt;div&gt;        throw new ArgumentNullException("wikiFile");&lt;/div&gt;&lt;div&gt;    }&lt;/div&gt;&lt;div&gt;    if (webpart == null)&lt;/div&gt;&lt;div&gt;    {&lt;/div&gt;&lt;div&gt;        throw new ArgumentNullException("webpart");&lt;/div&gt;&lt;div&gt;    }&lt;/div&gt;&lt;div&gt;    string str = (string) wikiFile.Item["WikiField"];&lt;/div&gt;&lt;div&gt;    if (position &amp;lt; 0)&lt;/div&gt;&lt;div&gt;    {&lt;/div&gt;&lt;div&gt;        throw new ArgumentOutOfRangeException("position");&lt;/div&gt;&lt;div&gt;    }&lt;/div&gt;&lt;div&gt;    if ((str != null) &amp;amp;&amp;amp; (position &amp;gt; str.Length))&lt;/div&gt;&lt;div&gt;    {&lt;/div&gt;&lt;div&gt;        throw new ArgumentOutOfRangeException("position");&lt;/div&gt;&lt;div&gt;    }&lt;/div&gt;&lt;div&gt;    SPLimitedWebPartManager limitedWebPartManager = wikiFile.GetLimitedWebPartManager(PersonalizationScope.Shared);&lt;/div&gt;&lt;div&gt;    Guid storageKey = Guid.NewGuid();&lt;/div&gt;&lt;div&gt;    string str2 = Utility.StorageKeyToID(storageKey);&lt;/div&gt;&lt;div&gt;    webpart.ID = str2;&lt;/div&gt;&lt;div&gt;    limitedWebPartManager.AddWebPart(webpart, "wpz", 0);&lt;/div&gt;&lt;div&gt;    string str3 = string.Format(CultureInfo.InvariantCulture, "&amp;lt;div class=\"ms-rtestate-read ms-rte-wpbox\" contentEditable=\"false\"&amp;gt;&amp;lt;div class=\"ms-rtestate-read {0}\" id=\"div_{0}\"&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;div style='display:none' id=\"vid_{0}\"&amp;gt;&amp;lt;/div&amp;gt;&lt;/div&gt;&lt;div&gt;&amp;lt;/div&amp;gt;", new object[] { storageKey.ToString("D") });&lt;/div&gt;&lt;div&gt;    if (str == null)&lt;/div&gt;&lt;div&gt;    {&lt;/div&gt;&lt;div&gt;        str = str3;&lt;/div&gt;&lt;div&gt;    }&lt;/div&gt;&lt;div&gt;    else&lt;/div&gt;&lt;div&gt;    {&lt;/div&gt;&lt;div&gt;        &lt;b&gt;str = str.Insert(position, str3);&lt;/b&gt;&lt;/div&gt;&lt;div&gt;    }&lt;/div&gt;&lt;div&gt;    wikiFile.Item["WikiField"] = str;&lt;/div&gt;&lt;div&gt;    wikiFile.Item.Update();&lt;/div&gt;&lt;div&gt;}&lt;/div&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span  &gt;Insert call corrupts original &lt;span class="Apple-style-span"&gt;WikiField value because, for instance, if your position =2, you get failed HTML. Even your position=0 and Wiki page looks nice - you cannot edit it.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span  &gt;&lt;span class="Apple-style-span"&gt;So I don't recommend to use &lt;/span&gt;&lt;span class="Apple-style-span"&gt;&lt;b&gt;InsertWebPartIntoWikiPage &lt;/b&gt;in your work.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span class="Apple-style-span"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span  &gt;&lt;span class="Apple-style-span"&gt;You can write own implementation which insert new &lt;/span&gt;&lt;span class="Apple-style-span"&gt;str3 (check source code above) in the correct place: in &lt;/span&gt;div with &lt;span class="Apple-style-span"&gt;&lt;b&gt;ms-rte-layoutszone-inner&lt;/b&gt; class.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span class="Apple-style-span"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span class="Apple-style-span"  &gt;&lt;b&gt;Note&lt;/b&gt;:  Microsoft.SharePoint.WebPartPages.Utility.StorageKeyToID is internal, but you can replace it with own implementation also:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span class="Apple-style-span"  &gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;string StorageKeyToID(Guid storageKey)&lt;/div&gt;&lt;div&gt;{&lt;/div&gt;&lt;div&gt;    if (!(Guid.Empty == storageKey))&lt;/div&gt;&lt;div&gt;    {&lt;/div&gt;&lt;div&gt;        return ("g_" + storageKey.ToString().Replace('-', '_'));&lt;/div&gt;&lt;div&gt;    }&lt;/div&gt;&lt;div&gt;    return string.Empty;&lt;/div&gt;&lt;div&gt;}&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div&gt;&lt;b&gt;Addition&lt;/b&gt;: to have ability web part drag&amp;amp;drop you need to insert &lt;b&gt;&amp;lt;p&amp;gt; &amp;lt;/p&amp;gt;&lt;/b&gt; before and after your web part HTML node&lt;/div&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1366565687657887442-7666344230467669139?l=maxshulga.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://maxshulga.blogspot.com/feeds/7666344230467669139/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://maxshulga.blogspot.com/2010/06/wikieditpageinsertwebpartintowikipage.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/7666344230467669139'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/7666344230467669139'/><link rel='alternate' type='text/html' href='http://maxshulga.blogspot.com/2010/06/wikieditpageinsertwebpartintowikipage.html' title='WikiEditPage.InsertWebPartIntoWikiPage - does it have a bug?'/><author><name>Maxim Shulga (aka MaxBeard)</name><uri>http://www.blogger.com/profile/05615743910272666556</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_J8lG0A5J3Uw/S4zLX9EjLKI/AAAAAAAAADk/iJmrEfpqmV0/S220/My+Photo.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1366565687657887442.post-1590359499508054506</id><published>2010-06-18T17:51:00.009+04:00</published><updated>2010-06-25T14:58:49.788+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint 2010'/><title type='text'>SharePoint 2010 Client Object Model, get folder Item</title><content type='html'>&lt;b&gt;Task&lt;/b&gt;: you need to apply permissions to the existing folder in the document library. But it can be done only for ListItem which corresponds to this folder. How to get this ListItem?&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Resolution:&lt;/b&gt; In SharePoint Object model you can use &lt;i&gt;SPFolder.Item&lt;/i&gt; property. But SCOM &lt;i&gt;Folder&lt;/i&gt; doesn't have such prop. You need to use CAML query to get this item:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;m_rootTrgUrl = web URL&lt;br /&gt;mm_trgParentWebId = web ID&lt;br /&gt;m_trgListId = existing list ID&lt;br /&gt;srvRelativeURL = folder server-relative URL&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;using (var clientContext = new ClientContext(m_rootTrgUrl))&lt;br /&gt;{&lt;br /&gt;var trgWeb = clientContext.Site.OpenWebById(m_trgParentWebId);&lt;br /&gt;var trgList = trgWeb.Lists.GetById(m_trgListId);&lt;br /&gt;var query = new CamlQuery();&lt;br /&gt;query.ViewXml = "&amp;lt;View Scope=\"RecursiveAll\"&amp;gt; " +&lt;br /&gt;      "&amp;lt;Query&amp;gt;" +&lt;br /&gt;   "&amp;lt;Where&amp;gt;" +&lt;br /&gt;   "&amp;lt;And&amp;gt;" +&lt;br /&gt;     "&amp;lt;Eq&amp;gt;" +&lt;br /&gt;       "&amp;lt;FieldRef Name=\"FSObjType\" /&amp;gt;" +&lt;br /&gt;       "&amp;lt;Value Type=\"Integer\"&amp;gt;1&amp;lt;/Value&amp;gt;" +&lt;br /&gt;     "&amp;lt;/Eq&amp;gt;" +&lt;br /&gt;     "&amp;lt;Eq&amp;gt;" +&lt;br /&gt;       "&amp;lt;FieldRef Name=\"Title\"/&amp;gt;" +&lt;br /&gt;       "&amp;lt;Value Type=\"Text\"&amp;gt;" + folderName + "&amp;lt;/Value&amp;gt;" +&lt;br /&gt;     "&amp;lt;/Eq&amp;gt;" +&lt;br /&gt;   "&amp;lt;/And&amp;gt;" +&lt;br /&gt;   "&amp;lt;/Where&amp;gt;" +&lt;br /&gt;   "&amp;lt;/Query&amp;gt;" +&lt;br /&gt;   "&amp;lt;/View&amp;gt;";&lt;br /&gt;&lt;br /&gt;query.FolderServerRelativeUrl = srvRelativeURL;&lt;br /&gt;&lt;br /&gt;var folderItems = trgList.GetItems(query);&lt;br /&gt;&lt;br /&gt;clientContext.Load(trgList);&lt;br /&gt;clientContext.Load(folderItems);&lt;br /&gt;clientContext.ExecuteQuery();&lt;br /&gt;&lt;br /&gt;switch (folderItems.Count)&lt;br /&gt;{&lt;br /&gt; // process query result&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1366565687657887442-1590359499508054506?l=maxshulga.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://maxshulga.blogspot.com/feeds/1590359499508054506/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://maxshulga.blogspot.com/2010/06/sharepoint-2010-client-object-model-get.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/1590359499508054506'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/1590359499508054506'/><link rel='alternate' type='text/html' href='http://maxshulga.blogspot.com/2010/06/sharepoint-2010-client-object-model-get.html' title='SharePoint 2010 Client Object Model, get folder Item'/><author><name>Maxim Shulga (aka MaxBeard)</name><uri>http://www.blogger.com/profile/05615743910272666556</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_J8lG0A5J3Uw/S4zLX9EjLKI/AAAAAAAAADk/iJmrEfpqmV0/S220/My+Photo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1366565687657887442.post-5862718295159891905</id><published>2010-06-17T11:07:00.014+04:00</published><updated>2010-06-17T12:03:08.703+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint 2010'/><title type='text'>SharePoint 2010 Client Object Model, attachment creation</title><content type='html'>Unfortunately SCOM doesn't support attachment creation. It doesn't have any API which allows to create attachments if item has no attachment already.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Microsoft recommends to use Lists.asmx SharePoint web service if you need to create attachment remotely. Or create own &lt;a href="http://msdn.microsoft.com/en-us/library/ff521584(office.14).aspx"&gt;WCF service in the SharePoint context&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;If item already has attachments (at least one) you can add new attachments with using next approach:&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;using Microsoft.SharePoint.Client;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;using SP = Microsoft.SharePoint.Client;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;using System.IO;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;public static void AddListItemAttachment(string attachFilePath, string listUrl, string itemId)&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;ClientContext clientContext = new ClientContext(listUrl);&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Uri url = new Uri(listUrl);&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;using (FileStream strm = new FileInfo(attachFilePath).Open(FileMode.Open))&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;  &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;var attachUrl = url.AbsolutePath + "/Attachments/" + itemId + "/" + Path.GetFileName(attachFilePath);&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;  &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;SP.File.SaveBinaryDirect(clientContext, attachUrl, strm, true);&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;div&gt;This method is based on the knowledge that SharePoint stores item attachments in the special folder with path: &lt;b&gt;ListURL+"/Attachments/" + itemID&lt;/b&gt;.&lt;/div&gt;&lt;div&gt;But I didn't find a way to create this folder if it doesn't exist so this method works only if folder exists already (it means that item has at least 1 attachment already). Usual way for folder creation by SCOM doesn't work in this case(with error "Unable to complete action").&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1366565687657887442-5862718295159891905?l=maxshulga.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://maxshulga.blogspot.com/feeds/5862718295159891905/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://maxshulga.blogspot.com/2010/06/sharepoint-2010-client-object-model.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/5862718295159891905'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/5862718295159891905'/><link rel='alternate' type='text/html' href='http://maxshulga.blogspot.com/2010/06/sharepoint-2010-client-object-model.html' title='SharePoint 2010 Client Object Model, attachment creation'/><author><name>Maxim Shulga (aka MaxBeard)</name><uri>http://www.blogger.com/profile/05615743910272666556</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_J8lG0A5J3Uw/S4zLX9EjLKI/AAAAAAAAADk/iJmrEfpqmV0/S220/My+Photo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1366565687657887442.post-8156335203575966817</id><published>2010-06-17T11:04:00.002+04:00</published><updated>2010-06-17T11:07:27.060+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint'/><title type='text'>SharePoint Web Parts don't work with "Incorrect properties format" error</title><content type='html'>&lt;span class="Apple-style-span" style="font-family: Calibri, Verdana, Arial, Helvetica, sans-serif; font-size: 12px; color: rgb(51, 51, 51); line-height: 20px; "&gt;&lt;p&gt;&lt;strong&gt;&lt;em&gt;Issue&lt;/em&gt;&lt;/strong&gt;: Sometimes, when you open SharePoint 2007 site, you see that all web parts show&lt;/p&gt;&lt;p&gt;"&lt;b&gt;&lt;span style="font-family: Verdana, sans-serif; color: black; font-size: 8pt; "&gt;Web Part Error: &lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: Verdana, sans-serif; color: black; font-size: 8pt; "&gt;One of the properties of the Web Part has an incorrect format. Windows SharePoint Services cannot deserialize the Web Part. Check the format of the properties and try again.&lt;/span&gt;"&lt;/p&gt;&lt;p&gt;Furthermore, sometimes this site and its web part work correctly: you see all web part working. This behavior doesn't dependent from browser version or host. You're just clicking "Refresh" and see different results: web parts work or don't work.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;em&gt;Possible reason: &lt;/em&gt;&lt;/strong&gt;If you have more than 1 SharePoint front-end on the target farm, check, please, how do they work. If some of front-ends have problem with free disk space, you can observe problems with web part functionality. Eventlog on this front-end contains errors with ASP .NET 2.0 problems during the page generation.&lt;/p&gt;&lt;p&gt;During the "Refresh" in browser you can get results from different front-ends, it depends from your SharePoint load-balancing infrastructure. So you can see correct pages from "good" front-end and bad pages from "unhealthy" SharePoint front-end.&lt;/p&gt;&lt;p&gt;Issue is absent after disk cleanup on the "unhealthy" SharePoint front-end.&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/1366565687657887442-8156335203575966817?l=maxshulga.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://maxshulga.blogspot.com/feeds/8156335203575966817/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://maxshulga.blogspot.com/2010/06/sharepoint-web-parts-dont-work-with.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/8156335203575966817'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/8156335203575966817'/><link rel='alternate' type='text/html' href='http://maxshulga.blogspot.com/2010/06/sharepoint-web-parts-dont-work-with.html' title='SharePoint Web Parts don&apos;t work with &quot;Incorrect properties format&quot; error'/><author><name>Maxim Shulga (aka MaxBeard)</name><uri>http://www.blogger.com/profile/05615743910272666556</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_J8lG0A5J3Uw/S4zLX9EjLKI/AAAAAAAAADk/iJmrEfpqmV0/S220/My+Photo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1366565687657887442.post-5119496610716195408</id><published>2010-04-22T12:07:00.002+04:00</published><updated>2010-04-22T12:13:32.994+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint 2010'/><title type='text'>Introduction to querying lists with REST and ListData.svc in SharePoint 2010</title><content type='html'>&lt;a href="http://www.dotnetmafia.com/blogs/dotnettipoftheday/archive/2010/01/21/introduction-to-querying-lists-with-rest-and-listdata-svc-in-sharepoint-2010.aspx"&gt;http://www.dotnetmafia.com/blogs/dotnettipoftheday/archive/2010/01/21/introduction-to-querying-lists-with-rest-and-listdata-svc-in-sharepoint-2010.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;When you are getting started, the first thing you want to do is check and see if you have ListData.svc up and running.  Like any SharePoint web service, it’s located in the _vti_bin folder of any existing site, so it will work with items relative to that site.  Here is what a typical URL might look like.&lt;br /&gt;http://&lt;sharepoint-server&gt;/_vti_bin/ListData.svc&lt;br /&gt;…&lt;br /&gt;To get the data for this list via REST we simply just add the list name to the URL.  In my case the name of the list is called Tasks.  Here is what the URL would look like.&lt;br /&gt;http://&lt;sharepoint-server&gt;/_vti_bin/ListData.svc/&lt;listname&gt;&lt;br /&gt;&lt;br /&gt;you just want to know the status for a specific task (note that the site column is actually called StatusValue here), you can simply add it to the URL like this.&lt;br /&gt;http://&lt;sharepoint-server&gt;/_vti_bin/ListData.svc/&lt;listname&gt;(&lt;index&gt;)/(&lt;field&gt;)&lt;br /&gt;In my case:&lt;br /&gt;http://sp2010/_vti_bin/ListData.svc/Tasks(3)/StatusValue&lt;br /&gt;…&lt;br /&gt;&lt;br /&gt;You need to install &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=a71060eb-454e-4475-81a6-e9552b1034fc&amp;amp;displaylang=en"&gt;ADO.NET Data Services v1.5 CTP2&lt;/a&gt; on SharePoint front-end to get it working.&lt;br /&gt;&lt;/field&gt;&lt;/index&gt;&lt;/listname&gt;&lt;/sharepoint-server&gt;&lt;/listname&gt;&lt;/sharepoint-server&gt;&lt;/sharepoint-server&gt;&lt;div&gt;&lt;sharepoint-server&gt;&lt;sharepoint-server&gt;&lt;listname&gt;&lt;sharepoint-server&gt;&lt;listname&gt;&lt;index&gt;&lt;field&gt;&lt;br /&gt;&lt;/field&gt;&lt;/index&gt;&lt;/listname&gt;&lt;/sharepoint-server&gt;&lt;/listname&gt;&lt;/sharepoint-server&gt;&lt;/sharepoint-server&gt;&lt;/div&gt;&lt;div&gt;&lt;sharepoint-server&gt;&lt;sharepoint-server&gt;&lt;listname&gt;&lt;sharepoint-server&gt;&lt;listname&gt;&lt;index&gt;&lt;field&gt;Additional information: &lt;a href="http://blogs.msdn.com/astoriateam/archive/2009/10/21/using-data-services-over-sharepoint-2010-part-1-getting-started.aspx"&gt;Using Data Services over SharePoint 2010&lt;/a&gt;&lt;/field&gt;&lt;/index&gt;&lt;/listname&gt;&lt;/sharepoint-server&gt;&lt;/listname&gt;&lt;/sharepoint-server&gt;&lt;/sharepoint-server&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1366565687657887442-5119496610716195408?l=maxshulga.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://maxshulga.blogspot.com/feeds/5119496610716195408/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://maxshulga.blogspot.com/2010/04/introduction-to-querying-lists-with.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/5119496610716195408'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/5119496610716195408'/><link rel='alternate' type='text/html' href='http://maxshulga.blogspot.com/2010/04/introduction-to-querying-lists-with.html' title='Introduction to querying lists with REST and ListData.svc in SharePoint 2010'/><author><name>Maxim Shulga (aka MaxBeard)</name><uri>http://www.blogger.com/profile/05615743910272666556</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_J8lG0A5J3Uw/S4zLX9EjLKI/AAAAAAAAADk/iJmrEfpqmV0/S220/My+Photo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1366565687657887442.post-6995331269112763540</id><published>2010-04-09T14:15:00.005+04:00</published><updated>2010-04-09T14:22:14.827+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint'/><title type='text'>SharePoint 2010 Client Object Model</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_J8lG0A5J3Uw/S77_WSDAscI/AAAAAAAAAEQ/P9H_jbdzCVo/s1600/ClientObjectModel.png"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 320px; height: 133px;" src="http://2.bp.blogspot.com/_J8lG0A5J3Uw/S77_WSDAscI/AAAAAAAAAEQ/P9H_jbdzCVo/s320/ClientObjectModel.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5458080556686291394" /&gt;&lt;/a&gt;Now you can work with SharePoint remotely. Client code communicates to the server through Client OM which uses Client.svc WCF service to communicate with SharePoint Server. Client.svc service uses Server OM as per client request and returns the result to the client in JSON format.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1366565687657887442-6995331269112763540?l=maxshulga.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://maxshulga.blogspot.com/feeds/6995331269112763540/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://maxshulga.blogspot.com/2010/04/sharepoint-2010-client-object-model.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/6995331269112763540'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/6995331269112763540'/><link rel='alternate' type='text/html' href='http://maxshulga.blogspot.com/2010/04/sharepoint-2010-client-object-model.html' title='SharePoint 2010 Client Object Model'/><author><name>Maxim Shulga (aka MaxBeard)</name><uri>http://www.blogger.com/profile/05615743910272666556</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_J8lG0A5J3Uw/S4zLX9EjLKI/AAAAAAAAADk/iJmrEfpqmV0/S220/My+Photo.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_J8lG0A5J3Uw/S77_WSDAscI/AAAAAAAAAEQ/P9H_jbdzCVo/s72-c/ClientObjectModel.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1366565687657887442.post-7196167504907389249</id><published>2010-04-08T17:00:00.003+04:00</published><updated>2010-04-09T14:22:14.828+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint'/><title type='text'>Built-in SharePoint constants</title><content type='html'>&lt;a href="http://blog.hompus.nl/2010/02/05/prevent-hardcoded-sharepoint-ids-in-your-code"&gt;http://blog.hompus.nl/2010/02/05/prevent-hardcoded-sharepoint-ids-in-your-code&lt;/a&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="font-family:Arial, Helvetica, sans-serif;font-size:100%;"&gt;&lt;span class="Apple-style-span"  style=" line-height: 22px;font-size:13px;"&gt;&lt;span class="Apple-style-span" style="color: rgb(68, 68, 68); "&gt;The &lt;a href="http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.spbuiltinfieldid.aspx" target="_blank" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; outline-width: 0px; outline-style: initial; outline-color: initial; font-size: 13px; vertical-align: baseline; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: transparent; text-decoration: underline; color: rgb(33, 68, 105); background-position: initial initial; background-repeat: initial initial; "&gt;SPBuiltInFieldId class&lt;/a&gt; contains 314 GUID’s for the default SharePoint fields.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="font-family:Arial, Helvetica, sans-serif;font-size:100%;"&gt;&lt;span class="Apple-style-span"  style=" line-height: 22px;font-size:13px;"&gt;&lt;span class="Apple-style-span" style="color: rgb(68, 68, 68); "&gt;The &lt;a href="http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.spbuiltincontenttypeid.aspx" target="_blank" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; outline-width: 0px; outline-style: initial; outline-color: initial; font-size: 13px; vertical-align: baseline; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: transparent; text-decoration: underline; color: rgb(33, 68, 105); background-position: initial initial; background-repeat: initial initial; "&gt;SPBuiltInContentTypeId class&lt;/a&gt; contains 34 content type ID’s for the default SharePoint content types.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style=" color: rgb(68, 68, 68);  line-height: 22px; font-family:Arial, Helvetica, sans-serif;font-size:13px;"&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.splisttemplatetype.aspx" target="_blank" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; outline-width: 0px; outline-style: initial; outline-color: initial; font-size: 13px; vertical-align: baseline; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: transparent; text-decoration: underline; color: rgb(33, 68, 105); background-position: initial initial; background-repeat: initial initial; "&gt;SPListTemplateType enumeration&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style=" color: rgb(68, 68, 68);  line-height: 22px; font-family:Arial, Helvetica, sans-serif;font-size:13px;"&gt;The &lt;a href="http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.publishing.featureids.aspx" target="_blank" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; outline-width: 0px; outline-style: initial; outline-color: initial; font-size: 13px; vertical-align: baseline; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: transparent; text-decoration: underline; color: rgb(33, 68, 105); background-position: initial initial; background-repeat: initial initial; "&gt;FeatureIds class&lt;/a&gt; contains 16 GUID’s for the MOSS publishing features&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style=" color: rgb(68, 68, 68);  line-height: 22px; font-family:Arial, Helvetica, sans-serif;font-size:13px;"&gt;The &lt;a href="http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.publishing.fieldid.aspx" target="_blank" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; outline-width: 0px; outline-style: initial; outline-color: initial; font-size: 13px; vertical-align: baseline; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: transparent; text-decoration: underline; color: rgb(33, 68, 105); background-position: initial initial; background-repeat: initial initial; "&gt;FieldId class&lt;/a&gt; contains 61 GUID’s for the publishing fields.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style=" color: rgb(68, 68, 68);  line-height: 22px; font-family:Arial, Helvetica, sans-serif;font-size:13px;"&gt;The &lt;a href="http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.publishing.contenttypeid.aspx" target="_blank" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; outline-width: 0px; outline-style: initial; outline-color: initial; font-size: 13px; vertical-align: baseline; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: transparent; text-decoration: underline; color: rgb(33, 68, 105); background-position: initial initial; background-repeat: initial initial; "&gt;ContentTypeId class&lt;/a&gt; contains 10 content type ID’s for the publishing content types.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style=" color: rgb(68, 68, 68);  line-height: 22px; font-family:Arial, Helvetica, sans-serif;font-size:13px;"&gt;The &lt;a href="http://msdn.microsoft.com/en-us/library/microsoft.office.server.userprofiles.propertyconstants.aspx" target="_blank" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; outline-width: 0px; outline-style: initial; outline-color: initial; font-size: 13px; vertical-align: baseline; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: transparent; text-decoration: underline; color: rgb(33, 68, 105); background-position: initial initial; background-repeat: initial initial; "&gt;PropertyConstants class&lt;/a&gt; contains 42 names of the standard user profile properties&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style=" color: rgb(68, 68, 68);  line-height: 22px; font-family:Arial, Helvetica, sans-serif;font-size:13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style=" color: rgb(68, 68, 68);  line-height: 22px; font-family:Arial, Helvetica, sans-serif;font-size:13px;"&gt;&lt;p style="margin-top: 0px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; outline-width: 0px; outline-style: initial; outline-color: initial; font-size: 13px; vertical-align: baseline; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: transparent; background-position: initial initial; background-repeat: initial initial; "&gt;The WssFeatureIds class however is public and the only place the 24 WSS feature id’s are available.&lt;/p&gt;&lt;p style="margin-top: 0px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; outline-width: 0px; outline-style: initial; outline-color: initial; font-size: 13px; vertical-align: baseline; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: transparent; background-position: initial initial; background-repeat: initial initial; "&gt;Because this class is not documented I list all fields:&lt;/p&gt;&lt;blockquote style="margin-top: 10px; margin-right: 0px; margin-bottom: 20px; margin-left: 10px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 10px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 1px; border-style: initial; border-color: initial; outline-width: 0px; outline-style: initial; outline-color: initial; font-size: 13px; vertical-align: baseline; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: transparent; quotes: none; color: rgb(102, 102, 102); border-left-style: solid; border-left-color: rgb(222, 222, 222); background-position: initial initial; background-repeat: initial initial; "&gt;&lt;p style="margin-top: 0px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; outline-width: 0px; outline-style: initial; outline-color: initial; font-size: 13px; vertical-align: baseline; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: transparent; background-position: initial initial; background-repeat: initial initial; "&gt;AnnouncementsList&lt;br /&gt;BasicWebParts&lt;br /&gt;ContactsList&lt;br /&gt;CustomList&lt;br /&gt;DataConnectionLibrary&lt;br /&gt;DataSourceLibrary&lt;br /&gt;DiscussionsList&lt;br /&gt;DocumentLibrary&lt;br /&gt;EventsList&lt;br /&gt;GanttTasksList&lt;br /&gt;GlobalContentTypes&lt;br /&gt;GlobalFields&lt;br /&gt;GlobalMobilityRedirect&lt;br /&gt;GridList&lt;br /&gt;IssuesList&lt;br /&gt;LinksList&lt;br /&gt;NoCodeWorkflowLibrary&lt;br /&gt;PictureLibrary&lt;br /&gt;SurveysList&lt;br /&gt;TasksList&lt;br /&gt;TeamCollaboration&lt;br /&gt;WebPageLibrary&lt;br /&gt;WorkflowHistoryList&lt;br /&gt;XmlFormLibrary&lt;/p&gt;&lt;/blockquote&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1366565687657887442-7196167504907389249?l=maxshulga.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://maxshulga.blogspot.com/feeds/7196167504907389249/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://maxshulga.blogspot.com/2010/04/built-in-sharepoint-constants.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/7196167504907389249'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/7196167504907389249'/><link rel='alternate' type='text/html' href='http://maxshulga.blogspot.com/2010/04/built-in-sharepoint-constants.html' title='Built-in SharePoint constants'/><author><name>Maxim Shulga (aka MaxBeard)</name><uri>http://www.blogger.com/profile/05615743910272666556</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_J8lG0A5J3Uw/S4zLX9EjLKI/AAAAAAAAADk/iJmrEfpqmV0/S220/My+Photo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1366565687657887442.post-8390086741859926111</id><published>2010-04-07T16:38:00.004+04:00</published><updated>2010-08-20T17:09:04.349+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='django'/><category scheme='http://www.blogger.com/atom/ns#' term='web'/><title type='text'>Django sessions and forms in IE</title><content type='html'>&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.djangoproject.com/"&gt;Django&lt;/a&gt; framework allows to store user data in the current browser &lt;a href="http://docs.djangoproject.com/en/dev/topics/http/sessions/"&gt;session&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Each HttpRequest request has session attribute which is dictionary-like object:&lt;/div&gt;&lt;div&gt;request.session['context'] = '2k3'&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;But keep in the mind that this operation changes current session and it can affect the browser behaviour.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;For instance, Internet Explorer enforces page refreshing during previous page loading by "Back"operation. So if you had completed form there (on the previous page) - form's data is lost with "Back" in browser.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1366565687657887442-8390086741859926111?l=maxshulga.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://maxshulga.blogspot.com/feeds/8390086741859926111/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://maxshulga.blogspot.com/2010/04/django-sessions-and-forms-in-ie.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/8390086741859926111'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/8390086741859926111'/><link rel='alternate' type='text/html' href='http://maxshulga.blogspot.com/2010/04/django-sessions-and-forms-in-ie.html' title='Django sessions and forms in IE'/><author><name>Maxim Shulga (aka MaxBeard)</name><uri>http://www.blogger.com/profile/05615743910272666556</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_J8lG0A5J3Uw/S4zLX9EjLKI/AAAAAAAAADk/iJmrEfpqmV0/S220/My+Photo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1366565687657887442.post-3655406665630112849</id><published>2010-03-30T12:31:00.001+04:00</published><updated>2010-03-30T12:36:09.958+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='testing'/><title type='text'>Test Lint (Beta): Find common problems in your unit test code</title><content type='html'>&lt;p class="MsoNormal"&gt;&lt;span style="Tahoma&amp;quot;,&amp;quot;sans-serif&amp;quot;; position:relative;top:3.0pt;mso-text-raise:-3.0ptfont-family:&amp;quot;;font-size:10.5pt;color:#7F7F7F;"&gt;&lt;a href="http://site.typemock.com/test-lint/"&gt;http://site.typemock.com/test-lint/&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; I think it can be interesting for developers who use C# and VS2010:&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; “&lt;span class="apple-style-span"&gt;&lt;span style=" Verdana&amp;quot;,&amp;quot;sans-serif&amp;quot;;font-family:&amp;quot;;font-size:9.0pt;color:#262626;"&gt;Writing unit tests is easy. Writing good unit tests – that are readable, maintainable and trust-worthy is a bit harder if you’ve never done it before. So we took&lt;/span&gt;&lt;/span&gt;&lt;span class="apple-converted-space"&gt;&lt;span style="Verdana&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-family:&amp;quot;;font-size:9.0pt;color:#262626;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="apple-style-span"&gt;&lt;span style="Verdana&amp;quot;,&amp;quot;sans-serif&amp;quot;;font-family:&amp;quot;;font-size:9.0pt;color:#262626;"&gt;&lt;a href="http://osherove.com/"&gt;&lt;span style="color:#276CA1;"&gt;Roy Osherove&lt;/span&gt;&lt;span class="apple-converted-space"&gt;&lt;span style="text-decoration:none; text-underline:nonecolor:#276CA1;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/a&gt;(author of&lt;/span&gt;&lt;/span&gt;&lt;span class="apple-converted-space"&gt;&lt;span style="Verdana&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-family:&amp;quot;;font-size:9.0pt;color:#262626;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="apple-style-span"&gt;&lt;span style="Verdana&amp;quot;,&amp;quot;sans-serif&amp;quot;;font-family:&amp;quot;;font-size:9.0pt;color:#262626;"&gt;&lt;a href="http://artofunittesting.com/"&gt;&lt;span style="color:#276CA1;"&gt;The Art of Unit Testing&lt;/span&gt;&lt;/a&gt;) and asked him to write down, based on his massive experience with unit testing, common problems that people do when they first start unit testing. Then we put that knowledge inside a Visual Studio 2010 extension– it’s like having your own personal coach letting you know of problems as you type them, really.&lt;/span&gt;&lt;/span&gt;”&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;span class="Apple-style-span"   style="  color: rgb(38, 38, 38); font-family:Verdana, sans-serif;font-size:12px;"&gt;Test Lint parses your code as you type it, and looks for common problems in your unit test code – from missing asserts to having tests depend on other tests – Test Lint will notify you on the spot about each possible issue with a visible queue right inside your editor, right next to the link where the issue appears.&lt;/span&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="line-height:15.75pt"&gt;&lt;o:p&gt; &lt;span class="Apple-style-span"   style="  color: rgb(38, 38, 38); font-family:Verdana, sans-serif;font-size:12px;"&gt;&lt;b&gt;Test Lint will detect issues in tests written with&lt;/b&gt;:&lt;/span&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="line-height:15.75pt"&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;span class="Apple-style-span"   style="  ;font-family:Verdana, sans-serif;font-size:12px;"&gt;Microsoft Test Framework&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span"   style="  ;font-family:Verdana, sans-serif;font-size:12px;"&gt;NUnit&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span"   style="  ;font-family:Verdana, sans-serif;font-size:12px;"&gt;MbUnit&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span"   style="  ;font-family:Verdana, sans-serif;font-size:12px;"&gt;XUnit.NET&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span"   style=" line-height: normal;  font-family:Verdana, sans-serif;font-size:12px;"&gt;CsUnit&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1366565687657887442-3655406665630112849?l=maxshulga.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://maxshulga.blogspot.com/feeds/3655406665630112849/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://maxshulga.blogspot.com/2010/03/test-lint-beta-find-common-problems-in.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/3655406665630112849'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/3655406665630112849'/><link rel='alternate' type='text/html' href='http://maxshulga.blogspot.com/2010/03/test-lint-beta-find-common-problems-in.html' title='Test Lint (Beta): Find common problems in your unit test code'/><author><name>Maxim Shulga (aka MaxBeard)</name><uri>http://www.blogger.com/profile/05615743910272666556</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_J8lG0A5J3Uw/S4zLX9EjLKI/AAAAAAAAADk/iJmrEfpqmV0/S220/My+Photo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1366565687657887442.post-1068177112703148060</id><published>2010-03-23T17:01:00.002+03:00</published><updated>2010-03-23T17:05:03.110+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint'/><title type='text'>Move a SharePoint Content Database</title><content type='html'>&lt;div&gt;&lt;a href="http://keirgordon.com/"&gt;By Stefan Keir Gordon&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;a href="http://keirgordon.com/post/Move-a-SharePoint-Content-Database.aspx"&gt;It's pretty easy&lt;/a&gt;:&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', Arial, Helvetica, sans-serif; font-size: 12px; color: rgb(34, 34, 34); line-height: 21px; "&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', Arial, Helvetica, sans-serif; font-size: 12px; color: rgb(34, 34, 34); line-height: 21px; "&gt;Sometimes it's the easy things that are hard to track down concrete instructions for!  Here are step by step instructions for moving your MOSS content database to a new server, followed by the things to watch out for.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', Arial, Helvetica, sans-serif; font-size: 12px; color: rgb(34, 34, 34); line-height: 21px; "&gt;&lt;p style="margin-top: 10px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;You have two initial options, doing a backup and restore within MOSS to move the data, or doing it at the SQL/STSADM level.  I prefer the latter, as it isn't nearly as inclined to fail and leaves you with more flexibility.&lt;/p&gt;&lt;p style="margin-top: 10px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;1) Find the content Database&lt;/p&gt;&lt;blockquote style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;p style="margin-top: 10px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; color:#333333;"&gt;These are listed under Central Admin-&gt;Application Management-&gt;Site Collection List&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p style="margin-top: 10px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;2) Backup the content database&lt;/p&gt;&lt;blockquote style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;p style="margin-top: 10px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; color:#333333;"&gt;You could alternatively detach it, and copy it.  Just doing a backup in SQL Server 2005 Management studio is easier.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p style="margin-top: 10px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;3) Restore content database to new server&lt;/p&gt;&lt;blockquote style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;p style="margin-top: 10px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; color:#333333;"&gt;Copy the BAK file to new server.  Create an empty DB in Management Studio, restore from backup, you may need to change an option in the "options" tab of the restore dialog to get it to work.  (Overwrite db). &lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p style="margin-top: 10px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;4) Create Web App on new Server&lt;/p&gt;&lt;blockquote style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;p style="margin-top: 10px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; color:#333333;"&gt;&lt;b&gt;Central Admin-&gt;Application Management-&gt;Create or extend Web App-&gt;Create New Web App.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p style="margin-top: 10px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;5) Associate restored DB with new Web App&lt;/p&gt;&lt;blockquote style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;p style="margin-top: 10px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; color:#333333;"&gt;&lt;b&gt;Central Admin-&gt;Application Management-&gt;SharePoint Web Application Management-&gt;Content Databases-&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 10px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; color:#333333;"&gt;Remove Content Database from your new web app.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 10px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; color:#333333;"&gt;Now use STSADM to add restored DB to this web app&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 10px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; color:#333333;"&gt;c:\program files\common files\microsoft shared\web server extentions\12\bin on new server is where you can find the STSADM.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 10px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; color:#333333;"&gt;run this command from there.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 10px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; color:#333333;"&gt;stsadm -o addcontentdb -url &lt;a href="http://yourwebapp:port/" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; text-decoration: none; color: rgb(158, 175, 43); "&gt;http://yourwebapp:port&lt;/a&gt; -databasename yourcontentdb -databaseserver yoursqlserver&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p style="margin-top: 10px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;6) Run &lt;b&gt;ISSRESET &lt;/b&gt;from command prompt.&lt;/p&gt;&lt;p style="margin-top: 10px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt; Caveats:&lt;/p&gt;&lt;ul style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 20px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; list-style-image: url(http://keirgordon.com/themes/stefantheme/images/bullet.png); "&gt;&lt;li style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;Make sure your running the same service pack level on both source and destination sharepoint if possible.&lt;/li&gt;&lt;li style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;Make sure you install all webparts, solutions, features, etc on new server before you restore the content database, so that it can find all the features it's looking for.&lt;/li&gt;&lt;li style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;Make sure you copy any files that may be living in the file system that you need, sometimes people have css/javascript here.  (This refers to files in the hive)&lt;/li&gt;&lt;li style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;Leave your old site and contentDB intact until you get the backup running on the new server, this way your ok if there is a problem.&lt;/li&gt;&lt;li style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;DON'T try this with your config database! It won't work!&lt;/li&gt;&lt;/ul&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1366565687657887442-1068177112703148060?l=maxshulga.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://maxshulga.blogspot.com/feeds/1068177112703148060/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://maxshulga.blogspot.com/2010/03/move-sharepoint-content-database.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/1068177112703148060'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/1068177112703148060'/><link rel='alternate' type='text/html' href='http://maxshulga.blogspot.com/2010/03/move-sharepoint-content-database.html' title='Move a SharePoint Content Database'/><author><name>Maxim Shulga (aka MaxBeard)</name><uri>http://www.blogger.com/profile/05615743910272666556</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_J8lG0A5J3Uw/S4zLX9EjLKI/AAAAAAAAADk/iJmrEfpqmV0/S220/My+Photo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1366565687657887442.post-6254672949658317984</id><published>2010-03-22T10:31:00.002+03:00</published><updated>2010-03-23T12:31:32.597+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint'/><title type='text'>Get all users with Full Control for the web</title><content type='html'>&lt;span class="Apple-style-span" style="font-family: 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; color: rgb(51, 51, 51); font-size: 13px; line-height: 16px; "&gt;&lt;p style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-weight: inherit; font-style: inherit; font-family: inherit; margin-top: 1em; margin-right: 0px; margin-bottom: 1em; margin-left: 0px; outline-width: 0px; outline-style: initial; outline-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; list-style-type: none; text-decoration: none; "&gt;Instead of user enumeration and check roles for each user, you can get role assignments for web and get all users for corresponding role.&lt;/p&gt;&lt;p style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-weight: inherit; font-style: inherit; font-family: inherit; margin-top: 1em; margin-right: 0px; margin-bottom: 1em; margin-left: 0px; outline-width: 0px; outline-style: initial; outline-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; list-style-type: none; text-decoration: none; "&gt;Like this:&lt;/p&gt;&lt;p style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-weight: inherit; font-style: inherit; font-family: inherit; margin-top: 1em; margin-right: 0px; margin-bottom: 1em; margin-left: 0px; outline-width: 0px; outline-style: initial; outline-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; list-style-type: none; text-decoration: none; "&gt;using(SPWeb web = SPSite(webUrl).OpenWeb())&lt;/p&gt;&lt;p style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-weight: inherit; font-style: inherit; font-family: inherit; margin-top: 1em; margin-right: 0px; margin-bottom: 1em; margin-left: 0px; outline-width: 0px; outline-style: initial; outline-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; list-style-type: none; text-decoration: none; "&gt;&lt;span style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-weight: inherit; font-style: inherit; font-family: inherit; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; outline-width: 0px; outline-style: initial; outline-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; white-space: pre; "&gt; &lt;/span&gt;{&lt;/p&gt;&lt;p style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-weight: inherit; font-style: inherit; font-family: inherit; margin-top: 1em; margin-right: 0px; margin-bottom: 1em; margin-left: 0px; outline-width: 0px; outline-style: initial; outline-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; list-style-type: none; text-decoration: none; "&gt;&lt;span style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-weight: inherit; font-style: inherit; font-family: inherit; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; outline-width: 0px; outline-style: initial; outline-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; white-space: pre; "&gt; &lt;/span&gt;SPRoleDefinitionCollection roleDefinitions = web.RoleDefinitions;&lt;/p&gt;&lt;p style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-weight: inherit; font-style: inherit; font-family: inherit; margin-top: 1em; margin-right: 0px; margin-bottom: 1em; margin-left: 0px; outline-width: 0px; outline-style: initial; outline-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; list-style-type: none; text-decoration: none; "&gt;&lt;span style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-weight: inherit; font-style: inherit; font-family: inherit; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; outline-width: 0px; outline-style: initial; outline-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; white-space: pre; "&gt; &lt;/span&gt;SPRoleDefinition roleDefinition = roleDefinitions["Full Control"];&lt;/p&gt;&lt;p style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-weight: inherit; font-style: inherit; font-family: inherit; margin-top: 1em; margin-right: 0px; margin-bottom: 1em; margin-left: 0px; outline-width: 0px; outline-style: initial; outline-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; list-style-type: none; text-decoration: none; "&gt; &lt;/p&gt;&lt;p style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-weight: inherit; font-style: inherit; font-family: inherit; margin-top: 1em; margin-right: 0px; margin-bottom: 1em; margin-left: 0px; outline-width: 0px; outline-style: initial; outline-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; list-style-type: none; text-decoration: none; "&gt;&lt;span style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-weight: inherit; font-style: inherit; font-family: inherit; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; outline-width: 0px; outline-style: initial; outline-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; white-space: pre; "&gt; &lt;/span&gt;foreach (SPRoleAssignment roleAssigment in web.RoleAssignments)&lt;/p&gt;&lt;p style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-weight: inherit; font-style: inherit; font-family: inherit; margin-top: 1em; margin-right: 0px; margin-bottom: 1em; margin-left: 0px; outline-width: 0px; outline-style: initial; outline-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; list-style-type: none; text-decoration: none; "&gt;&lt;span style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-weight: inherit; font-style: inherit; font-family: inherit; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; outline-width: 0px; outline-style: initial; outline-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; white-space: pre; "&gt; &lt;/span&gt;{&lt;/p&gt;&lt;p style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-weight: inherit; font-style: inherit; font-family: inherit; margin-top: 1em; margin-right: 0px; margin-bottom: 1em; margin-left: 0px; outline-width: 0px; outline-style: initial; outline-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; list-style-type: none; text-decoration: none; "&gt;&lt;span style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-weight: inherit; font-style: inherit; font-family: inherit; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; outline-width: 0px; outline-style: initial; outline-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; white-space: pre; "&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/span&gt;if (roleAssigment.RoleDefinitionBindings.Contains(roleDefinition))&lt;/p&gt;&lt;p style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-weight: inherit; font-style: inherit; font-family: inherit; margin-top: 1em; margin-right: 0px; margin-bottom: 1em; margin-left: 0px; outline-width: 0px; outline-style: initial; outline-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; list-style-type: none; text-decoration: none; "&gt;&lt;span style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-weight: inherit; font-style: inherit; font-family: inherit; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; outline-width: 0px; outline-style: initial; outline-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; white-space: pre; "&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/span&gt;{&lt;/p&gt;&lt;p style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-weight: inherit; font-style: inherit; font-family: inherit; margin-top: 1em; margin-right: 0px; margin-bottom: 1em; margin-left: 0px; outline-width: 0px; outline-style: initial; outline-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; list-style-type: none; text-decoration: none; "&gt;&lt;span style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-weight: inherit; font-style: inherit; font-family: inherit; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; outline-width: 0px; outline-style: initial; outline-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; white-space: pre; "&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; &lt;/span&gt;SPPrincipal oPrincipal = roleAssigment.Member;//it can be SPUser or SPGroup, you can process and add it to the result&lt;/p&gt;&lt;p style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-weight: inherit; font-style: inherit; font-family: inherit; margin-top: 1em; margin-right: 0px; margin-bottom: 1em; margin-left: 0px; outline-width: 0px; outline-style: initial; outline-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; list-style-type: none; text-decoration: none; "&gt;&lt;span style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-weight: inherit; font-style: inherit; font-family: inherit; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; outline-width: 0px; outline-style: initial; outline-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; white-space: pre; "&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/span&gt;}&lt;/p&gt;&lt;p style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-weight: inherit; font-style: inherit; font-family: inherit; margin-top: 1em; margin-right: 0px; margin-bottom: 1em; margin-left: 0px; outline-width: 0px; outline-style: initial; outline-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; list-style-type: none; text-decoration: none; "&gt;&lt;span style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-weight: inherit; font-style: inherit; font-family: inherit; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; outline-width: 0px; outline-style: initial; outline-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; white-space: pre; "&gt; &lt;/span&gt;}&lt;/p&gt;&lt;p style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-weight: inherit; font-style: inherit; font-family: inherit; margin-top: 1em; margin-right: 0px; margin-bottom: 1em; margin-left: 0px; outline-width: 0px; outline-style: initial; outline-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; list-style-type: none; text-decoration: none; "&gt;&lt;span style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-weight: inherit; font-style: inherit; font-family: inherit; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; outline-width: 0px; outline-style: initial; outline-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; white-space: pre; "&gt; &lt;/span&gt;}&lt;/p&gt;&lt;p style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-weight: inherit; font-style: inherit; font-family: inherit; margin-top: 1em; margin-right: 0px; margin-bottom: 1em; margin-left: 0px; outline-width: 0px; outline-style: initial; outline-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; list-style-type: none; text-decoration: none; "&gt;&lt;a href="http://social.msdn.microsoft.com/Forums/en-US/sharepointdevelopment/thread/9381b51c-5183-43dd-98e8-203ba6a4d2aa/"&gt;MSDN forum&lt;/a&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/1366565687657887442-6254672949658317984?l=maxshulga.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://maxshulga.blogspot.com/feeds/6254672949658317984/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://maxshulga.blogspot.com/2010/03/get-all-users-with-full-control-for-web.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/6254672949658317984'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/6254672949658317984'/><link rel='alternate' type='text/html' href='http://maxshulga.blogspot.com/2010/03/get-all-users-with-full-control-for-web.html' title='Get all users with Full Control for the web'/><author><name>Maxim Shulga (aka MaxBeard)</name><uri>http://www.blogger.com/profile/05615743910272666556</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_J8lG0A5J3Uw/S4zLX9EjLKI/AAAAAAAAADk/iJmrEfpqmV0/S220/My+Photo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1366565687657887442.post-564231993016736909</id><published>2010-03-19T11:04:00.001+03:00</published><updated>2010-03-30T12:35:12.153+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='testing'/><title type='text'>Interview with Uncle Bob Martin (TDD, craftsmanship)</title><content type='html'>&lt;p class="MsoNormal"&gt;&lt;span class="apple-style-span"&gt;&lt;span style="font-family:&amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black"&gt;&lt;span style="font-size:11.0pt;font-family:&amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; mso-fareast-font-family:Calibri;mso-fareast-theme-font:minor-latin;mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;;mso-ansi-language:EN-US;mso-fareast-language:EN-US; mso-bidi-language:AR-SA"&gt;&lt;a href="http://blog.typemock.com/2010/03/finally-entire-interview-with-uncle-bob.html"&gt;http://blog.typemock.com/2010/03/finally-entire-interview-with-uncle-bob.html&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span class="apple-style-span"&gt;&lt;span style="font-family:&amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black"&gt;What is software craftsmanship all about?&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span class="apple-style-span"&gt;&lt;span style="font-family:&amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black"&gt;Why TDD is not stupid&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span class="apple-style-span"&gt;&lt;span style="font-family:&amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black"&gt;Confessions of a TDDer&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span class="apple-style-span"&gt;&lt;span style="font-family:&amp;quot;Trebuchet MS&amp;quot;,&amp;quot;sans-serif&amp;quot;; color:black"&gt;TDD and unit testing adoption&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1366565687657887442-564231993016736909?l=maxshulga.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://maxshulga.blogspot.com/feeds/564231993016736909/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://maxshulga.blogspot.com/2010/03/interview-with-uncle-bob-martin-tdd.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/564231993016736909'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/564231993016736909'/><link rel='alternate' type='text/html' href='http://maxshulga.blogspot.com/2010/03/interview-with-uncle-bob-martin-tdd.html' title='Interview with Uncle Bob Martin (TDD, craftsmanship)'/><author><name>Maxim Shulga (aka MaxBeard)</name><uri>http://www.blogger.com/profile/05615743910272666556</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_J8lG0A5J3Uw/S4zLX9EjLKI/AAAAAAAAADk/iJmrEfpqmV0/S220/My+Photo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1366565687657887442.post-8965230464431276382</id><published>2010-03-17T14:10:00.002+03:00</published><updated>2010-03-23T12:31:41.750+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint'/><title type='text'>Import WSS 3.0 Doclib to SharePoint 2010 with Content Migration API</title><content type='html'>It works. &lt;div&gt;You need just to change the schema version in SystemData.xml file to new SharePoint 2010 version ("14.0.0.0" Build="14.0.4730.1010" for my lab).&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;related &lt;a href="http://social.technet.microsoft.com/Forums/en-US/sharepoint2010programming/thread/65ff2983-2ceb-418d-9c51-1f8fefd36476/?prof=required"&gt;MSDN forum thread&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1366565687657887442-8965230464431276382?l=maxshulga.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://maxshulga.blogspot.com/feeds/8965230464431276382/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://maxshulga.blogspot.com/2010/03/import-wss-30-doclib-to-sharepoint-2010.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/8965230464431276382'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/8965230464431276382'/><link rel='alternate' type='text/html' href='http://maxshulga.blogspot.com/2010/03/import-wss-30-doclib-to-sharepoint-2010.html' title='Import WSS 3.0 Doclib to SharePoint 2010 with Content Migration API'/><author><name>Maxim Shulga (aka MaxBeard)</name><uri>http://www.blogger.com/profile/05615743910272666556</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_J8lG0A5J3Uw/S4zLX9EjLKI/AAAAAAAAADk/iJmrEfpqmV0/S220/My+Photo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1366565687657887442.post-3296983828147203881</id><published>2010-03-17T10:52:00.001+03:00</published><updated>2010-03-17T10:54:35.248+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint'/><title type='text'>Ghosted vs Unghosted and where the file lives</title><content type='html'>&lt;span class="Apple-style-span" style="font-family: 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; color: rgb(51, 51, 51); font-size: 13px; line-height: 16px; "&gt;&lt;div&gt;Ghosted == Uncustomized == lives on the file system&lt;/div&gt;&lt;br /&gt;These are generally deployed using features or site definitions&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Unghosted == customized == lives in the content databse.&lt;br /&gt;&lt;br /&gt;These files are either files that have been modified using SharePoint designer or uploaded through the user interface.&lt;br /&gt;&lt;br /&gt;Generally Ghosted/unghosted were the terms used with SP 2003, while customized/uncustomized were introduced with 2007, supposedly to make the terms easier to understand.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://platinumdogs.wordpress.com/2009/08/13/uncustomized-ghosts-vs-unghosted-customizations/" style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; font-weight: inherit; font-style: inherit; font-family: inherit; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; outline-width: 0px; outline-style: initial; outline-color: initial; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; color: rgb(0, 102, 221); cursor: pointer; text-decoration: none; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; list-style-type: none; "&gt;http://platinumdogs.wordpress.com/2009/08/13/uncustomized-ghosts-vs-unghosted-customizations/&lt;/a&gt;&lt;/span&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 13px; color: rgb(51, 51, 51); line-height: 16px; "&gt;From MSDN forum: &lt;a href="http://social.msdn.microsoft.com/Forums/en-US/sharepointgeneral/thread/0ea34cd4-c463-4595-baaa-fc240dc99374"&gt;Original thread&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1366565687657887442-3296983828147203881?l=maxshulga.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://maxshulga.blogspot.com/feeds/3296983828147203881/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://maxshulga.blogspot.com/2010/03/ghosted-vs-unghosted-and-where-file.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/3296983828147203881'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/3296983828147203881'/><link rel='alternate' type='text/html' href='http://maxshulga.blogspot.com/2010/03/ghosted-vs-unghosted-and-where-file.html' title='Ghosted vs Unghosted and where the file lives'/><author><name>Maxim Shulga (aka MaxBeard)</name><uri>http://www.blogger.com/profile/05615743910272666556</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_J8lG0A5J3Uw/S4zLX9EjLKI/AAAAAAAAADk/iJmrEfpqmV0/S220/My+Photo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1366565687657887442.post-1486733205729114024</id><published>2010-03-10T16:50:00.002+03:00</published><updated>2010-03-10T16:52:34.630+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint'/><title type='text'>SPExportSettings.FileMaxSize - limitations</title><content type='html'>&lt;div&gt;MSDN describes that &lt;a href="http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.deployment.spexportsettings.filemaxsize.aspx"&gt;FileMaxSize&lt;/a&gt; allows to set 2GB.&lt;/div&gt;&lt;div&gt;But it looks like that it works with range from 1 to 1023 only, at least it tries to work :)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;For any values &gt;= 1024 the export uses default cmp size = 24MB&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Also is interesting that stsadm has 1024 as a &lt;a href="http://msdn.microsoft.com/en-us/library/bb507233.aspx"&gt;maximum cabsize value&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;FileMaxSize &lt;/b&gt;works, at least I can get 10MB package. But the export fails on my lab with &lt;b&gt;FileMaxSize &lt;/b&gt;&gt; 100: "FatalError: Export ran out of memory while compressing a very large file. To successfully export, turn compression off by specifying the -nofilecompression parameter."&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I have tried to export 6GB site and export works only with &lt;b&gt;FileMaxSize &lt;/b&gt;&lt;= 100. I think "100" can depend from real site data size. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://soerennielsen.wordpress.com/2007/06/19/the-long-path-to-content-deployment/"&gt;There&lt;/a&gt; is interesting point that error can be raised due the manifest.xml size. I think that true is somewhere near, because compression works with default size. Probably the compression can not split some long description of object from manifest.xml between several files. &lt;/div&gt;&lt;div&gt;Looks like a bug.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1366565687657887442-1486733205729114024?l=maxshulga.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://maxshulga.blogspot.com/feeds/1486733205729114024/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://maxshulga.blogspot.com/2010/03/spexportsettingsfilemaxsize-limitations_10.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/1486733205729114024'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/1486733205729114024'/><link rel='alternate' type='text/html' href='http://maxshulga.blogspot.com/2010/03/spexportsettingsfilemaxsize-limitations_10.html' title='SPExportSettings.FileMaxSize - limitations'/><author><name>Maxim Shulga (aka MaxBeard)</name><uri>http://www.blogger.com/profile/05615743910272666556</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_J8lG0A5J3Uw/S4zLX9EjLKI/AAAAAAAAADk/iJmrEfpqmV0/S220/My+Photo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1366565687657887442.post-5953287685913106143</id><published>2010-03-03T11:17:00.007+03:00</published><updated>2010-03-03T13:31:47.125+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint'/><title type='text'>SPExportObject.IncludeDescendants vs SPExportObject.ExcludeChildrens, what's the difference?</title><content type='html'>&lt;p class="MsoNoSpacing"&gt;Really, what's the difference between children and descendants?&lt;/p&gt;  &lt;p class="MsoNoSpacing"&gt;MSDN doesn't say about this difference: &lt;a href="http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.deployment.spexportobject.includedescendants.aspx"&gt;&lt;span style="color:blue;"&gt;IncludeDescendants&lt;/span&gt;&lt;/a&gt;, &lt;a href="http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.deployment.spexportobject.excludechildren.aspx"&gt;&lt;span style="color:blue;"&gt;ExcludeChildren&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt;  &lt;p class="MsoNoSpacing"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNoSpacing"&gt;But it looks like that &lt;b&gt;IncludeDescendants&lt;/b&gt; is more flexible.&lt;/p&gt;  &lt;p class="MsoNoSpacing"&gt;Export result shows that:&lt;/p&gt;  &lt;p class="MsoNoSpacing"&gt;· &lt;b&gt;&lt;i&gt;ExcludeChildren = true&lt;/i&gt;&lt;/b&gt; is the same with &lt;b&gt;&lt;i&gt;IncludeDescendants = SPIncludeDescendants.Content&lt;/i&gt;&lt;/b&gt;.&lt;/p&gt;  &lt;p class="MsoNoSpacing"&gt;· &lt;b&gt;&lt;i&gt;ExcludeChildren = false &lt;/i&gt;&lt;/b&gt;goes to &lt;b&gt;&lt;i&gt;IncludeDescendants = SPIncludeDescendants.All&lt;/i&gt;&lt;/b&gt;.&lt;/p&gt;  &lt;p class="MsoNoSpacing"&gt;&lt;o:p&gt; Ok, let check how the export depends from &lt;b&gt;&lt;i&gt;IncludeDescendants &lt;/i&gt;&lt;/b&gt;value and ExportObject type.&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNoSpacing"&gt;&lt;b&gt;&lt;i&gt;&lt;o:p&gt; &lt;span class="Apple-style-span" style="font-style: normal; font-weight: normal; "&gt;&lt;b&gt;&lt;i&gt;&lt;span class="Apple-style-span"  style="color:#990000;"&gt;SPDeploymentObjectType.Web&lt;/span&gt;:&lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;/o:p&gt;&lt;/i&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNoSpacing"&gt;&lt;b&gt;&lt;i&gt;&lt;span style="mso-tab-count:1"&gt;                &lt;/span&gt;SPIncludeDescendants.All&lt;/i&gt;&lt;/b&gt; &lt;span style="mso-bidi-font-weight:bold;mso-bidi-font-style:italic"&gt;–&lt;/span&gt;all web content and its sub-containers (like doclibs and lists) with sub-sites is exported&lt;/p&gt;  &lt;p class="MsoNoSpacing"&gt;&lt;b&gt;&lt;i&gt;&lt;span style="mso-tab-count:1"&gt;                &lt;/span&gt;SPIncludeDescendants.Content &lt;/i&gt;&lt;/b&gt;&lt;span style="mso-bidi-font-weight:bold;mso-bidi-font-style:italic"&gt;– only root web content (doclibs, lists) is exported, without sub-sites&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNoSpacing"&gt;&lt;span style="mso-bidi-font-weight:bold;mso-bidi-font-style: italic"&gt;&lt;span style="mso-tab-count:1"&gt;                &lt;/span&gt;&lt;b&gt;&lt;i&gt;SPIncludeDescendants.None&lt;/i&gt;&lt;/b&gt; – exports only web property and service containers (like galleries). Usual doclibs and lists are not exported. In this mode export result doesn’t contain any custom aspx files from root web folder. /_themes, /images subfolders are excluded from the export also.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNoSpacing"&gt;&lt;b&gt;&lt;i&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/i&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNoSpacing"&gt;&lt;b&gt;&lt;i&gt;&lt;span class="Apple-style-span"  style="color:#990000;"&gt;SPDeploymentObjectType.List&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/i&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNoSpacing"&gt;&lt;b&gt;&lt;i&gt;&lt;span style="mso-tab-count:1"&gt;                &lt;/span&gt;SPIncludeDescendants.Content, SPIncludeDescendants.All&lt;/i&gt;&lt;/b&gt;&lt;span style="mso-bidi-font-weight:bold; mso-bidi-font-style:italic"&gt; – full list content is exported&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNoSpacing"&gt;&lt;b&gt;&lt;i&gt;&lt;span style="mso-tab-count:1"&gt;                &lt;/span&gt;SPIncludeDescendants.None &lt;/i&gt;&lt;/b&gt;&lt;span style="mso-bidi-font-weight:bold;mso-bidi-font-style:italic"&gt;– only list properties are exported, no content&lt;span style="mso-tab-count:1"&gt;       &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNoSpacing"&gt;&lt;span style="mso-bidi-font-weight:bold;mso-bidi-font-style: italic"&gt;&lt;span style="mso-tab-count:1"&gt;                &lt;/span&gt;&lt;b&gt;&lt;i&gt;ExcludeChildren &lt;/i&gt;&lt;/b&gt;– doesn’t work for List because it maps to &lt;i&gt;&lt;span class="Apple-style-span" style="font-style: normal;"&gt;SPIncludeDescendants.Content or SPIncludeDescendants.All&lt;/span&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-style: normal;"&gt;,&lt;/span&gt;&lt;/b&gt;&lt;span class="Apple-style-span" style="font-style: normal;"&gt; those have the same export result. &lt;/span&gt;Note: MSDN says that ExcludeChildren works for List, but I do not see difference between results for ExcludeChildren = true or false. But it works for Folder!&lt;o:p&gt;&lt;/o:p&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNoSpacing"&gt;&lt;i&gt;&lt;span style="mso-bidi-font-weight:bold"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;  &lt;p class="MsoNoSpacing"&gt;&lt;b&gt;&lt;i&gt;&lt;span class="Apple-style-span"  style="color:#990000;"&gt;SPDeploymentObjectType.Folder&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/i&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNoSpacing"&gt;&lt;b&gt;&lt;i&gt;&lt;span style="mso-tab-count:1"&gt;                &lt;/span&gt;SPIncludeDescendants.All&lt;/i&gt;&lt;/b&gt; (or &lt;b&gt;&lt;i&gt;ExcludeChildren = false&lt;/i&gt;&lt;/b&gt;)&lt;span style="mso-bidi-font-weight:bold; mso-bidi-font-style:italic"&gt;–&lt;/span&gt; full folder and its sub-folders content is exported&lt;/p&gt;  &lt;p class="MsoNoSpacing"&gt;&lt;b&gt;&lt;i&gt;&lt;span style="mso-tab-count:1"&gt;                &lt;/span&gt;SPIncludeDescendants.Content &lt;/i&gt;&lt;/b&gt;(or &lt;b&gt;&lt;i&gt;ExcludeChildren = true&lt;/i&gt;&lt;/b&gt;)&lt;b&gt;&lt;i&gt; and None &lt;/i&gt;&lt;/b&gt;&lt;span style="mso-bidi-font-weight:bold;mso-bidi-font-style:italic"&gt;– only folder properties is exported!&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1366565687657887442-5953287685913106143?l=maxshulga.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://maxshulga.blogspot.com/feeds/5953287685913106143/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://maxshulga.blogspot.com/2010/03/spexportobjectincludedescendants-vs.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/5953287685913106143'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/5953287685913106143'/><link rel='alternate' type='text/html' href='http://maxshulga.blogspot.com/2010/03/spexportobjectincludedescendants-vs.html' title='SPExportObject.IncludeDescendants vs SPExportObject.ExcludeChildrens, what&apos;s the difference?'/><author><name>Maxim Shulga (aka MaxBeard)</name><uri>http://www.blogger.com/profile/05615743910272666556</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_J8lG0A5J3Uw/S4zLX9EjLKI/AAAAAAAAADk/iJmrEfpqmV0/S220/My+Photo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1366565687657887442.post-2064944426752924943</id><published>2010-03-02T12:05:00.003+03:00</published><updated>2010-03-02T12:19:54.227+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint'/><title type='text'>About SharePoint limitations</title><content type='html'>For URLs (&lt;a href="http://www.sharepointjoel.com/Lists/Posts/Post.aspx?ID=111"&gt;by Joel&lt;/a&gt;) &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;For item&amp;amp;doc count (&lt;a href="http://blog.krichie.com/2007/02/14/can-you-really-have-more-than-2000-items-per-folder-in-sharepoint-now/"&gt;by Keith&lt;/a&gt;)&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1366565687657887442-2064944426752924943?l=maxshulga.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://maxshulga.blogspot.com/feeds/2064944426752924943/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://maxshulga.blogspot.com/2010/03/about-sharepoint-limitations.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/2064944426752924943'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/2064944426752924943'/><link rel='alternate' type='text/html' href='http://maxshulga.blogspot.com/2010/03/about-sharepoint-limitations.html' title='About SharePoint limitations'/><author><name>Maxim Shulga (aka MaxBeard)</name><uri>http://www.blogger.com/profile/05615743910272666556</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_J8lG0A5J3Uw/S4zLX9EjLKI/AAAAAAAAADk/iJmrEfpqmV0/S220/My+Photo.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1366565687657887442.post-2870664041113380795</id><published>2010-03-02T11:22:00.000+03:00</published><updated>2010-03-02T11:24:15.662+03:00</updated><title type='text'>It was pretty easy.</title><content type='html'>I didn't think that blog creation is very easy. But it's true.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1366565687657887442-2870664041113380795?l=maxshulga.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://maxshulga.blogspot.com/feeds/2870664041113380795/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://maxshulga.blogspot.com/2010/03/it-was-pretty-easy.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/2870664041113380795'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1366565687657887442/posts/default/2870664041113380795'/><link rel='alternate' type='text/html' href='http://maxshulga.blogspot.com/2010/03/it-was-pretty-easy.html' title='It was pretty easy.'/><author><name>Maxim Shulga (aka MaxBeard)</name><uri>http://www.blogger.com/profile/05615743910272666556</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_J8lG0A5J3Uw/S4zLX9EjLKI/AAAAAAAAADk/iJmrEfpqmV0/S220/My+Photo.png'/></author><thr:total>0</thr:total></entry></feed>
