The odd bit

Once is an accident, twice is a coincidence, three times is an enemy action.

The odd bit - Once is an accident, twice is a coincidence, three times is an enemy action.

Administrative shares in Windows 7

Those who have experience with NT-based operating systems on a network will certainly be familiar with the concept of administrative shares. If that doesn’t ring a bell, you access them like \\computername\c$. With this intro and the title of this post, you might be alarmed or enter panick mode fearing they might be gone in Microsoft’s latest OS iteration. Well don’t go into cardiac arrest because they are still there… but of course not without the odd problem.

Windows 7 still creates the administrative shares on install, but you can’t use them out of the box. First of all, you need to have File and Printer Sharing enabled. And the way to do that has once again been changed:

  1. Open the control panel.
  2. Go to Network and Internet.
  3. Go to Network and Sharing Center.
  4. In the left column, click on Change advanced sharing settings.
  5. There are two profiles. You probably don’t want this on when you’re on a public network so open Home or Work.
  6. Under the header File and Printer sharing, select the Turn on… option.

And now your administrative shares still don’t work :-P You’ve just completed step 1 which implies there’s at least a step 2 and here it is: you also need to change the registry.

  1. Click on the orb (= the round button with the Windows logo in the taskbar) and type regedit in the search box.
  2. Open the registry editor.
  3. Navigate all the way to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System.
  4. Right-click in the pane on the right side and add a new DWORD (32-bit).
  5. Give the new setting the name LocalAccountTokenFilterPolicy.
  6. Double click on that setting and give it a value of 1.

It’s probably wise to reboot after doing this, although it might not be needed. I’m not sure if it works straight away because I rebooted without trying.

Anyways, if you’re lucky you will be able to access administrative shares after performing these steps. If you’re unlucky, like me, doing all these things appears to have zero effect at all. Once again don’t panick, because there’s another hint/tip/solution coming your way.

Somewhere at some point during the installation or configuration of Windows 7, you will be asked to do something with a thing called Homegroup. It’s some weird new sharing tool that looks OK but isn’t quite what you’re used to. Once you have enabled that feature, you won’t be able to use the administrative shares. So the tip is: disable the homegroup feature.

  1. Open the control panel.
  2. Go to Network and Internet.
  3. Go to HomeGroup.
  4. Click on the blue link Leave the homegroup.

The popup dialog should point out itself, but I believe I picked to first option. Once I had left the homegroup, the administrative shares started working again.

I hope this post can help anyone who experiences the same problem.

Windows Vista: Explorer opens folders in a new window

Recently, Vista started opening folders in a new window even though “Open each folder in the same window” was selected in the folder options. Obviously something had changed but I didn’t know what. There were more indications that something was wrong, including:

  • Explorer opens folders in a new window, ignoring the folder options setting.
  • The Windows flag on C: is gone.
  • DVD-drives are labelled as CD-drive.
  • Trying to access a CD/DVD results in a Format blank disc dialog box.

Searching the internet resulted in heaps of complaints about the new window issue so finding the right fix wasn’t easy. It turned out that Internet Explorer 8 was the culprit. So there you have solution #1: uninstall IE8. Actually, that’s not a solution so I wasn’t satisfied :)

Another solution that I encountered a couple of times suggested to launch IE8 as administrator. Several users reported that this method fixed the problem, but it certainly didn’t fix it for me.

Eventually, I found a comment on the IEBlog with a list of 19(!) steps to fix it. Fortunately, and as noted in the comment too, step #11 seems to be the critical one. I was able to solve all issues mentioned above by doing this:

  1. Open a command prompt as administrator (right click -> Run as Administrator)
  2. Type: regsvr32 actxprxy.dll
  3. Click OK in the popup window.
  4. Reboot

And Vista was back to its normal self. YMMV!

MOSS 2007: laugh or cry?

When Microsoft released Microsoft Office Sharepoint Server (MOSS) 2007, it was touted as The Next Big Thing™ for enterprises. And that’s where the good news ends…

This piece of software has so many issues I don’t even know where to start. My first encounter with it was when I had to evaluate the web content management features of the product. That evaluation period lasted about a week, but was stretched to a month just for the sake of it. When coming from something like eZ Publish, it felt like I had done some time travelling all the way back to the Stone Age [1].

A remarkable feat that Microsoft managed to pull was to release an anti-developer product. My career is still pretty short, but it was the first time that I encountered a piece of software that was set on making a developer’s life as hard as possible.

After the dust had settled and a couple of holidays had joined other historical facts, it was time for the second encounter. The idea was to give the collaboration features of MOSS 2007 a test run. So my colleagues and I clicked around when we suddenly noticed the “My site” link. A harmless link [2] to a personal site… until we (= 3 persons at that time) managed to click at the same time: one arrived at the personal site, one got an error but managed to proceed and the other one got an error and another one when trying to proceed. Guess which one was me… I was told it was caused by the speed of the network connection. Makes sense? Not to me.

The security settings regularly start leading their own life causing all sites to go down, file uploads went wrong and blocked all edit actions on document lists, etc. These are just a couple of things, but I could go on for quite a while. It’s at a point where I don’t know whether to laugh when it goes wrong or to cry with the fact Microsoft managed to produce such a nightmare.

[1]: I know there were no computers back then, but let’s forget that little detail so I can make my point ;-)

[2]: Or so it seemed…

IE8 defaults to IE8 now

One of my previous posts mentioned that IE8 would default to IE7 standards mode unless web developers would specifically request the new IE8 mode. Well, there’s some good news coming from Redmond.

The IE team announced that they changed the behaviour. IE8 will now use its most standard compliant rendering mode for pages that meet the criteria for standards mode. If you, as web developer, want pages to be rendered using IE7′s standards mode you will have to use the META tag or the corresponding HTTP header. So they did the right thing and made this feature an opt-in feature: you only have to act if you want to use this feature.

I’m glad Microsoft listened to the web developer community and did the right thing. This puts the burden on the developers who don’t want to fix their pages and it might persuade them to update their code if it’s broken in a new IE version.

In other IE8 news, Beta 1 of Microsoft’s newest browser is now available. This is only intended for web developers and designers. If you are a regular user, you should skip this release.

IE8 defaults to IE7

This is surreal… I just posted about Microsoft’s latest trick with IE8 and a meta tag and I already have an update that warrants a new post. Through some reading and clicking, I arrived at a blog post by Jeremy Keith on this subject. Without going into the pros and cons of the meta tag, his post shows me three things.

The first thing is the format of the tag. It appears it will take the following form:

<meta http-equiv="X-UA-Compatible" content="IE=8" />

A second point is IE’s default behaviour. In this case, default means without any changes to existing pages. Apparently, Microsoft decided that, without meta tag, a page will be rendered in IE7 mode. I’m going to borrow Jeremy’s words because they are perfect:

Unless you explicitly declare that you want IE8 to behave as IE8, it will behave as IE7.

That’s just plain ridiculous! What’s the point of creating a new version if the default behaviour is to use the old version? I guess this is Microsoft logic.

The third point is closely related to the second one. The right default behaviour would be to use the current browser version. There is a way to activate that option by using IE=edge as… you guess it, value for the content attribute of the meta tag. Using that trick is strongly discouraged though.

So essentially this means the meta tag is not an optional step, but rather a mandatory part of creating a web page. To use the mode associated with a browser version beyond 7, you have to specify it. To disable the checks, you also have to specify it.

This is so surreal and such mess..

Microsoft does it again: IE8 and web standards

I thought this was a really early April’s fool when I first read it, but this is all over the place it just has to be true. I picked it up from Robert O’Callahan’s blog. I don’t know who keeps inventing these things, but sometimes you just can’t come up with such funny jokes no matter how hard you try.

Microsoft feels they made a mistake when they changed the behaviour of the “Standards compliant” mode between IE6 and IE7. They argue that web developers had implemented hacks to go around the imperfections of IE6′s standards mode (no kidding, the standards mode really didn’t live up to its name). Then IE7 came and it shipped with improved support for standards. But because of IE detection, IE7 received the same content as IE6 and as such the improved standards mode broke more than it fixed (that says more about the web developer though, I haven’t done a lot of fixes to be IE7-compatible).

So the folks in Redmond believe they should do something. Web pages are developed for a particular browser version and they should never break in a newer browser. It should be rendered by the engine it was created for. Microsoft’s solution? Let’s ship different rendering engines!

<insert awkward silence>

The first thing I can think of is maintenance hell. The second thing I can think of is development hell and the third thing is testing hell. So basically, IE is heading to hell. Small clue for certain readers: typing this paragraph made me think of a certain Peanut. But wait… there’s more from the Redmond Beast!

What if you, as web developer, know a page is compatible with a new IE engine? Just because you know how to do your work shouldn’t leave you with old pages stuck in an old IE version, right? Well, Microsoft agrees and they’ve come up with a way to signal which IE mode you want. You can indicate your page’s compatibility by using a … wait for it … <meta> tag! And it will be a meta tag of the http-equivalent type so you can achieve the same effect by sending an HTTP header via the server.

Is it just me or does Microsoft have a nose for picking the worst solution to solve a problem? Instead of fixing their part, they’re putting the burden on the developers once again. Before IE8 comes out, we can all waste hours/days to add their silly meta tag. This is all for Microsoft’s “Don’t break the web” philosophy. Well hello, Microsoft! You broke it in the first place, fix it without harassing us every time you release a new version of Internet Exploder.

Mind boggling questions sometimes have a really easy and simple answer. How can we make the web a better place? Get rid of IE and leave the web to browsers.

Oh, for the record: this has been made official on the IE Blog.

Tracing two more Vista issues

After successfully defeating Windows Vista in the media playback department, I’m tracing two more issues. I only noticed these issues last week when trying Futuremark‘s latest incarnation of the PCMark benchmark: PCMark Vantage.

The first issue doesn’t really have a performance impact. When starting PCMark Vantage, it told me Windows Mail was running. Ehh? Unfortunately it was not a detection error because Windows Mail was really running. That’s pretty strange because (a) I haven’t even configured any email client on my laptop and (b) I would certainly not use Outlook Express or its new version as my email client. But there’s even more weirdness involved. By tracing the winmail.exe process, I found out it was launched by the same process that caused the media playback issues: “svchost.exe -DcomLaunch”. What the hell?

I’m still trying to find out why Windows Mail gets launched by the Dcom server. The bad part is that there’s much less information available than with the media playback issue. If anyone has any clue, please let me know through the comments.

The second issue surfaced when copying the PCMark installer from my main machine to my laptop. Transferring files across the network is SLOW! And it can’t be the network… Initiating the transfer from my PC results in a sustained network throughput of 90%. Initiating it from my laptop makes the throughput peak very briefly, followed by a stall in network activity. The net result is a 20 second difference doing exactly the same transfer. For a ~650MB file on a 100 megabit network, that’s a huge difference.

A search on the internet quickly revealed I’m not the only one. I’ve tried several suggested fixes, but none of them improved the performance. I had my hopes set on a tweak of the new TCP/IP stack in Vista, namely:
netsh interface tcp set global autotuninglevel=disabled
but that didn’t help either. Again, magical solutions or hints are much appreciated.

Aside from those issues, I’ve been much happier with Vista once I disabled the indexing service (it really does trash the HDD) and system restore. Both “features” put a high burden on the HDD and the system feels much more responsive with those two things turned off.

Windows Vista: Long delay when switching songs in media player

There you are: Windows Media Player (WMP) running, all songs loaded in its library and you hit the ‘play’-button. It picks the wrong song and you click the ‘next’-button. Instead of starting the next song immediately, a pretty long pause follows the release of the button. As if there’s some artificial intelligence pondering if it should play the file. Rest assured, the song will start eventually. You can live with that for a couple of songs and then the mind starts asking questions. I don’t have to wait in Windows XP so why should I have to wait in its youngest sibling? And so the quest for a solution starts…

The pause is the most noticeable event, but it’s the result of something else: one of the svchost.exe processes loves the CPU and starts eating cycles. So it’s some Windows service causing all of this, but which one (for the unknowing: svchost.exe does a lot in Windows and there are multiple processes with that name)? Process Explorer to the rescue! And that nifty program told me the spike in CPU usage was caused by “svchost.exe -DcomLaunch”.

The fun isn’t over yet. That process is associated with two services: DCOM Server Process Launcher and Plug and Play. For the Vulcans among us, all logic stops there for a second. What do those two services have to do with WMP? The answer is provided by Vista’s new audio engine. The new engine supports several audio “enhancements”. But for the enhancements to work, the engine needs to determine if your hardware is up to the task. And when does it check that? Each time a sound output device is accessed. That’s pretty nice if you can do a hot swap of sound hardware, but I don’t see me doing that anytime soon. Anyways, it does provide us with the link to the correct service because checking hardware is done by the “Plug and Play” service.

One might think that deactivating each enhancement would solve the problem, but that’s wishful thinking. The configuration of the enhancements is located in the properties of the sound hardware. When opening the tab, I found out that no enhancements were active. Hmmm… so why does it check the hardware? Well, it does that in case you actually enable an enhancement. To completely stop the hardware checking, you have to tick the box labelled Disable all enhancements. As soon as you do that, Vista finally understands you don’t want to use them :-)

It took me quite some time to figure this out. I hope this post can save some time for those who experience the same problem.

Zune Not Compatible With Vista

This is a rather funny fact unless you’re the owner of a Zune, Microsoft‘s new digital media player. Somewhere between all support pages for the Zune and its software is a document that lists the compatible operating systems.

The page mentions that the Zune software suite, released after Windows Vista went RTM, is not compatible with Microsoft’s upcoming operating system. The unlucky are told to “check back soon for updates”.

Nice one, Microsoft! ;-)