<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Debugging a problem: Audio stops working after an XP SP2 install</title><link>http://blogs.msdn.com/b/larryosterman/archive/2004/08/16/215328.aspx</link><description>A number of people have asked for me to write up my experiences debugging a problem. The thing is that it’s hard to do that explicitly without disclosing internals of functions that probably shouldn’t be disclosed (because they relate to features that</description><dc:language>en-US</dc:language><generator>Telligent Evolution Platform Developer Build (Build: 5.6.50428.7875)</generator><item><title>re: Debugging a problem: Audio stops working after an XP SP2 install</title><link>http://blogs.msdn.com/b/larryosterman/archive/2004/08/16/215328.aspx#216870</link><pubDate>Thu, 19 Aug 2004 01:14:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:216870</guid><dc:creator>Norman Diamond</dc:creator><description>8/17/2004 8:11 PM Larry Osterman&lt;br&gt;&lt;br&gt;&amp;gt; If you find a DLL that wasn't signed by&lt;br&gt;&amp;gt; Microsoft (or other 3rd party code) running&lt;br&gt;&amp;gt; in a shared svchost instance&lt;br&gt;&lt;br&gt;But you said previously that this wasn't even possible.  If a virus installs itself as a service then it must be in a non-shared instance and it is safe to kill the thing.&lt;br&gt;&lt;br&gt;&amp;gt; And it's likely that you need to pave the&lt;br&gt;&amp;gt; machine &lt;br&gt;&lt;br&gt;By the way I did pave one friend's machine because he got an MBR virus while Windows XP was running.  Repeatedly I booted the Windows XP to the repair console, FIXMBR warned that the MBR was nonstandard but I proceeded and FIXMBR said it fixed the MBR, but it was lying.  Finally had to delete all partitions including the miniature FAT32 C partition, recreate a new miniature FAT32 C partition, recreate a new NTFS D partition and continue reinstallation from there.  I did some Googleing to find if it's really possible for a virus to infect an MBR while XP is running, and it seems there is one that can do it.&lt;br&gt;&lt;br&gt;I haven't decided yet whether to pave another friend's machine.  This one did have a ton of viruses in RUN keys in the registry and other places.  I left it with no visible viruses, but guess he probably still has a few hundred less visible ones.  I don't have another full day free to help him blowtorch his hard disk and start over though.&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=216870" width="1" height="1"&gt;</description></item><item><title>re: Debugging a problem: Audio stops working after an XP SP2 install</title><link>http://blogs.msdn.com/b/larryosterman/archive/2004/08/16/215328.aspx#216576</link><pubDate>Wed, 18 Aug 2004 16:26:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:216576</guid><dc:creator>Larry Osterman</dc:creator><description>DrPizza, the savings is several hundred kilobytes per service - several hundred kilobytes of PHYSICAL memory, not virtual memory.  That's NOT a &amp;quot;munute memory saving&amp;quot;, it's significant.&lt;br&gt;&lt;br&gt;And if you start splitting up shared services, then things WILL break.  I can absolutely 100% guarantee it.  Many of the services running in shared svchost processes have assumptions that other services are running in the same process, and will break if they're not present.&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=216576" width="1" height="1"&gt;</description></item><item><title>re: Debugging a problem: Audio stops working after an XP SP2 install</title><link>http://blogs.msdn.com/b/larryosterman/archive/2004/08/16/215328.aspx#216414</link><pubDate>Wed, 18 Aug 2004 09:23:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:216414</guid><dc:creator>DrPizza</dc:creator><description>&amp;quot;Iain, the reason I didn't describe them is that nobody except someone debugging the windows audio service has a reason to split it out.&amp;quot;&lt;br&gt;&lt;br&gt;This is utter bollocks.&lt;br&gt;&lt;br&gt;Various shared services can hang.  There's no way to restart them without killing the entire process.  This is a big problem, because it also kills the other shared processes which is not what you want.&lt;br&gt;&lt;br&gt;If a shared service has a tendency to hang, it's convenient to split it out.&lt;br&gt;&lt;br&gt;Frankly, I find the shared services a pain in the butt, and can't see any real justification for it.  A minute memory saving perhaps?&lt;br&gt;&lt;br&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=216414" width="1" height="1"&gt;</description></item><item><title>re: Debugging a problem: Audio stops working after an XP SP2 install</title><link>http://blogs.msdn.com/b/larryosterman/archive/2004/08/16/215328.aspx#216309</link><pubDate>Wed, 18 Aug 2004 04:03:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:216309</guid><dc:creator>Pavel Lebedinsky</dc:creator><description>&amp;gt; If you find a DLL that wasn't signed by&lt;br&gt;&amp;gt; Microsoft (or other 3rd party code) running&lt;br&gt;&amp;gt; in a shared svchost instance, you can be&lt;br&gt;&amp;gt; pretty certain that someone's infected your&lt;br&gt;&amp;gt; machine.&lt;br&gt;&lt;br&gt;Some of the services running in shared svchosts (like TAPI for example) can load 3rd party DLLs (TAPI service providers). This is a supported scenario.&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=216309" width="1" height="1"&gt;</description></item><item><title>re: Debugging a problem: Audio stops working after an XP SP2 install</title><link>http://blogs.msdn.com/b/larryosterman/archive/2004/08/16/215328.aspx#216279</link><pubDate>Wed, 18 Aug 2004 03:11:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:216279</guid><dc:creator>Larry Osterman</dc:creator><description>Norman, once again, this is a non sequiteur. &lt;br&gt;&lt;br&gt;If you find a DLL that wasn't signed by Microsoft (or other 3rd party code) running in a shared svchost instance, you can be pretty certain that someone's infected your machine. &lt;br&gt;&lt;br&gt;And it's likely that you need to pave the machine because you have no idea what has happened. Run an anti-virus scan immediately. &lt;br&gt;&lt;br&gt;But saying that it's safe to kill the process is silly. Some of these processes (winlogon.exe for example) are critical to the functioning of the system and will immediately cause a bluescreen. &lt;br&gt;&lt;br&gt;A more accurate statement is that if you find code running in svchost.exe that wasn't signed by Microsoft you need to start looking very, very carefully at the system to ensure that someone hasn't tampered with it. But killing random processes is a recipe for disaster. &lt;br&gt;&lt;br&gt;Edit: Sorry, Norman - I have a problem spelling your name for some reason.  I have no idea why I have this mental blank there, sorry.&lt;br&gt;&lt;br&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=216279" width="1" height="1"&gt;</description></item><item><title>re: Debugging a problem: Audio stops working after an XP SP2 install</title><link>http://blogs.msdn.com/b/larryosterman/archive/2004/08/16/215328.aspx#216185</link><pubDate>Wed, 18 Aug 2004 00:23:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:216185</guid><dc:creator>Norman Diamond</dc:creator><description>8/17/2004 12:29 AM Larry Osterman&lt;br&gt;&lt;br&gt;&amp;gt; Btw, as a tidbit of information, no 3rd&lt;br&gt;&amp;gt; party code is allowed to run in a shared&lt;br&gt;&amp;gt; svchost process&lt;br&gt;&lt;br&gt;This is helpful, thank you.  So if a virus installs itself as a service then it will be safe to kill that process, because no genuine services will be sharing the same process.&lt;br&gt;&lt;br&gt;&amp;gt; Oh, and Norman, in this case, the user&lt;br&gt;&amp;gt; accidentally did it.&lt;br&gt;&lt;br&gt;OK thank you.  By the way I have no complaint about the change in partition policy that came about with Windows 2000.  It used to be possible for Windows NT4 to be installed into the same partition as either 95 or 98.  Nonetheless, both then and now it is safer to install into separate partitions.  I just wish that Windows XP would remember that, for more than two reboots after I tell it to.&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=216185" width="1" height="1"&gt;</description></item><item><title>Why didn't XP SP2 install copy the right SP2 DLL when there was a DLL with a higher version number on the machine?</title><link>http://blogs.msdn.com/b/larryosterman/archive/2004/08/16/215328.aspx#215858</link><pubDate>Tue, 17 Aug 2004 20:40:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:215858</guid><dc:creator>Larry Osterman's WebLog</dc:creator><description>&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=215858" width="1" height="1"&gt;</description></item><item><title>re: Debugging a problem: Audio stops working after an XP SP2 install</title><link>http://blogs.msdn.com/b/larryosterman/archive/2004/08/16/215328.aspx#215556</link><pubDate>Tue, 17 Aug 2004 07:29:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:215556</guid><dc:creator>Larry Osterman</dc:creator><description>Pavel, I didn't know that they were documented anywhere.  Cool :)  Ok, anyone wanting to know the registry changes I made can look at the KB article that Pavel pointed to and figure them out.&lt;br&gt;&lt;br&gt;Iain, the reason I didn't describe them is that nobody except someone debugging the windows audio service has a reason to split it out.  I do it all the time, so I need to know that, but for customers, it's not particularly relevant stuff.  And the only reason I break audiosrv out is if I want to get the symbols off the net.  If the symbols are on the local machine, I usually just leave it where it is.&lt;br&gt;&lt;br&gt;And if you start randomly pulling services out of svchost groups (for &amp;quot;diagnostic purposes&amp;quot;), then the system WILL start breaking.  Many of these services are designed to work in the same process, and will break in subtle ways if they're pulled out. And no, once again, I'm not going to tell you which ones will break.  You start messing with the registry and you're on your own.&lt;br&gt;&lt;br&gt;I don't want to hear that someone called PSS to get their machine fixed up and told PSS that Larry Osterman told them how to split services out from the svchost process in which they were designed to run.  As Pavel said: Changing the default configuration is NOT supported.&lt;br&gt;&lt;br&gt;Btw, as a tidbit of information, no 3rd party code is allowed to run in a shared svchost process - because the svchost processes are services that are required for system reliability, we don't allow any 3rd party code in them.  Please note: a SHARED svchost process.  There are svchost processes that only run one service (like the spooler service).&lt;br&gt;&lt;br&gt;Oh, and Norman, in this case, the user accidentally did it.  He ran a script to install a component he was working on that copied a longhorn version of a DLL to his machine (actually it copied a bunch of DLLs to his machine, audiosrv.dll was the only one that caused problems).  For the work he was doing, he was able to mostly get away with it (back last year when he did it), running the same script nowadays would fail (since there's now a version check).&lt;br&gt;&lt;br&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=215556" width="1" height="1"&gt;</description></item><item><title>re: Debugging a problem: Audio stops working after an XP SP2 install</title><link>http://blogs.msdn.com/b/larryosterman/archive/2004/08/16/215328.aspx#215526</link><pubDate>Tue, 17 Aug 2004 05:23:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:215526</guid><dc:creator>Iain</dc:creator><description>I'm curious. How can you say &amp;quot;nobody needs to know them&amp;quot; of the registry modifications when they made your life easier? Surely this would have been much more painful without them?&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=215526" width="1" height="1"&gt;</description></item><item><title>re: Debugging a problem: Audio stops working after an XP SP2 install</title><link>http://blogs.msdn.com/b/larryosterman/archive/2004/08/16/215328.aspx#215445</link><pubDate>Tue, 17 Aug 2004 01:09:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:215445</guid><dc:creator>Pavel Lebedinsky</dc:creator><description>Actually, svchost registry settings are documented in &lt;a target="_new" href="http://support.microsoft.com/?id=314056"&gt;http://support.microsoft.com/?id=314056&lt;/a&gt;&lt;br&gt;&lt;br&gt;I think this is mostly for troubleshooting purposes - changing the default configuration is probably not supported.&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=215445" width="1" height="1"&gt;</description></item></channel></rss>