<?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>Nefaria.com &#187; Windows</title>
	<atom:link href="http://nefaria.com/tag/windows/feed/" rel="self" type="application/rss+xml" />
	<link>http://nefaria.com</link>
	<description>☠ ☠ ☠ ☠ ☠ ☠</description>
	<lastBuildDate>Wed, 31 Aug 2011 16:12:16 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Opening Terminal Server registry propogation window. (aka: Installing software in windows takes forever)</title>
		<link>http://nefaria.com/2011/02/opening-terminal-server-registry-propogation-window-aka-installing-software-in-windows-takes-forever/</link>
		<comments>http://nefaria.com/2011/02/opening-terminal-server-registry-propogation-window-aka-installing-software-in-windows-takes-forever/#comments</comments>
		<pubDate>Mon, 14 Feb 2011 13:57:22 +0000</pubDate>
		<dc:creator>musashi</dc:creator>
				<category><![CDATA[I.T.]]></category>
		<category><![CDATA[Terminal Services]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://nefaria.com/?p=978</guid>
		<description><![CDATA[That&#8217;s not a typo. For the past few months, I&#8217;ve noticed that installing software or running updates on one particular terminal server that I manage (Windows Server 2003, std.), the updates/installation take hours &#8212; in some cases, days. So I enabled windows installer logging and here&#8217;s what I found: MSI (s) (2C:30) [01:58:16:558]: Opening Terminal [...]]]></description>
			<content:encoded><![CDATA[<p>That&#8217;s not a typo. For the past few months, I&#8217;ve noticed that installing software or running updates on one particular terminal server that I manage (Windows Server 2003, std.), the updates/installation take hours &#8212; in some cases, days. <a href="http://support.microsoft.com/kb/223300">So I enabled windows installer logging</a> and here&#8217;s what I found:</p>
<div class="code_block">
MSI (s) (2C:30) [<strong>01:58:16:558</strong>]: Opening Terminal Server registry propogation window.<br />
MSI (s) (2C:E8) [<strong>02:35:44:188</strong>]: RunEngine wait timed out<br />
Installer is no longer responding.<br />
MSI (s) (2C:E8) [<strong>03:13:14:358</strong>]: RunEngine wait timed out<br />
Installer is no longer responding.<br />
MSI (s) (2C:E8) [<strong>03:50:44:453</strong>]: RunEngine wait timed out<br />
Installer is no longer responding.<br />
MSI (s) (2C:E8) [<strong>04:28:14:529</strong>]: RunEngine wait timed out<br />
Installer is no longer responding.<br />
MSI (s) (2C:E8) [<strong>05:05:44:619</strong>]: RunEngine wait timed out<br />
Installer is no longer responding.<br />
MSI (s) (2C:E8) [<strong>05:43:14:897</strong>]: RunEngine wait timed out<br />
Installer is no longer responding.<br />
Action ended 5:52:07: InstallInitialize. Return value 1.<br />
MSI (s) (2C:30) [<strong>05:52:07:859</strong>]: Doing action: SxsInstallCA<br />
Action start 5:52:07: SxsInstallCA.</div>
<p>So as you can see by the snippet above, this routine installation took an enormous amount of time. This exact scenario played out anytime I tried running updates or installing software. As it turns out, <a href="http://forums11.itrc.hp.com/service/forums/questionanswer.do?admit=109447626+1297688771164+28353475&amp;threadId=1247687">this</a> was the problem. Simply removing the driver and deleting the following registry keys, and then installing the latest version of the driver (&#8230; I was on ~3 something; at the time of this writing, the latest version is 6.1) fixed the problem. Here are the registry keys that should be removed after the driver has been uninstalled (and before the latest version has been installed):</p>
<div class="code_block">HKEY_LOCAL_MACHINE\SOFTWARE\Hewlett-Packard<br />
HKEY_CURRENT_USER\SOFTWARE\Hewlett-Packard<br />
HKEY_USERS\.DEFAULT\Software\Hewlett-Packard</div>
<p>This was an extremely frustrating issue &#8212; other symptoms included server crashes with an error message about the registry being too large; logging in a brand new user for the first time takes ~15 minutes or so, and a whole host of other performance related weirdness. At first I thought that installing UPHClean would help solve this (the symptoms being registry-related and all) but it may have actually made the problem worse. If you scroll all the way down to the bottom of the page of the previous link to HP&#8217;s website, you&#8217;ll see the following post:</p>
<div class="code_block">
JulianBlue  Oct 6, 2010 07:37:53 GMT<br />
It is very likely that HP UPD problem replicating tons of registry keys to global default registry hive (.DEFAULT) being related to Terminal Server on which the Microsoft UPHClean Tool is installed. I would recommend to look at the readme.txt with UPHClean and setup an exclusion for svchost.exe/rpcss.dll.</p>
<p>&#8220;UPHClean assists the operating system to unload user profile hive by remapping the handles to the user profile hive to the default user hive. For example if a process has a handle to HKEY_USERS\S-1-5-21-X-Y-Z\Software\Microsoft after remapping it would have a handle to HKEY_USERS\.DEFAULT\Software\Microsoft.&#8221;
</p></div>
<p>I haven&#8217;t had the chance to test this yet, but it does sound plausible enough. There&#8217;s also some <a href="http://forums11.itrc.hp.com/service/forums/questionanswer.do?threadId=1217189">other posts</a> related to this on HP&#8217;s website that are worth having a look at. Here&#8217;s the <a href="http://download.microsoft.com/download/a/8/7/a87b3d05-cd04-4743-a23b-b16645e075ac/readme.txt">readme.txt that comes with UPHClean</a>. Setting up an exclusion list is fairly straightforward; for convenience, I&#8217;ve pasted the pertinent section of the UPHClean readme here:</p>
<div class="code_block">
PROBLEMS USING UPHCLEAN<br />
=======================</p>
<p>Because UPHClean assists in unloading the users registry<br />
hive some services may behave incorrectly.  Administrators<br />
are encouraged to test and watch for unexpected behavior.<br />
If unwanted behavior is identified contact the developers of<br />
software that UPHClean identified as preventing profile from<br />
unloading.</p>
<p>UPHClean assists the operating system to unload user profile<br />
hive by remapping the handles to the user profile hive to the<br />
default user hive. For example if a process has a handle to<br />
HKEY_USERS\S-1-5-21-X-Y-Z\Software\Microsoft after remapping<br />
it would have a handle to HKEY_USERS\.DEFAULT\Software\Microsoft.<br />
This allows the profile hive to unload.  This may not work if the<br />
application expects data that would only be available under the<br />
specific user profile hive it was accessing since the data will not be copied.</p>
<p>If you find that removing UPHClean stops a particular problem from<br />
occurring then you may be interested in restricting UPHClean from<br />
processing certain handles.  UPHClean ignores handles that are<br />
held opened to profile hives for the users specified on the user<br />
exclusion list or by processes specified on the process exclusion list.<br />
These lists are specified using the following registry values:</p>
<p>HKLM\System\CurrentControlSet\Services\UPHClean\Parameters\PROCESS_EXCLUSION_LIST</p>
<p>HKLM\System\CurrentControlSet\Services\UPHClean\Parameters\USER_EXCLUSION_LIST</p>
<p>Note that since these values are specified as REG_MULTI_SZ strings<br />
you should use regedt32 on Windows NT and Windows 2000 to edit them.</p>
<p>The process exclusion list is a list of process names that UPHClean<br />
should  ignore when determining which handles to user profile hives<br />
to act on.  Each process name is specified on its own line when<br />
input in registry editor.  The process name should be specified the<br />
same way as it shows in Task Manager. Usually this is the file<br />
name of the program (e.g. notepad.exe).</p>
<p>A few process show multiple times in Task Manager.  It is possible to<br />
specify that a certain DLL be loaded in the process to allow a selection<br />
of a specific process.  This is useful with the svchost process to identify<br />
a specific instance.  For example to specify the svchost process that<br />
the Remote Procedure Call (RPC) service is running in on Windows 2000,<br />
Windows XP and Windows Server 2003 you would specify<br />
svchost.exe/rpcss.dll in the process exclusion list</p>
<p>The user exclusion list is a list of user security identifier (SID) or user that<br />
UPHClean should ignore when determining which handle to user profile<br />
hives to act on.  Each user SID or name is specified on its own line when<br />
input in registry editor.  If specifying a user name you must enter the user<br />
domain name followed by a backslash followed by the user name.  For<br />
example RCARONDOM\RCARON to specify the user RCARON from<br />
domain RCARONDOM.  SIDs should be specified in the usual string<br />
format (e.g. S-1-5-21-2127521184-1604012920-1887927527-68486).<br />
This is the same string you see under HKEY_USERS in registry editor.</p>
<p>Note that the user exclusion list always includes the following<br />
SIDs: S-1-5-18, S-1-5-19, S-1-5-20.  Unloading these profiles can cause<br />
problems so UPHClean will not attempt to process handles to these profiles.</p>
<p>Which processes UPHClean performs handle remapping can specified<br />
using the following registry value:</p>
<p>HKLM\System\CurrentControlSet\Services\UPHClean\Parameters\REMAP_HANDLE_PROCESS_LIST</p>
<p>The list by default contains &#8216;*&#8217; which specifies that handle remapping should<br />
be performed for all non-excluded processes.  This list can be changed to<br />
only include specified processes in the same manner as the process<br />
exclusion list. Processes specified on this list can be preceeded by a &#8216;-&#8217;<br />
character to specify that they should be excluded from handle remapping.<br />
Any handle for a process that is not excluded but has handle remapping<br />
turned off will be closed.
</p></div>
<p>I hope this helps!</p>
]]></content:encoded>
			<wfw:commentRss>http://nefaria.com/2011/02/opening-terminal-server-registry-propogation-window-aka-installing-software-in-windows-takes-forever/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Configuring &#8220;Per User&#8221; licensing in Terminal Services, remotely *without* Remote Desktop access</title>
		<link>http://nefaria.com/2010/01/configuring-per-user-licensing-in-terminal-services-remotely-without-remote-desktop-access/</link>
		<comments>http://nefaria.com/2010/01/configuring-per-user-licensing-in-terminal-services-remotely-without-remote-desktop-access/#comments</comments>
		<pubDate>Thu, 07 Jan 2010 23:48:00 +0000</pubDate>
		<dc:creator>musashi</dc:creator>
				<category><![CDATA[I.T.]]></category>
		<category><![CDATA[Terminal Services]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://nefaria.com/?p=796</guid>
		<description><![CDATA[So the other day I was trying to connect to one of the terminal servers that I manage (for the purpose of this post, we&#8217;ll call the server &#8216;TERMSVR01&#8242;) and I got the following error message and was promptly disconnected: The remote session was disconnected because there are no Terminal Server client access licenses available [...]]]></description>
			<content:encoded><![CDATA[<p>So the other day I was trying to connect to one of the terminal servers that I manage (for the purpose of this post, we&#8217;ll call the server &#8216;TERMSVR01&#8242;) and I got the following error message and was promptly disconnected:</p>
<div class="code_block">
The remote session was disconnected because there are no Terminal Server client access licenses available for this computer
</div>
<p>At first glance, this seems as though the server ran out of TS CALS (Terminal Server Client Access Licenses). I was pretty sure that the server was configured to use the &#8220;Per User&#8221; licensing mode. However, a Windows Server 2003 Terminal Server operating in the &#8220;Per User&#8221; licensing mode can&#8217;t run out of licenses to the extent that it prevents the user from connecting (and instead, giving them the aforementioned error message). To the best of my knowledge, it can <em>only</em> do this when it is operating in &#8220;Per Device&#8221; mode. So this was the assumption that I ran with &#8212; that somehow, this server was never configured for &#8220;Per User&#8221; -or- it was, but the setting was either changed, reset, or corrupted somehow.</p>
<p>So, even though I wasn&#8217;t able to connect to TERMSVR01 via Remote Desktop, I <em>was</em> able to &#8220;Manage&#8221; it remotely by doing the following:</p>
<ol>
<li>Open &#8220;Active Directory Users and Computers&#8221; on any Domain Controller</li>
<li>Expand the &#8220;Computers&#8221; node</li>
<li>Right-click TERMSVR01 and select &#8216;Manage&#8217;</li>
</ol>
<p>Now we can do a few things (not many) on the server. One thing I wanted was to have a look at the Event Viewer. There were a few error messages like the following:</p>
<div class="code_block">
Event Type: Information<br />
Event Source: TermService<br />
Event Category: None<br />
Event ID: 1004<br />
Date: 1/5/2010<br />
Time: 6:18:23 PM<br />
User: N/A<br />
Computer: TERMSVR01<br />
Description:<br />
The terminal server cannot issue a client license.  It was unable to issue the license due to a changed (mismatched) client license, insufficient memory, or an internal error. Further details for this problem may have been reported at the client&#8217;s computer.</p>
<p>For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.
</p></div>
<p>The more of these I saw, the more confident I was that my assumption was correct &#8212; the server was operating in &#8220;Per Device&#8221; mode and it had finally run out of licenses. I had the following options:</p>
<ol>
<li>Wait for someone to go onsite and reconfigure the licensing mode (easy, but it would have to wait until tomorrow) or&#8230;</li>
<li>Attempt to reconfigure this setting <em>and</em> restart the service remotely (so that the setting takes takes effect) &#8230; all without having &#8220;Remote Desktop&#8221; access to the server.</li>
</ol>
<p>Care to guess which option I chose?  <img src='http://nefaria.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p><strong>Step #1: Override the licensing mode setting using group policy</strong></p>
<ol>
<li>Click &#8216;Start&#8217;</li>
<li>Click &#8216;Run&#8217;</li>
<li>Type the following command:
<div class="code_block">
gpedit.msc /gpcomputer:TERMSVR01
</div>
</li>
<li>Click &#8216;OK&#8217;</li>
</ol>
<p>Those four steps open the group policy (remotely) for TERMSVR01. Next we need to actually change the setting:</p>
<ol>
<li>In the left-hand panel, expand &#8220;Administrative Templates&#8221;</li>
<li>Expand &#8220;Windows Components&#8221;</li>
<li>Click on &#8220;Terminal Services&#8221;</li>
<li>Locate the following setting in the right-hand panel:
<div class="code_block">
Set the Terminal Server licensing mode
</div>
</li>
<li>Double-click the aforementioned setting</li>
<li>Change the option (directly below the heading) to &#8220;Enabled&#8221;</li>
<li>Select &#8220;Per User&#8221; from the drop-down box (below the heading: &#8220;Specify the licensing mode for the terminal server&#8221;.)</li>
<li>Click &#8216;OK&#8217;</li>
<li>Close the &#8220;Group Policy Object Editor&#8221; window</li>
</ol>
<p>Great. The licensing mode has been changed but the setting won&#8217;t take effect until the service is restarted. We <em>could</em> open &#8216;services.msc&#8217; and connect to &#8216;TERMSVR01&#8242; by using the &#8216;Connect to another computer &#8230;&#8217; option in the &#8216;Action&#8217; menu. This will allow us to administer almost all running services on TERMSVR01 &#8230; almost all. You&#8217;ll notice immediately that you cannot start/stop the &#8216;Terminal Services&#8217; service from this management console, so we need to find another way to do it.</p>
<p>The easiest way I know to accomplish this task is to use the WMIC command from the command prompt.</p>
<p><strong>Step #2: Restart a remote service using WMIC</strong></p>
<ol>
<li>Open a command prompt</li>
<li>Type the following command (then hit enter) to stop the service:
<div class="code_block">
wmic /node:TERMSVR01 service where &#8220;caption=&#8217;Terminal Services&#8217;&#8221; call StopService
</div>
</li>
<li>Then, type the following command to start the service:
<div class="code_block">
wmic /node:TERMSVR01 service where &#8220;caption=&#8217;Terminal Services&#8217;&#8221; call StartService
</div>
</li>
<li>Close the command prompt</li>
</ol>
<p>If everything was successful (and my assumption about the nature of the problem was correct), then I should be able to connect to the server using the Remote Desktop client. I fired up the client and voilà! It worked perfectly.</p>
]]></content:encoded>
			<wfw:commentRss>http://nefaria.com/2010/01/configuring-per-user-licensing-in-terminal-services-remotely-without-remote-desktop-access/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Adding &#8220;Trusted Sites&#8221; to Internet Explorer, via the registry</title>
		<link>http://nefaria.com/2009/10/adding-trusted-sites-for-ie-via-the-registry/</link>
		<comments>http://nefaria.com/2009/10/adding-trusted-sites-for-ie-via-the-registry/#comments</comments>
		<pubDate>Thu, 01 Oct 2009 18:28:57 +0000</pubDate>
		<dc:creator>musashi</dc:creator>
				<category><![CDATA[I.T.]]></category>
		<category><![CDATA[registry]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://nefaria.com/?p=702</guid>
		<description><![CDATA[A while ago I needed to add a list of websites to the Internet Explorer&#8217;s &#8220;Trusted Sites&#8221; zone for multiple users, scattered across multiple terminal servers. IE&#8217;s &#8220;Enhanced Security Configuration&#8221; (ESC) is configured by default on windows terminal services and it&#8217;s normally a good idea to leave it intact. However, this can have unintended consequences [...]]]></description>
			<content:encoded><![CDATA[<p>A while ago I needed to add a list of websites to the Internet Explorer&#8217;s &#8220;Trusted Sites&#8221; zone for multiple users, scattered across multiple terminal servers. IE&#8217;s &#8220;Enhanced Security Configuration&#8221; (ESC) is configured by default on windows terminal services and it&#8217;s normally a good idea to leave it intact. </p>
<p>However, this can have unintended consequences for users who require the use of websites that employ ActiveX, javascript, etc. because, by default, ESC does not allow those items to run. Sometimes, this means that the site in question will only be partially non-functioning. Other times, the entire site will be completely unusable. Furthermore, most users on terminal services have only a limited ability to actually modify the settings for an entire zone. Normally the best thing they can do is add the site to their trusted sites zone, if in fact the site is legitimate (i.e., &#8220;trusted&#8221;). </p>
<p>Originally, I explained to the users the steps involved in adding a site to their trusted sites, however many of the users used many of the same websites that other users were using. Also, new users needed to be trained on how to do this as well. Needless to say, it got very repetitive, very fast; so I came up with a &#8220;global&#8221; list of sites that can be trusted, and imported them to the registry on each terminal server. The list consisted of about 40+ sites, and I was able to generate the list mostly by exporting the following registry key:</p>
<div class="code_block">
<pre>
HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\EscDomains
</pre>
</div>
<p>&#8230;from a few user accounts who had already added most of the sites to their trusted sites zone. After grepping out the duplicates (among other things), I had my list.</p>
<p>Now, I&#8217;m going to cover two ways of making this list of domains &#8220;globally trusted&#8221;&#8212;both of them involve writing to the following registry key:</p>
<div class="code_block">
<pre>
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\EscDomains
</pre>
</div>
<p>Pay attention! This is not the same key as previously mentioned. This key resides in the &#8216;HKEY_LOCAL_MACHINE&#8217; hive, whereas the previous key resides in the &#8216;HKEY_CURRENT_USER&#8217; hive.</p>
<p>The first way is via the following visual basic script:</p>
<div class="code_block">
<pre>
<font color="#ffff00">Option</font>&nbsp;<font color="#ffff00">Explicit</font>

<font color="#ffff00">Dim</font>&nbsp;DomainArray<font color="#ffff00">(</font><font color="#ff6060">5</font><font color="#ffff00">),</font>&nbsp;strComputer<font color="#ffff00">,</font>&nbsp;strHTTP<font color="#ffff00">,</font>&nbsp;strHTTPS
<font color="#ffff00">Dim</font>&nbsp;dwordZone<font color="#ffff00">,</font>&nbsp;regPath<font color="#ffff00">,</font>&nbsp;objReg<font color="#ffff00">,</font>&nbsp;counter<font color="#ffff00">,</font>&nbsp;subkeyPath
<font color="#ffff00">Dim</font>&nbsp;subkeyValue
<font color="#ffff00">Const</font>&nbsp;HKEY_LOCAL_MACHINE <font color="#ffff00">=</font>&nbsp;<font color="#ffff00">&amp;</font>H80000002

DomainArray<font color="#ffff00">(</font><font color="#ff6060">0</font><font color="#ffff00">)</font>&nbsp;<font color="#ffff00">=</font>&nbsp;<font color="#ff6060">&quot;testdomain0.com&quot;</font>
DomainArray<font color="#ffff00">(</font><font color="#ff6060">1</font><font color="#ffff00">)</font>&nbsp;<font color="#ffff00">=</font>&nbsp;<font color="#ff6060">&quot;testdomain1.com&quot;</font>
DomainArray<font color="#ffff00">(</font><font color="#ff6060">2</font><font color="#ffff00">)</font>&nbsp;<font color="#ffff00">=</font>&nbsp;<font color="#ff6060">&quot;testdomain2.com&quot;</font>
DomainArray<font color="#ffff00">(</font><font color="#ff6060">3</font><font color="#ffff00">)</font>&nbsp;<font color="#ffff00">=</font>&nbsp;<font color="#ff6060">&quot;testdomain3.com&quot;</font>
DomainArray<font color="#ffff00">(</font><font color="#ff6060">4</font><font color="#ffff00">)</font>&nbsp;<font color="#ffff00">=</font>&nbsp;<font color="#ff6060">&quot;testdomain4.com&quot;</font>

strComputer <font color="#ffff00">=</font>&nbsp;<font color="#ff6060">&quot;.&quot;</font>
strHTTP <font color="#ffff00">=</font>&nbsp;<font color="#ff6060">&quot;http&quot;</font>
strHTTPS <font color="#ffff00">=</font>&nbsp;<font color="#ff6060">&quot;https&quot;</font>
dwordZone <font color="#ffff00">=</font>&nbsp;<font color="#ff6060">&quot;2&quot;</font>
regPath <font color="#ffff00">=</font>&nbsp;<font color="#ff6060">&quot;SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings&quot;</font>&nbsp;<font color="#ffff00">&amp;</font>_
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#ff6060">&quot;\ZoneMap\EscDomains\&quot;</font>
<font color="#ffff00">Set</font>&nbsp;objReg <font color="#ffff00">=</font>&nbsp;<font color="#00ffff">GetObject</font><font color="#ffff00">(</font><font color="#ff6060">&quot;winmgmts:{impersonationLevel = impersonate}!\\&quot;</font>&nbsp;<font color="#ffff00">&amp; _</font>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;strComputer <font color="#ffff00">&amp;</font>&nbsp;<font color="#ff6060">&quot;\root\default:StdRegProv&quot;</font><font color="#ffff00">)</font>

<font color="#ffff00">For</font>&nbsp;counter <font color="#ffff00">=</font>&nbsp;<font color="#ff6060">0</font>&nbsp;<font color="#ffff00">to</font>&nbsp;<font color="#ff6060">4</font>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;subkeyPath <font color="#ffff00">=</font>&nbsp;regPath <font color="#ffff00">&amp;</font>&nbsp;DomainArray<font color="#ffff00">(</font>counter<font color="#ffff00">)</font>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;objReg<font color="#ffff00">.</font>CreateKey HKEY_LOCAL_MACHINE<font color="#ffff00">,</font>subkeyPath
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;objReg<font color="#ffff00">.</font>SetDWORDValue HKEY_LOCAL_MACHINE<font color="#ffff00">,</font>subkeyPath<font color="#ffff00">,</font>strHTTP<font color="#ffff00">,</font>dwordZone
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;objReg<font color="#ffff00">.</font>SetDWORDValue HKEY_LOCAL_MACHINE<font color="#ffff00">,</font>subkeyPath<font color="#ffff00">,</font>strHTTPS<font color="#ffff00">,</font>dwordZone
<font color="#ffff00">Next</font>
</pre>
</div>
<p>This script will insert &#8216;testdomain0.com&#8217;, &#8216;testdomain1.com&#8217;, [...] into IE&#8217;s trusted sites zone when run on any machine. It must be run by an Administrator (or another user who has access to write to the HKEY_LOCAL_MACHINE registry hive), and the changes are global (to the machine).</p>
<p>The next way involves creating a &#8220;registry entries&#8221; (.reg) file:</p>
<div class="code_block">
<pre>
Windows Registry Editor Version 5<font color="#ff40ff">.</font>00

[<font color="#ff6060">HKEY_LOCAL_MACHINE</font><font color="#ff40ff">\</font>SOFTWARE<font color="#ff40ff">\</font>Microsoft<font color="#ff40ff">\</font>Windows<font color="#ff40ff">\</font>CurrentVersion<font color="#ff40ff">\</font>Internet Settings<font color="#ff40ff">\</font>ZoneMap<font color="#ff40ff">\</font>EscDomains]

[<font color="#ff6060">HKEY_LOCAL_MACHINE</font><font color="#ff40ff">\</font>SOFTWARE<font color="#ff40ff">\</font>Microsoft<font color="#ff40ff">\</font>Windows<font color="#ff40ff">\</font>CurrentVersion<font color="#ff40ff">\</font>Internet Settings<font color="#ff40ff">\</font>ZoneMap<font color="#ff40ff">\</font>EscDomains<font color="#ff40ff">\</font>testdomain0<font color="#ff40ff">.</font>com]
&quot;http&quot;=<font color="#ff6060">dword</font><font color="#ff40ff">:</font><font color="#ff6060">00000002</font>
&quot;https&quot;=<font color="#ff6060">dword</font><font color="#ff40ff">:</font><font color="#ff6060">00000002</font>

[<font color="#ff6060">HKEY_LOCAL_MACHINE</font><font color="#ff40ff">\</font>SOFTWARE<font color="#ff40ff">\</font>Microsoft<font color="#ff40ff">\</font>Windows<font color="#ff40ff">\</font>CurrentVersion<font color="#ff40ff">\</font>Internet Settings<font color="#ff40ff">\</font>ZoneMap<font color="#ff40ff">\</font>EscDomains<font color="#ff40ff">\</font>testdomain1<font color="#ff40ff">.</font>com]
&quot;http&quot;=<font color="#ff6060">dword</font><font color="#ff40ff">:</font><font color="#ff6060">00000002</font>
&quot;https&quot;=<font color="#ff6060">dword</font><font color="#ff40ff">:</font><font color="#ff6060">00000002</font>

[<font color="#ff6060">HKEY_LOCAL_MACHINE</font><font color="#ff40ff">\</font>SOFTWARE<font color="#ff40ff">\</font>Microsoft<font color="#ff40ff">\</font>Windows<font color="#ff40ff">\</font>CurrentVersion<font color="#ff40ff">\</font>Internet Settings<font color="#ff40ff">\</font>ZoneMap<font color="#ff40ff">\</font>EscDomains<font color="#ff40ff">\</font>testdomain2<font color="#ff40ff">.</font>com]
&quot;http&quot;=<font color="#ff6060">dword</font><font color="#ff40ff">:</font><font color="#ff6060">00000002</font>
&quot;https&quot;=<font color="#ff6060">dword</font><font color="#ff40ff">:</font><font color="#ff6060">00000002</font>

[<font color="#ff6060">HKEY_LOCAL_MACHINE</font><font color="#ff40ff">\</font>SOFTWARE<font color="#ff40ff">\</font>Microsoft<font color="#ff40ff">\</font>Windows<font color="#ff40ff">\</font>CurrentVersion<font color="#ff40ff">\</font>Internet Settings<font color="#ff40ff">\</font>ZoneMap<font color="#ff40ff">\</font>EscDomains<font color="#ff40ff">\</font>testdomain3<font color="#ff40ff">.</font>com]
&quot;http&quot;=<font color="#ff6060">dword</font><font color="#ff40ff">:</font><font color="#ff6060">00000002</font>
&quot;https&quot;=<font color="#ff6060">dword</font><font color="#ff40ff">:</font><font color="#ff6060">00000002</font>

[<font color="#ff6060">HKEY_LOCAL_MACHINE</font><font color="#ff40ff">\</font>SOFTWARE<font color="#ff40ff">\</font>Microsoft<font color="#ff40ff">\</font>Windows<font color="#ff40ff">\</font>CurrentVersion<font color="#ff40ff">\</font>Internet Settings<font color="#ff40ff">\</font>ZoneMap<font color="#ff40ff">\</font>EscDomains<font color="#ff40ff">\</font>testdomain4<font color="#ff40ff">.</font>com]
&quot;http&quot;=<font color="#ff6060">dword</font><font color="#ff40ff">:</font><font color="#ff6060">00000002</font>
&quot;https&quot;=<font color="#ff6060">dword</font><font color="#ff40ff">:</font><font color="#ff6060">00000002</font>
</pre>
</div>
<p>Just like the previous script, this must also be run by a user with Administrator privileges and any changes will be global to all users on the machine.</p>
<p>(Of course, you would want to customize these snippets of code to suit your needs.)</p>
<p>For more information, please visit the following sites:</p>
<p><a href="http://support.microsoft.com/kb/815141">Internet Explorer Enhanced Security Configuration changes the browsing experience</a><br />
<a href="http://msdn.microsoft.com/en-us/library/ms537180(VS.85).aspx">Enhanced Security Configuration for Internet Explorer</a><br />
<a href="http://support.microsoft.com/kb/182569">Internet Explorer security zones registry entries for advanced users</a></p>
]]></content:encoded>
			<wfw:commentRss>http://nefaria.com/2009/10/adding-trusted-sites-for-ie-via-the-registry/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Windows XP allows a user to login and then it immediately logs out</title>
		<link>http://nefaria.com/2009/07/windows-xp-allows-a-user-to-login-and-then-it-immediately-logs-out/</link>
		<comments>http://nefaria.com/2009/07/windows-xp-allows-a-user-to-login-and-then-it-immediately-logs-out/#comments</comments>
		<pubDate>Tue, 21 Jul 2009 20:57:21 +0000</pubDate>
		<dc:creator>musashi</dc:creator>
				<category><![CDATA[I.T.]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://nefaria.com/?p=666</guid>
		<description><![CDATA[Quite an odd thing happened today&#8230; I encountered the same very specific error twice on two completely unrelated computers (two different clients). In _both_ cases, clamwin had unnecessarily quarantined the following file: C:\WINDOWS\system32\userinit.exe On both machines, this occurred during a scheduled scan. The symptoms of this problem are that windows will allow the user to [...]]]></description>
			<content:encoded><![CDATA[<p>Quite an odd thing happened today&#8230; I encountered the same very specific error twice on two completely unrelated computers (two different clients). In _both_ cases, clamwin had unnecessarily quarantined the following file:
<div class="code_block">C:\WINDOWS\system32\userinit.exe</div>
<p> On both machines, this occurred during a scheduled scan. The symptoms of this problem are that windows will allow the user to login, but it immediately logs out after a second or two. Here&#8217;s how I fixed it in both cases:</p>
<ol>
<li> Boot into the recovery console using a Windows XP install disk</li>
<li> Select the windows installation experiencing the problem and type the Administrator password when asked</li>
<li> Run the following command (assuming that your CD-ROM is D:\ and your hard drive is C:\):
<div class="code_block">expand D:\I386\USERINIT.EX_ C:\WINDOWS\system32</div>
</li>
<li>Remove the CD from the drive then type &#8216;exit&#8217; and hit &#8216;enter&#8217; to reboot.</li>
</ol>
<p>Once the computer boots properly (and allows you to stay logged in), use <a href="http://www.malwarebytes.org">Malwarebytes</a>, <a href="http://www.safer-networking.org/index2.html">Spybot</a>, <a href="http://www.trendsecure.com/portal/en-US/tools/security_tools/hijackthis">HijackThis</a>, etc. to scan your computer for viruses and/or spyware.</p>
<p><em><strong>Update, 5 August 2009:</strong></em></p>
<p>Just an additional note; you&#8217;ll want to be sure that the version of the file you copy from the installation disk is compatible with the service pack installed (it&#8217;s likely not). Symptoms of this incompatibility include things like explorer freezing when you try to shutdown or restart the computer. Uninstalling then Reinstalling the service pack should fix this issue. Alternatively, (and if ClamWin was the culprit) you could restore the old userinit.exe file from ClamWin&#8217;s quarantine directory&#8230; be sure to scan the file before doing this or else you could end up restoring an infected copy. So far, on every computer I&#8217;ve had to fix because of this (five and counting), ClamWin had falsely identified the userinit.exe file as a virus.</p>
]]></content:encoded>
			<wfw:commentRss>http://nefaria.com/2009/07/windows-xp-allows-a-user-to-login-and-then-it-immediately-logs-out/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Transferring old MAS 90/200 data to a new server (clean installation)</title>
		<link>http://nefaria.com/2009/03/transferring-old-mas-90200-data-to-a-new-server-clean-installation/</link>
		<comments>http://nefaria.com/2009/03/transferring-old-mas-90200-data-to-a-new-server-clean-installation/#comments</comments>
		<pubDate>Fri, 27 Mar 2009 13:07:10 +0000</pubDate>
		<dc:creator>musashi</dc:creator>
				<category><![CDATA[I.T.]]></category>
		<category><![CDATA[MAS 200]]></category>
		<category><![CDATA[MAS 90]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://nefaria.com/?p=299</guid>
		<description><![CDATA[DISCLAIMER: This post assumes that both the source server and the destination server are windows servers. Once upon a time there was a UNIX version of MAS 90/200 but I&#8217;ve never had to administer that version so I cannot guarantee that any of this will work for it. Here&#8217;s the scenario: Your current server is [...]]]></description>
			<content:encoded><![CDATA[<p>DISCLAIMER: This post assumes that both the source server and the destination server are windows servers. Once upon a time there was a UNIX version of MAS 90/200 but I&#8217;ve never had to administer that version so I cannot guarantee that any of this will work for it.</p>
<p><strong>Here&#8217;s the scenario:</strong></p>
<p>Your current server is dated and needs to be replaced; you need to move MAS 90/200 data to the new server, and you&#8217;d also like to keep your existing users/roles&#8230; basically you&#8217;d like to move the data with the least amount of trouble possible. To do this, the following conditions must first be met:</p>
<p>(1) Your new server has a clean installation of MAS 90/200.</p>
<p>(2) Both installations are the same version; they both have had the most recent service pack installed from Sage (which you can usually download from their <a href="http://support.sagesoftware.com">support site</a> however you&#8217;ll need an active account)</p>
<p>(3) The data on the old installation is at the appropriate level (i.e. it has been converted/updated to the format required by the latest update/service pack.)</p>
<p>(4) The MAS service has been stopped on both servers (this service can usually be found in the &#8220;Services&#8221; snap-in, within the Microsoft Management Console.)</p>
<p>If these conditions are met, then the only thing you should have to do is copy the following directories from the old MAS 90/200 directory (Usually something like: &#8220;C:\Program Files\Sage Software\MAS 200\Version4\MAS90&#8243;) to the MAS 90/200 directory on the new server:</p>
<p>(a) All &#8220;MAS_XXX&#8221; directories (where XXX is the 3 character company code)</p>
<p>(b) MAS_SYSTEM (yes, if asked to overwrite)</p>
<p>(c) MAS_USERS (yes, if asked to overwrite)</p>
<p>(d) Reports (yes, if asked to overwrite)</p>
<p>Depending on your environment, you may need to update the MAS client on each workstation. On my network, MAS runs in a terminal services environment so the only thing *I* need to do at this point is run Wksetup.exe from the MAS90Wksetup directory (one time only, on the new server).</p>
<p>Sometimes after running the workstation setup program, your users will get an error stating that you are out of licenses. To fix this, copy the following file:</p>
<div class="code_block">C:\Program Files\Sage Software\MAS 200\Version4\MAS90\Home\Lib\Keys\activate.pvx</div>
<p>To:</p>
<div class="code_block">C:\Program Files\Sage Software\MAS 200 Client\Version4\MAS90\Home\Lib\Keys\activate.pvx&#8221;</div>
<p>Be sure to select &#8220;yes&#8221; if asked to overwrite the existing file.</p>
<p>That&#8217;s all there is to moving the data, however there is one problem you are likely to encounter:</p>
<div class="code_block">
<pre>Data location for company xxx is invalid</pre>
</div>
<p>Or, when you try to access a module for a client, you&#8217;ll get an error message about certain modules not being activated. Just close the error message and check the following:</p>
<p>(1) Select &#8216;Utilities&#8217; -&gt; &#8216;Data File Display and Maintenance&#8217; from the menu at the top of the screen and click &#8216;OK&#8217; on the warning message that appears.</p>
<p>(2) Click the &#8216;Browse&#8217; icon:</p>

<a href="http://nefaria.com/wp-content/gallery/miscellaneous-media/1.png" title="" class="shutterset_singlepic870" >
	<img class="ngg-singlepic ngg-center" src="http://nefaria.com/wp-content/gallery/cache/870__320x240_1.png" alt="1" title="1" />
</a>

<p>(3) You&#8217;ll need to navigate to the &#8216;\MAS_SYSTEM\SY_Company.M4T&#8217; file, and click &#8216;Open&#8217;</p>
<p>(4) Then, at the bottom of the window, you&#8217;ll need to select the &#8216;Key Scan&#8217; button in order to select the company that you&#8217;re having problems with:</p>

<a href="http://nefaria.com/wp-content/gallery/miscellaneous-media/2.png" title="" class="shutterset_singlepic871" >
	<img class="ngg-singlepic ngg-center" src="http://nefaria.com/wp-content/gallery/cache/871__320x240_2.png" alt="2" title="2" />
</a>

<p>(5) In the window that appears, look through the list of companies until you see the company that you&#8217;re trying to fix. Double-click the company, or, single-click the company and then click the &#8216;Select&#8217; button.</p>

<a href="http://nefaria.com/wp-content/gallery/miscellaneous-media/3.png" title="" class="shutterset_singlepic872" >
	<img class="ngg-singlepic ngg-center" src="http://nefaria.com/wp-content/gallery/cache/872__320x240_3.png" alt="3" title="3" />
</a>

<p>(6) Now you should be back at the &#8220;Data File Display and Maintenance&#8221; window; click the &#8216;Edit&#8217; button and select key #13 (AlternateDirectory$) from the drop-down menu:</p>

<a href="http://nefaria.com/wp-content/gallery/miscellaneous-media/4.png" title="" class="shutterset_singlepic873" >
	<img class="ngg-singlepic ngg-center" src="http://nefaria.com/wp-content/gallery/cache/873__320x240_4.png" alt="4" title="4" />
</a>

<p>Clear the data in the &#8216;Change&#8217; field and select &#8216;OK&#8217;. Do the exact same thing for key #14 (AlternatePayrollDirectory$). When finished, just close the &#8216;Data File Display and Maintenance&#8217; window by clicking the &#8216;x&#8217; in the upper right-hand corner.</p>
<p>Repeat these steps for every client/company that you&#8217;re experiencing issues with. There are other errors that can occur, specifically this one:</p>
<div class="code_block">Unable to spawn a new session. The command line required for the server process is too long</div>
<p>Instructions on how to address this, <a href="http://nefaria.com/2009/06/mas-200-error-unable-to-spawn-a-new-session-the-command-line-required-for-the-server-process-is-too-long/">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://nefaria.com/2009/03/transferring-old-mas-90200-data-to-a-new-server-clean-installation/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

