Skip to content

Posts from the ‘Windows’ Category


USB Concentrators And The Software That Sells Them

Recently I’ve been targeting some old servers for virtualization. Getting rid of these old, slow, power sucking, rack hogging servers should be in my job description… worded just like that.

Only thing keeping these dinosaurs around is software that the developers have decided was so unique and expensive that they require USB dongles to prevent us from posting their software on the internwebs for all to download and install.

Software like, CNC machining and CAD drafting licensing servers. No only do these license servers require a stupid USB dongle – they also call home to check in. Redundancy? You bet. Do they care? Not that I can determine. License servers are nice and very handy in an educational environment where the software can be installed in many rooms – but only scheduled to be used in one room. The software on the desktops check out a license when launched and won’t run if there are no more left.

So when I want to virtualize a server like this – I can’t because virtual servers don’t have USB ports. No USB port, no USB dongle to authorize the license server. No license server, no desktop software will run.

Luckily there is a fix – USB Concentrators. A USB concentrator is simply a box with USB ports on one side, a network port on the other, and some fancy software in between and on the virtual machine itself. With a bit of software and a pinch of luck, your VM will have a true, i’m touching reality, USB port.

We have a few of these damn USB dongles for various software, so I was able to justify the 14 port Digi AnywhereUSB concentrator. Our EDU price weighed in at about $1,400. Yep, a C-note per port – thank you software DRM. Luckily they now are routable – so one concentrator can support servers in multiple locations. They make smaller ones, but the cost per port is higher and we’d need two of them – which brought us within a few hundred bucks of going for the 14 port.

One of our license servers, GibbsCam, decided it wasn’t going to work with our Digi AnywhereUSB ports. After a few reboots and reinstalls, Windows actually kicked off a “Problem Report and Solutions” report that explained that a service called HASP had gone over the deep end and after checking with Microsoft – a fix was recommended. Insert shocked emoticon here, because that’s a first that this service has actually provided usable information – and insert a second shocked emoticon for software that I wouldn’t consider commonplace is actually tracked by this.

A couple of clicks later, I’m staring at a new web page hosted by, specifically this one.

After downloading and installing the HASP update, our USB dongle was recognized and we could continue on with the heavily DRM’ed license server – in a virtual environment.

This is not a knock on GibbsCam support, they actually do rock. To complete our install they had to “adjust or reset” some settings on their end. But they returned their calls quickly and we’re professional about it.

I’m more upset about the layers of DRM used by them to prevent piracy or non-compliance of their software. I’m also upset with the fact that companies that have to deploy hardware to support this crap when a very viable solution is already available that doesn’t require hardware.

The end of the story really is this: If you’re going to be paranoid about someone stealing your software, just have the software phone home -or- require a hardware key. Neither will prevent all piracy, but the problems with requiring hardware is archaic and an assumption that your customers are running hardware to support it.

It’ll take us about 2 years to recoup the cost of the USB concentrator… a waste of money that could have been put towards more software licenses or things that would actually help students like workstations and teachers – if these dongles didn’t exist.


Exchange 2010 SP1 Outlook Web App login customizations.

I’m updating the code in this article using BitTrack Decode HTML to provide you with easy to read code.

I needed to add some code to the OWA page to help our Help Desk get people logged on quicker without so much hand holding.

So here are the three changes I did to the file logon.aspx found in the path (if you let the Exchange 2010 installer chose the default path): C:\Program Files\Microsoft\Exchange Server\V14\ClientAccess\Owa\auth\

Login Domain Reminders

Customize this however you wish with any HTML code you want. I have two domains that log into this interface, and the email addresses only match Domain2’s UPN, so to make it easier for everyone – we’ve standardized on domain\username. But this code will show up above the username login table but below the Public/Private radio buttons and explanations.

Look for the following lines of code:


<input id="username" name="username" type="text" />

Below the

tag but above the

Insert a new line of code (or multiple, you have the entire table width available):

<span style="color: #ff0000;">&#9830</span> Domain1 use: <strong>domain1\user name</strong>
<span style="color: #0000ff;">&#9830</span> Domain2 use: <strong>domain2\user name</strong>


Invalid Credentials

If a user enters incorrect information, the login page will change to display an alert to tell the user why their email hasn’t appeared on the screen. We wanted to make it easy for a user to find our password reset page, so we included some additional html to provide them a link to the page.

Look for <%=LocalizedStrings.GetHtmlEncoded(Strings.IDs.InvalidCredentialsMessage)%>

Insert between %> and the following text:

Visit https://pwreset.domain.tld to reset your password.

Obviously, you could include any other text that is relevant to your environment to assist your users.

Connected to…

I have to client access servers setup using MNLB, so they both respond to requests to our OWA URL. If either one of them is having a server specific problem, it’s a pain typing in each FQDN URL to test, when I can just insert a little text at the bottom to tell me or the user which server is serving them.

Look for (Strings.IDs.ConnectedToExchange)%>

Insert between %> and the following text ”’Client Access Server 1”’ or ”’Client Access Server 2”’ as appropriate.

The finished line of code should look like this:

<%=LocalizedStrings.GetHtmlEncoded(Strings.IDs.ConnectedToExchange)%>Client Access Server 2


Windows 7 RC FTW

windows_7_graphic I think Microsoft may have finally created an OS that can replace Windows XP. Of course I’m only speaking about my personal experiences with the latest incarnate of Windows, but it’s all pretty positive.

Same spec’ed laptop as the Windows 7 Beta review I posted a while back. Running its native Vista 64bit installation, I decided to try the upgrade path instead of a clean install. The worst result is an unstable install that I would nuke and do a fresh 7 install.

The upgrade took damn near 2.5 hours, mostly thrashing the hard drive moving files around. The installer was detailed enough to give me a percentage of completion on each task plus an overall progress bar – but never an estimated time (that has never been correct in the history of any Microsoft progress bar anyway).

After the upgrade – everything worked. The laptop was still a member of the domain, fingerprint scanner, graphics driver, network adapters, bluetooth… heck even iTunes and Outlook 2007 was working.

I’m fairly impressed and it seems to be catching on around the office – two others have upgraded or installed a VM to see the buzz. I think we made the right choice to skip Vista on the desktops and wait for 7 to bake in the Microsoft oven long enough to be a worthy replacement.


Seven days of Seven

After using Vista for the last few months, I was eager to test the new Windows 7 beta. It was released on Friday, but with typical Microsoft distribution – their servers were overloaded. I was able to obtain a copy from the MSDN distribution site on Sunday.

I wanted to leave myself with a comfortable weekend just in case I wanted to revert. I could have dual booted, but I want to force myself to make it work and see what doesn’t.

Test Platform

I need to make sure I have a working Windows machine for work and home, so I decided my ThinkPad T400 was a good candidate for this beta test. I have a working desktop at work and one at home just in case I need it in a pinch.

  • CPU: Intel Core 2 Duo T9400 2.53Ghz
  • Memory: 4GB PC5400 DDR
  • Hard drive: 200GB 7200RPM Hitachi (full disk encryption, hardware based)
  • ATI Mobility Radeon HD 3400 – 256MB
    • the secondary low power onboard Intel video adapter is disabled for this trial until drivers are released
  • 14.1” Widescreen LED backlit WXGA


Today is day 1 of actually using it. The installation went smooth and uneventful. The esthetics of the installer have been tweaked slightly but that’s just marketing. I was glad I didn’t have to change my SATA settings to “Compatible”, now the installer has AHCI drivers to allow me to leave the hard drive controller in its higher performing state.

I did notice the installer created a 200MB partition during installation. There’s about 33MB of data on this partition right now, but after further review, it appears this was for the EFI System Partition. Extensible Firmware Interface (EFI) is the attempt at moving PCs away from using 16bit PC BIOS limitations.

Wireless, wired networking, and sound worked right out of the box. Intel gigabit Ethernet and an Atheros based 802.11b/g wireless card aren’t devices too far off the beaten path. Vista did require me to have these drivers available before installation as they weren’t built into the installer.

ATI Mobility Radeon HD 3400 video drivers were also included with installer, however they are labeled “prerelease WDDM 1.1” and Lenovo hasn’t made updates available yet. ATI has published beta versions of its Catalyst software which I’ll be installing shortly.


Lenovo has already published a Windows 7 Beta drivers site for those of us willing to be subjects of Microsoft. As of today they have only posted the drivers for active hard drive protection system for 32 and 64 bit installations. If I had a choice, this would have been one of the first on my list for obvious reasons – thanks Lenovo.

imageFingerprint reader drivers were not available from Lenovo, but beta versions of the  drivers were available directly from the fingerprint manufacturers (Upek and AuthenTec x64 or 32bit) . After locating the correct drivers, Windows 7 now handles the biometric enrollment and authentication from within the OS without requiring additional software hooks and compatibility issues cropping up.


I did have a few gotchyas though. Originally my laptop was using a biometric single sign-on. Which would unlock the computer, hard drive, and then log me in to Vista with my domain account. After installing Windows 7, the biometrics were still working to allow me into the computer, but would error out during the OS start. I disabled the computer password and hard drive password until I could start Windows and adjust the biometrics settings. After further review it appeared that this was actually expected behavior and disabling the hard drive and computer password is recommended when you install an OS.

The wireless light on the screen bezel isn’t lit up, even during use. This makes it a bit tricky to see which network I’m actually using now. The icons on the status bar do not flash with activity – so now I don’t have a good network traffic indicator. I’m sure a driver update from Lenovo will resurrect this LED, but I wish Windows 7 gave me the option (like the previous four versions of Windows) to have the network icons flash in response to traffic.

Two unknown devices are listed in the device mangler, but both are directly related to Intel AMT features that I don’t use, so I’m not worried about them.

Antivirus software is limited, although a few providers have stepped up with demos and beta versions for Windows 7 users to download.

iTunes is functional – barely. iPod sync is not functioning correctly and causes iTunes to behave very strangely.

I’ve had Internet Explorer lock up a few times – once requiring a hard power off to clear

Interesting observations:

When downloading in Internet Explorer, the taskbar button becomes the progress bar. Handy when the download is forced to the background and no task bar buttons contain text.


I won’t repeat what’s already published elsewhere, but here’s a good list of wizbang stuff Windows 7 is bringing to the table:

Another interesting feature that IE has began to display is to highlight the actual domain name and TLD. This will help users avoid falling for phishing scams that obfuscate the domain of a trusted site, for example…, but the user is actually at which is just a fake site setup to steal your identity…


I hope more browser begin to provide this simple function.

So Far

So far, it’s been a good beta evaluation. It’s obvious 7 is based on Vista, even though Microsoft is slapping a new number on it, but they took a lot of shit feedback from Vista users and look like they’re making the operating system the foundation again – not the “we will do everything for you” software bloat.

Yes, having nifty features like photo editing and email are nice – but wholly unnecessary. People shall be allowed to use their own choices in software and not get in the way with what the corporation thinks is best. After all, this isn’t OS X we’re talking about.


Crouching Vista, Hidden Telnet

I use the command line a fair amount of time because its a quick and easy way to perform small tasks with different input. Like DNS lookups using dig, or FTP just to grab a quick file without having to configure yet another FTP profile in my FTP client.

Telnet is one that I truly miss in Vista. Fortunately its still there, just disabled by default. I’m sure that decision was part of Microsoft’s ideal secure operating system. I could easily see how telnet could be used nefariously by a virii or trojan.

For those of you who want it back, it’s so simple to install it… don’t go out and buy a client, unless you absolutely need to.

1. Open Computer Computer
2. Click on the button along the top of the window called :  Uninstall or change a program uninstall a program
3. Click on Turn Windows features on or off in the Tasks column to the left of the main window. tasks
4. Allow the process to run by ack’ing the UCE pop-up window (if you haven’t already disabled UCE)
5. Scroll through the list of Windows Features, until you find Telnet Client. Mash the check mark followed by the OK button. winfeatures
6. Wait for the install to finish, and you’re good to go! telnet

If you want something more robust or at least with a GUI or can handle more technical tasks or customization, check out PuTTY. A handy windows installer is available from them. Or if you prefer to bring your utilities with you, check out the portable version.


Share your favorite in the comments.

%d bloggers like this: