<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>CCMEXEC.COM - System Center blog</title>
	<atom:link href="http://ccmexec.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://ccmexec.com</link>
	<description>CCMEXEC.COM - by Jörgen Nilsson</description>
	<lastBuildDate>Tue, 21 Feb 2012 14:29:27 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Windows Installer hotfix for your Configuration Manager 2012 clients</title>
		<link>http://ccmexec.com/2012/02/windows-installer-hotfix-for-your-configuration-manager-2012-clients/</link>
		<comments>http://ccmexec.com/2012/02/windows-installer-hotfix-for-your-configuration-manager-2012-clients/#comments</comments>
		<pubDate>Tue, 21 Feb 2012 14:29:27 +0000</pubDate>
		<dc:creator>Jörgen Nilsson</dc:creator>
				<category><![CDATA[System Center Configuration Manager]]></category>

		<guid isPermaLink="false">http://ccmexec.com/?p=1795</guid>
		<description><![CDATA[I ran in to this a while ago and did it again now so I thought I would share it here. There is a hotfix for Windows Installer which solves a problem when for instance a windows 7 computer needs to self-repair an windows installer based installation and the source files are located at the [...]]]></description>
			<content:encoded><![CDATA[<p>I ran in to this a while ago and did it again now so I thought I would share it here. There is a hotfix for Windows Installer which solves a problem when for instance a windows 7 computer needs to self-repair an windows installer based installation and the source files are located at the Configuration Manager 2012 distribution point and is accessible via HTTP.</p>
<p>Title: &#8220;HTTP Error 401.1&#8243; error message when Msiexec.exe updates an MSI file in Windows Vista, in Windows 7, in Windows Server 2008, or in Windows Server 2008 R2&#8243;</p>
<p>Symptoms:<br />
Assume that you deploy an application to a client computer that is running one of the following operating systems by using System Center Configuration Manager 2012:<br />
•Windows Vista<br />
•Windows 7<br />
•Windows Server 2008<br />
•Windows Server 2008 R2<br />
When the deployment of the application is finished, the Microsoft Installer Package (MSI) file is removed from the local drive. Then, the ConfigMgr client updates the MSI source list by accessing the content server. This behavior is controlled by the self-healing functionality. When the self-healing functionality is triggered, Msiexec.exe tries to access the content path anonymously instead of by using the credentials of the user who currently logs on the client computer. However, the Secure Windows Initiative (SWI) guidelines do not allow anonymous access to content servers. Therefore, you receive the following error message:</p>
<p>The full article can be found here:<br />
<a href="http://support.microsoft.com/kb/2619572"> http://support.microsoft.com/kb/2619572</a></p>

<div class="like">
<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fccmexec.com%2F2012%2F02%2Fwindows-installer-hotfix-for-your-configuration-manager-2012-clients%2F&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;font=&amp;colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true" style="border:none; overflow:hidden; width:450px; height:62px; "></iframe>
</div>
]]></content:encoded>
			<wfw:commentRss>http://ccmexec.com/2012/02/windows-installer-hotfix-for-your-configuration-manager-2012-clients/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Installing multiple Windows 7 hotfixes(.msu) with SCCM</title>
		<link>http://ccmexec.com/2012/02/installing-multiple-windows-7-hotfixes-msu-with-sccm/</link>
		<comments>http://ccmexec.com/2012/02/installing-multiple-windows-7-hotfixes-msu-with-sccm/#comments</comments>
		<pubDate>Fri, 10 Feb 2012 11:21:16 +0000</pubDate>
		<dc:creator>Jörgen Nilsson</dc:creator>
				<category><![CDATA[System Center Configuration Manager]]></category>

		<guid isPermaLink="false">http://ccmexec.com/?p=1786</guid>
		<description><![CDATA[Sometimes you want to deploy more that one Windows 7 hotfix with Configuration Manager. The hotfixes for Windows 7 is .MSU files and are installed using Wusa.exe.
If you wan to make the hotfix installation silent you simply add /quiet /norestart on the command line aswell.
Example command line: Wusa.exe c:\temp\Windows6.1-KB982018-v3-x64.msu /quiet /norestart
To simplify the installation I have [...]]]></description>
			<content:encoded><![CDATA[<p>Sometimes you want to deploy more that one Windows 7 hotfix with Configuration Manager. The hotfixes for Windows 7 is .MSU files and are installed using Wusa.exe.<br />
If you wan to make the hotfix installation silent you simply add <span style="font-family: monospace;">/quiet /norestart</span> on the command line aswell.</p>
<p>Example command line: <span style="font-family: monospace;">Wusa.exe c:\temp\Windows6.1-KB982018-v3-x64.msu /</span><span style="font-family: monospace;">quiet /norestart</span></p>
<p>To simplify the installation I have made a small script the will parse all the files in the same directory as the script and install all files which ends with .MSU automatically. It can both be used to distribute the hotfixes using software distribution or in a Task Sequence so you can install the updates during OSD.</p>
<p><a href="http://ccmexec.com/wp-content/uploads/2012/02/multiple_msu.PNG"><img class="aligncenter size-full wp-image-1787" title="multiple_msu" src="http://ccmexec.com/wp-content/uploads/2012/02/multiple_msu.PNG" alt="multiple_msu" width="591" height="164" /><br />
</a>To use it simply save the script in the same folder as you Windows 7 hotfixes you want to deploy and then create a package and program with the folder as package source and the command line configured as below.</p>
<p><a href="http://ccmexec.com/wp-content/uploads/2012/02/multiple_msu1.PNG"><img class="aligncenter size-full wp-image-1788" title="multiple_msu1" src="http://ccmexec.com/wp-content/uploads/2012/02/multiple_msu1.PNG" alt="multiple_msu1" width="400" height="464" /></a></p>
<p>I strongly recommend that you allow configuration manager to restart the computer, otherwise the user can be prompted by the Windows Update agent to restart within 10  minutes.</p>
<p>If you need to troubleshoot it run it with allow user to interact, then you will see the updates being displayed in a command prompt.</p>
<p>Installmsu.vbs script:</p>
<p><code> </code></p>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><code>Dim objfso, objShell</code></div>
<p><code> </code></p>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><code>Dim folder, files, sFolder, folderidx, Iretval, return</code></div>
<p><code></p>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">Set objfso = CreateObject("Scripting.FileSystemObject")</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">Set objShell = CreateObject("Wscript.Shell")</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">sFolder = left(WScript.ScriptFullName,(Len(WScript.ScriptFullName))-(len(WScript.ScriptName)))</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">Set folder = objfso.GetFolder(sFolder)</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">Set files = folder.Files</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">For each folderIdx In files</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>If Ucase(Right(folderIdx.name,3)) = "MSU" then</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>wscript.echo "wusa.exe " &amp; sfolder &amp; folderidx.name &amp; " /quiet /norestart"</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>iretval=objShell.Run ("wusa.exe " &amp; sfolder &amp; folderidx.name &amp; " /quiet /norestart", 1, True)</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span> If (iRetVal = 0) or (iRetVal = 3010) then</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span> <span style="white-space: pre;"> </span>wscript.echo folderidx.name &amp; " Success"</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span> Else</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>wscript.echo folderidx.name &amp; " Failed"<span style="white-space: pre;"> </span></div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>wscript.quit(1)</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span> End If</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>End If</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">Next</div>
<p>Dim objfso, objShell</p>
<p>Dim folder, files, sFolder, folderidx, Iretval, return</p>
<p>Set objfso = CreateObject("Scripting.FileSystemObject")</p>
<p>Set objShell = CreateObject("Wscript.Shell")</p>
<p>sFolder = left(WScript.ScriptFullName,(Len(WScript.ScriptFullName))-(len(WScript.ScriptName)))</p>
<p>Set folder = objfso.GetFolder(sFolder)</p>
<p>Set files = folder.Files</p>
<p>For each folderIdx In files</p>
<p>If Ucase(Right(folderIdx.name,3)) = "MSU" then</p>
<p>wscript.echo "wusa.exe " &amp; sfolder &amp; folderidx.name &amp; " /quiet /norestart"</p>
<p>iretval=objShell.Run ("wusa.exe " &amp; sfolder &amp; folderidx.name &amp; " /quiet /norestart", 1, True)</p>
<p>If (iRetVal = 0) or (iRetVal = 3010) then</p>
<p>wscript.echo folderidx.name &amp; " Success"</p>
<p>Else</p>
<p>wscript.echo folderidx.name &amp; " Failed"</p>
<p>wscript.quit(1)</p>
<p>End If</p>
<p>End If</p>
<p></code></p>
<p><code>Next<br />
</code></p>

<div class="like">
<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fccmexec.com%2F2012%2F02%2Finstalling-multiple-windows-7-hotfixes-msu-with-sccm%2F&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;font=&amp;colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true" style="border:none; overflow:hidden; width:450px; height:62px; "></iframe>
</div>
]]></content:encoded>
			<wfw:commentRss>http://ccmexec.com/2012/02/installing-multiple-windows-7-hotfixes-msu-with-sccm/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>System Center 2012 Configuration Manager Survival Guide &#8211; Technet Wiki</title>
		<link>http://ccmexec.com/2012/02/system-center-2012-configuration-manager-survival-guide-technet-wiki/</link>
		<comments>http://ccmexec.com/2012/02/system-center-2012-configuration-manager-survival-guide-technet-wiki/#comments</comments>
		<pubDate>Fri, 10 Feb 2012 11:04:27 +0000</pubDate>
		<dc:creator>Jörgen Nilsson</dc:creator>
				<category><![CDATA[System Center Configuration Manager]]></category>

		<guid isPermaLink="false">http://ccmexec.com/?p=1784</guid>
		<description><![CDATA[There is a great source of Configuration Manager 2012 information in the System Center 2012 Configuration Manager Survival Guide on Technet. Make sure to check it out, there are links to blog posts, videos, articles and blogs on System Center 2012 Configuration Manager.
It is truly a great place to start looking for information about Configuration [...]]]></description>
			<content:encoded><![CDATA[<p>There is a great source of Configuration Manager 2012 information in the System Center 2012 Configuration Manager Survival Guide on Technet. Make sure to check it out, there are links to blog posts, videos, articles and blogs on System Center 2012 Configuration Manager.</p>
<p>It is truly a great place to start looking for information about Configuration Manager 2012.</p>
<p>You find it here: <a href="http://social.technet.microsoft.com/wiki/contents/articles/7075.system-center-2012-configuration-manager-survival-guide.aspx" target="_blank">http://social.technet.microsoft.com/wiki/contents/articles/7075.system-center-2012-configuration-manager-survival-guide.aspx</a></p>

<div class="like">
<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fccmexec.com%2F2012%2F02%2Fsystem-center-2012-configuration-manager-survival-guide-technet-wiki%2F&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;font=&amp;colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true" style="border:none; overflow:hidden; width:450px; height:62px; "></iframe>
</div>
]]></content:encoded>
			<wfw:commentRss>http://ccmexec.com/2012/02/system-center-2012-configuration-manager-survival-guide-technet-wiki/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Make it harder to uninstall the FEP client</title>
		<link>http://ccmexec.com/2012/02/make-it-harder-to-uninstall-the-fep-client/</link>
		<comments>http://ccmexec.com/2012/02/make-it-harder-to-uninstall-the-fep-client/#comments</comments>
		<pubDate>Wed, 08 Feb 2012 20:55:37 +0000</pubDate>
		<dc:creator>Jörgen Nilsson</dc:creator>
				<category><![CDATA[System Center Configuration Manager]]></category>

		<guid isPermaLink="false">http://ccmexec.com/?p=1769</guid>
		<description><![CDATA[As we all know FEP doesn&#8217;t have tamper protection or the possibility to password protect the uninstallation of the FEP client. I normally use the collection query I posted before on my blog to automate the re-installation of the FEP client if it is uninstalled. http://ccmexec.com/2011/11/forefront-endpoint-protection-and-locally-removed/
But in the case where we have users that are local admins, [...]]]></description>
			<content:encoded><![CDATA[<p>As we all know FEP doesn&#8217;t have tamper protection or the possibility to password protect the uninstallation of the FEP client. I normally use the collection query I posted before on my blog to automate the re-installation of the FEP client if it is uninstalled. <a href="http://ccmexec.com/2011/11/forefront-endpoint-protection-and-locally-removed/">http://ccmexec.com/2011/11/forefront-endpoint-protection-and-locally-removed/</a></p>
<p>But in the case where we have users that are local admins, I know it is a pain but the real-world, I try to do one of these tricks as well to at least make it harder for them to uninstall the FEP client.</p>
<p>1. Remove the Uninstallstring registry value for the FEP client, then the FEP client is no longer visible under uninstall a program in the Control Panel. I use this really simple script to achieve it:</p>
<p><code></p>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 69px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">const HKEY_LOCAL_MACHINE = &amp;H80000002</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 69px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">Set oReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\default:StdRegProv")</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 69px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">strKeyPath = "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Microsoft Security Client"</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 69px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">strStringValueName = "UninstallString"</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 69px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">oReg.DeleteValue HKEY_LOCAL_MACHINE,strKeyPath,strStringValueName</div>
<p>const HKEY_LOCAL_MACHINE = &amp;H80000002</p>
<p>Set oReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\default:StdRegProv")</p>
<p>strKeyPath = "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Microsoft Security Client"</p>
<p>strStringValueName = "UninstallString"</p>
<p></code></p>
<p><code>oReg.DeleteValue HKEY_LOCAL_MACHINE,strKeyPath,strStringValueName<br />
</code></p>
<p>2. The second option is to replace the uninstall key with a script prompting the user that it is not allowed to uninstall the FEP client, getting the below result.</p>
<p style="text-align: center;"><a href="http://ccmexec.com/wp-content/uploads/2012/02/FEP_Uninstall1.PNG"><img class="aligncenter size-full wp-image-1771" title="FEP_Uninstall" src="http://ccmexec.com/wp-content/uploads/2012/02/FEP_Uninstall1.PNG" alt="FEP_Uninstall" width="640" height="481" /></a></p>
<p>I simply copy a vbscript with the below content to the C:\windows directory and then run it from there, sample script for the promptscript:</p>
<p><code><br />
MsgBox "FEP is not allowed to be uninstalled", 0, "FEP Uninstaller"</code></p>
<p><code> </code><br />
Sample script for replacing the FEP uninstall string:</p>
<p><code><br />
const HKEY_LOCAL_MACHINE = &amp;H80000002</code></p>
<p><code>Set oReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\default:StdRegProv")</code></p>
<p><code>strKeyPath = "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Microsoft Security Client"</code></p>
<p><code>strStringValueName = "UninstallString"</code></p>
<p><code>strvalue = "wscript.exe c:\windows\fepuninst.vbs"</code></p>
<p><code> </code></p>
<p><code>oReg.SetStringValue HKEY_LOCAL_MACHINE,strKeyPath,strStringValueName,strValue</code></p>
<p>I hope this can be helpful, it isn&#8217;t pretty but it does it&#8217;s job.</p>

<div class="like">
<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fccmexec.com%2F2012%2F02%2Fmake-it-harder-to-uninstall-the-fep-client%2F&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;font=&amp;colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true" style="border:none; overflow:hidden; width:450px; height:62px; "></iframe>
</div>
]]></content:encoded>
			<wfw:commentRss>http://ccmexec.com/2012/02/make-it-harder-to-uninstall-the-fep-client/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Set AD Computer Description during OSD</title>
		<link>http://ccmexec.com/2012/01/set-computer-description-during-osd/</link>
		<comments>http://ccmexec.com/2012/01/set-computer-description-during-osd/#comments</comments>
		<pubDate>Thu, 26 Jan 2012 19:29:31 +0000</pubDate>
		<dc:creator>Jörgen Nilsson</dc:creator>
				<category><![CDATA[System Center Configuration Manager]]></category>

		<guid isPermaLink="false">http://ccmexec.com/?p=1757</guid>
		<description><![CDATA[There was a question on Technet forum a couple of weeks ago so I thought I would post it here as well. It can in some scenarios be useful to set the computers AD description during SCCM OS deployment. I use a script for this which can be used to set the AD description using [...]]]></description>
			<content:encoded><![CDATA[<p>There was a question on Technet forum a couple of weeks ago so I thought I would post it here as well. It can in some scenarios be useful to set the computers AD description during SCCM OS deployment. I use a script for this which can be used to set the AD description using  a variable like for instance a Computer or Collection variable that can be filled in during the deployment or a value from MDT variables if you like.</p>
<p>This is the script I use:</p>
<p><code><br />
dim Computerdn, strComputerName</code></p>
<p><code> </code></p>
<p><code>dim Args</code></p>
<p><code>Set WshShell = WScript.CreateObject("WScript.Shell")</code></p>
<p><code> </code></p>
<p><code>'----Get Computer DN------</code></p>
<p><code>Set objADSysInfo = CreateObject("ADSystemInfo")</code></p>
<p><code>ComputerDN = objADSysInfo.ComputerName</code></p>
<p><code>strcomputerdn = "LDAP://" &amp; computerDN</code></p>
<p><code>Set objADSysInfo = Nothing</code></p>
<p><code>'-----Read commandline---</code></p>
<p><code>Set args = WScript.Arguments</p>
<p>strdesc = args(0)</p>
<p>Addcompdesc strdesc</p>
<p>Function addcompdesc(strPCdescription)</p>
<p><span style="white-space: pre;"> </span>Set objComputer = GetObject (strComputerDN)</p>
<p><span style="white-space: pre;"> </span>objComputer.Put "Description", strPCdescription</p>
<p><span style="white-space: pre;"> </span>objComputer.SetInfo</p>
<p></code></p>
<p><code>end function<br />
</code><br />
Then I run it from a package in the task sequence. It must be run after the &#8220;Setup Windows &amp; ConfigMgr&#8221; step, so that the computer is restarted after it is joined to the domain.<br />
The account which executes the script must have permissions in the AD to set the AD Description. Just replace the %desc% with the variable you want to use or static value if you want to use that.</p>
<p><a href="http://ccmexec.com/wp-content/uploads/2012/01/ADDesc1.PNG"><img class="aligncenter size-full wp-image-1758" title="ADDesc1" src="http://ccmexec.com/wp-content/uploads/2012/01/ADDesc1.PNG" alt="ADDesc1" width="650" height="602" /></a></p>
<p>If you want to be prompted for an AD description when the Task Sequence starts create a Collection variable for the OSD Collection with an empty value like this:</p>
<p><a href="http://ccmexec.com/wp-content/uploads/2012/01/ADDesc2.PNG"><img class="aligncenter size-full wp-image-1759" title="ADDesc2" src="http://ccmexec.com/wp-content/uploads/2012/01/ADDesc2.PNG" alt="ADDesc2" width="439" height="302" /></a></p>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">dim Strdomainpath</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">dim Computerdn, strComputerName</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">dim Args</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">Set WshShell = WScript.CreateObject(&#8221;WScript.Shell&#8221;)</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">&#8216;&#8212;-Get Computer DN&#8212;&#8212;</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">Set objADSysInfo = CreateObject(&#8221;ADSystemInfo&#8221;)</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">ComputerDN = objADSysInfo.ComputerName</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">strcomputerdn = &#8220;LDAP://&#8221; &amp; computerDN</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">Set objADSysInfo = Nothing</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">&#8216;&#8212;&#8211;Read commandline&#8212;</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">Set args = WScript.Arguments</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">strdesc = args(0)</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">Addcompdesc strdesc</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">Function addcompdesc(strPCdescription)</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>Set objComputer = GetObject (strComputerDN)</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>objComputer.Put &#8220;Description&#8221;, strPCdescription</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>objComputer.SetInfo</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">end function&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</div>

<div class="like">
<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fccmexec.com%2F2012%2F01%2Fset-computer-description-during-osd%2F&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;font=&amp;colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true" style="border:none; overflow:hidden; width:450px; height:62px; "></iframe>
</div>
]]></content:encoded>
			<wfw:commentRss>http://ccmexec.com/2012/01/set-computer-description-during-osd/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Prevent the monitor to enter power save during OSD</title>
		<link>http://ccmexec.com/2012/01/prevent-the-monitor-to-enter-power-save-during-osd/</link>
		<comments>http://ccmexec.com/2012/01/prevent-the-monitor-to-enter-power-save-during-osd/#comments</comments>
		<pubDate>Wed, 25 Jan 2012 19:34:05 +0000</pubDate>
		<dc:creator>Jörgen Nilsson</dc:creator>
				<category><![CDATA[System Center Configuration Manager]]></category>

		<guid isPermaLink="false">http://ccmexec.com/?p=1750</guid>
		<description><![CDATA[When you have a task sequence in SCCM with many steps the monitor goes into power save mode before the installation is complete. In some cases the end-user can believe that the computer installation is finished and closes the lid on the laptop and goes home and the OS installation fails. It is also really [...]]]></description>
			<content:encoded><![CDATA[<p>When you have a task sequence in SCCM with many steps the monitor goes into power save mode before the installation is complete. In some cases the end-user can believe that the computer installation is finished and closes the lid on the laptop and goes home and the OS installation fails. It is also really annoying when waiting for an installation is complete.</p>
<p>I use the following to simple steps in my Windows 7 deployment task sequence to prevent the computer monitor for entering power save.</p>
<p>The first step simple configures the current power scheme to not turn off the monitor when power is connected, this command must run after the &#8220;Setup Windows and ConfigMgr&#8221; step so that the computer has restart with the locally installed OS:</p>
<p><a href="http://ccmexec.com/wp-content/uploads/2012/01/sccmpower1.PNG"><img class="aligncenter size-full wp-image-1751" title="sccmpower1" src="http://ccmexec.com/wp-content/uploads/2012/01/sccmpower1.PNG" alt="sccmpower1" width="650" height="603" /></a></p>
<p>When the installation of the OS is complete i simply restore the Power Scheme back to default by running the following command. When the OS deployment is complete I simply configure the power option either by using Group policy Preferences or Configuration Manager.<br />
<a href="http://ccmexec.com/wp-content/uploads/2012/01/sccmpower2.PNG"><img class="aligncenter size-full wp-image-1752" title="sccmpower2" src="http://ccmexec.com/wp-content/uploads/2012/01/sccmpower2.PNG" alt="sccmpower2" width="650" height="600" /></a></p>

<div class="like">
<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fccmexec.com%2F2012%2F01%2Fprevent-the-monitor-to-enter-power-save-during-osd%2F&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;font=&amp;colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true" style="border:none; overflow:hidden; width:450px; height:62px; "></iframe>
</div>
]]></content:encoded>
			<wfw:commentRss>http://ccmexec.com/2012/01/prevent-the-monitor-to-enter-power-save-during-osd/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SCCM Summit 2012</title>
		<link>http://ccmexec.com/2012/01/sccm-summit-2012-2/</link>
		<comments>http://ccmexec.com/2012/01/sccm-summit-2012-2/#comments</comments>
		<pubDate>Tue, 24 Jan 2012 06:06:01 +0000</pubDate>
		<dc:creator>Jörgen Nilsson</dc:creator>
				<category><![CDATA[System Center Configuration Manager]]></category>

		<guid isPermaLink="false">http://ccmexec.com/?p=1743</guid>
		<description><![CDATA[Last week on the 17-18 of January the SCCM Summit 2012 event arranged by Cornerstone took place in Stockholm Sweden. A great event focusing on System Center 2012: Configuration Manager for 1 1/2 days. The event hosted speakers like Johan Arwidmark, Anders Ahl, Niall Brady and Peter Frodin.
I had the great opportunity to deliver three [...]]]></description>
			<content:encoded><![CDATA[<p>Last week on the 17-18 of January the SCCM Summit 2012 event arranged by Cornerstone took place in Stockholm Sweden. A great event focusing on System Center 2012: Configuration Manager for 1 1/2 days. The event hosted speakers like <a href="http://www.deploymentresearch.com/Home.aspx">Johan Arwidmark</a>, Anders Ahl, <a href="http://myitforum.com/cs2/blogs/nbrady/">Niall Brady</a> and Peter Frodin.<br />
I had the great opportunity to deliver three sessions myself:</p>
<ul>
<li>System Center 2012: Endpoint Protection</li>
<li>CM 2012 Application Management part 1</li>
<li>CM 2012 Application Management part 2</li>
</ul>
<p>It was great fun and a really great event! Thanks Cornerstone for a great event and thanks to everyone who attended, looking forward to next year!</p>
<p><a href="http://ccmexec.com/wp-content/uploads/2012/01/SCCM_Summit.jpg"><img class="aligncenter size-full wp-image-1744" title="SCCM_Summit" src="http://ccmexec.com/wp-content/uploads/2012/01/SCCM_Summit.jpg" alt="SCCM_Summit" width="456" height="342" /></a></p>

<div class="like">
<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fccmexec.com%2F2012%2F01%2Fsccm-summit-2012-2%2F&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;font=&amp;colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true" style="border:none; overflow:hidden; width:450px; height:62px; "></iframe>
</div>
]]></content:encoded>
			<wfw:commentRss>http://ccmexec.com/2012/01/sccm-summit-2012-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Unattended installation of SCCM 2007 Admin Console including R3</title>
		<link>http://ccmexec.com/2012/01/unattended-installation-of-sccm-2007-admin-console-including-r3/</link>
		<comments>http://ccmexec.com/2012/01/unattended-installation-of-sccm-2007-admin-console-including-r3/#comments</comments>
		<pubDate>Tue, 03 Jan 2012 14:42:03 +0000</pubDate>
		<dc:creator>Jörgen Nilsson</dc:creator>
				<category><![CDATA[System Center Configuration Manager]]></category>

		<guid isPermaLink="false">http://ccmexec.com/?p=1711</guid>
		<description><![CDATA[I wrote a post a year ago or more about how to install the SCCM 2007 Admin Console including R2, this is something I use a lot in my projects as it is more and more to install when installing the Admin Console.
In the example below I install the Admin Console, the required hotfix(kb977384) and [...]]]></description>
			<content:encoded><![CDATA[<p>I wrote a post a year ago or more about how to install the SCCM 2007 Admin Console including R2, this is something I use a lot in my projects as it is more and more to install when installing the Admin Console.<br />
In the example below I install the Admin Console, the required hotfix(kb977384) and R3. If you are using Forefront Endpoint Protection you need to install the FEP Admin UI extensions as well on your client machines which should have the SCCM console locally installed, I will post an example of a script with the FEP integration later on.</p>
<p>When R3 came along the SCCM 2007 R3 requires a hotfix(KB977384) which restarts a lot of services on the computer during installation for instance ccmexec, WMI and so on, if a Task Sequence or application installation runs it will stop and return error.<br />
so I wrote a little vbscript which uses a .MIF file to report the installation status back to the SCCM server. It will report any errors back to the SCCM server so that it is easy to troubleshoot.</p>
<p>The script can be downloaded here: <a href="http://ccmexec.com/wp-content/uploads/2012/01/Install1.txt">Install</a></p>
<p>To implement the script do the following:</p>
<ol>
<li> Copy the needed installation media to a folder with the following sub-folders.<br />
<a rel="attachment wp-att-1712" href="http://ccmexec.com/2012/01/unattended-installation-of-sccm-2007-admin-console-including-r3/sccm_adminui_r33/"><img class="aligncenter size-full wp-image-1712" title="sccm_adminui_r33" src="http://ccmexec.com/wp-content/uploads/2012/01/sccm_adminui_r33.PNG" alt="sccm_adminui_r33" width="527" height="139" /></a><strong>Note:</strong> to save space I deleted files in the WAIK directory from the Configuration Manager SP2 installation source as these files are not needed to install the admin console.</li>
<li> Save the downloaded vbscript to the folder you just created and rename it to <strong>install.vbs</strong>.</li>
<li>Create a Unattend.ini file in the ConfigMgr_sp2 folder with the following content, you need to change the server name to your SCCM Primary Site server.<br />
<code><br />
[Identification]<br />
Action=InstallAdminUI<br />
[Options]<br />
SMSInstallDir=c:\program files\Configuration Manager 2007<br />
ParentSiteServer=SCCM1<br />
SDKServer=SCCM1<br />
</code></li>
<li>In SCCM Create a Package with the source folder beeing the folder structure just created.</li>
<li>In the package properties configure the following under the reporting tab: (this is used to match the .mif file generated by the script with the package)<br />
<a rel="attachment wp-att-1713" href="http://ccmexec.com/2012/01/unattended-installation-of-sccm-2007-admin-console-including-r3/sccm_adminui_r31/"><img class="aligncenter size-full wp-image-1713" title="sccm_adminui_r31" src="http://ccmexec.com/wp-content/uploads/2012/01/sccm_adminui_r31.PNG" alt="sccm_adminui_r31" width="403" height="485" /></a></li>
<li>Create a program with the following settings:<br />
<a rel="attachment wp-att-1714" href="http://ccmexec.com/2012/01/unattended-installation-of-sccm-2007-admin-console-including-r3/sccm_adminui_r32/"><img class="aligncenter size-full wp-image-1714" title="sccm_adminui_r32" src="http://ccmexec.com/wp-content/uploads/2012/01/sccm_adminui_r32.PNG" alt="sccm_adminui_r32" width="405" height="466" /></a></li>
<li>If you want to display the installation progress in a cmd windows to the users, configure the program to &#8220;Allow users to interact with this program&#8221;</li>
<li>Add the package to your Distribution Points</li>
<li>Advertise the program to a test collection and start testing.</li>
</ol>
<p>I hope this can be useful for more than me.</p>

<div class="like">
<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fccmexec.com%2F2012%2F01%2Funattended-installation-of-sccm-2007-admin-console-including-r3%2F&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;font=&amp;colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true" style="border:none; overflow:hidden; width:450px; height:62px; "></iframe>
</div>
]]></content:encoded>
			<wfw:commentRss>http://ccmexec.com/2012/01/unattended-installation-of-sccm-2007-admin-console-including-r3/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>SCCM 2007 Report: Windows 7 computers without SP1</title>
		<link>http://ccmexec.com/2011/12/sccm-2007-report-windows-7-computers-without-sp1/</link>
		<comments>http://ccmexec.com/2011/12/sccm-2007-report-windows-7-computers-without-sp1/#comments</comments>
		<pubDate>Wed, 07 Dec 2011 20:17:07 +0000</pubDate>
		<dc:creator>Jörgen Nilsson</dc:creator>
				<category><![CDATA[System Center Configuration Manager]]></category>
		<category><![CDATA[SCCM Reports]]></category>

		<guid isPermaLink="false">http://ccmexec.com/?p=1691</guid>
		<description><![CDATA[Hi,
Answered a question on Technet forum this morning and about a report to list all Windows 7 computers without Service Pack 1 installed.
I modified it slightly for this post to include the possibility to filter on a specific collectionID.
When creating the report create a prompt in the report called varcollection
Report Query:

Select SYS.Netbios_Name0, OPSYS.Caption0 as C054, OPSYS.Version0, [...]]]></description>
			<content:encoded><![CDATA[<p>Hi,<br />
Answered a question on Technet forum this morning and about a report to list all Windows 7 computers without Service Pack 1 installed.<br />
I modified it slightly for this post to include the possibility to filter on a specific collectionID.</p>
<p>When creating the report create a prompt in the report called <strong>varcollection</strong></p>
<p><strong>Report Query:</strong></p>
<p><code></p>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0&lt;code&gt;px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">Select SYS.Netbios_Name0, OPSYS.Caption0 as C054, OPSYS.Version0, @varcollection as Collection</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">from v_R_System SYS</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">join v_GS_OPERATING_SYSTEM OPSYS on SYS.ResourceID=OPSYS.ResourceID join v_FullCollectionMembership FCM on FCM.ResourceID =SYS.ResourceID</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">where OPSYS.Caption0 like 'Microsoft Windows 7%' and OPSYS.Version0 &lt;&gt; '6.1.7601' and FCM.CollectionID = @varcollection</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">order by SYS.Netbios_Name0</div>
<p>Select SYS.Netbios_Name0, OPSYS.Caption0 as C054, OPSYS.Version0, @varcollection as Collection</p>
<p>from v_R_System SYS</p>
<p>join v_GS_OPERATING_SYSTEM OPSYS on SYS.ResourceID=OPSYS.ResourceID join v_FullCollectionMembership FCM on FCM.ResourceID =SYS.ResourceID</p>
<p>where OPSYS.Caption0 like 'Microsoft Windows 7%' and OPSYS.Version0 &lt;&gt; '6.1.7601' and FCM.CollectionID = @varcollection</p>
<p></code></p>
<p><code>order by SYS.Netbios_Name0<br />
</code></p>
<p><strong>SQL query for the varcollection prompt:</strong></p>
<p><code><br />
begin<br />
if (@__filterwildcard = '')<br />
select distinct CollectionID, Name from v_Collection order by Name<br />
else<br />
select distinct CollectionID, Name from v_Collection<br />
WHERE CollectionID like @__filterwildcard<br />
order by Name<br />
end<br />
</code></p>

<div class="like">
<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fccmexec.com%2F2011%2F12%2Fsccm-2007-report-windows-7-computers-without-sp1%2F&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;font=&amp;colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true" style="border:none; overflow:hidden; width:450px; height:62px; "></iframe>
</div>
]]></content:encoded>
			<wfw:commentRss>http://ccmexec.com/2011/12/sccm-2007-report-windows-7-computers-without-sp1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Installing the SCCM client using vbscript</title>
		<link>http://ccmexec.com/2011/11/installing-the-sccm-client-using-vbscript/</link>
		<comments>http://ccmexec.com/2011/11/installing-the-sccm-client-using-vbscript/#comments</comments>
		<pubDate>Fri, 18 Nov 2011 12:20:07 +0000</pubDate>
		<dc:creator>Jörgen Nilsson</dc:creator>
				<category><![CDATA[System Center Configuration Manager]]></category>

		<guid isPermaLink="false">http://ccmexec.com/?p=1676</guid>
		<description><![CDATA[In some scenarios you need to install the SCCM client using another Software Distribution tool than Configuration Manager, yes I know it sounds strange  
If you have tried this you know that the Ccmsetup.exe installs a service and the exits in the user context so that control is returned to the vbscript, cmd file [...]]]></description>
			<content:encoded><![CDATA[<p>In some scenarios you need to install the SCCM client using another Software Distribution tool than Configuration Manager, yes I know it sounds strange <img src='http://ccmexec.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>If you have tried this you know that the Ccmsetup.exe installs a service and the exits in the user context so that control is returned to the vbscript, cmd file or whatever method you use to run Ccmsetup.</p>
<p>There are two ways of solving this:</p>
<p>1. Run Ccmsetup.exe with the /noservice switch then ccmsetup runs the setup in the user with which you triggered the installation and not using  a service in System context.</p>
<p>2.Use vbscript that checks for an active process called &#8220;ccmsetup.exe&#8221; and wait for it to exit.</p>
<p>I thought of writing a script for this and then I found this excellent discussion on a forum: <a href="http://www.tek-tips.com/viewthread.cfm?qid=911251">http://www.tek-tips.com/viewthread.cfm?qid=911251</a></p>
<p>That script will work for Ccmsetup as well. Below is the modified script for ccmsetup.exe</p>
<p><code><br />
Set WshShell = Nothing<br />
Set WshShell = WScript.CreateObject("WScript.Shell")<br />
WshShell.Run "ccmsetup.exe SMSSITECODE=020 FSP=SCCM01", 0, True<br />
Wscript.Sleep 5000<br />
set svc=getobject("winmgmts:root\cimv2")<br />
sQuery="select * from win32_process where name='ccmsetup.exe'"<br />
set cproc=svc.execquery(sQuery)<br />
iniproc=cproc.count<br />
Do While iniproc = 1<br />
wscript.sleep 5000<br />
set svc=getobject("winmgmts:root\cimv2")<br />
sQuery="select * from win32_process where name='ccmsetup.exe'"<br />
set cproc=svc.execquery(sQuery)<br />
iniproc=cproc.count<br />
Loop<br />
set cproc=nothing<br />
set svc=nothing<br />
Set WshShell = Nothing<br />
</code></p>

<div class="like">
<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fccmexec.com%2F2011%2F11%2Finstalling-the-sccm-client-using-vbscript%2F&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;font=&amp;colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true" style="border:none; overflow:hidden; width:450px; height:62px; "></iframe>
</div>
]]></content:encoded>
			<wfw:commentRss>http://ccmexec.com/2011/11/installing-the-sccm-client-using-vbscript/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>

