Manual Installation instructions for Windows Media Connect

For various reasons, it is often useful to have instructions for manual install or uninstall of an application. Perhaps you'd just like to "reset" all of the settings without actually deleting or re-adding any of the files.  Here are the manual install and uninstall steps for Windows Media Connect.  Note, these are not officially supported, but they may be of use.  Before you begin, you’ll need to get your hands on the RAW WMC v2 files.  The easiest way to do that is to get the install package from the download center and extract the files from the package using WinZip or a similar program.

  1. Create an install directory.  Something like c:\program files(x86)\Windows Media Connect 2
  2. Copy wmccds.exe, wmcsci.dll, and wmcfg.exe to your install directory.
  3. Open a command window and navigate to your install directory.
  4. Run "regsvr32 wmcsci.dll"
  5. Run "wmccds.exe -installwithfiles" ( or just -install if all the support files are already present in the directory)
  6. Run wmccfg.exe and complete the "first run wizard"

To uninstall WMC (without removing any actual files)

  1. Exit wmccfg.exe (not just close to the task bar, but actually exit)
  2. Run "wmccds.exe -uninstall"
  3. Run "net stop wmconnectcds" to stop the service.
  4. Run "regsvr32 -u wmcsci.dll".

You don't need to do any manual registry cleanup for WMC as it simply removes all of its registry entries on uninstall and creates them on install.

Hmmm, seems too simple doesn’t it?  This is actually a bit of work that I’m very proud of.  During the development of a product you end up installing the silly thing several times a day to unit test your progress. Over the course of a year that might be thousands of times.  I knew this at the beginning of the project and I waned to automate the process, so I added a command line switch to our service executable that would do all of the install steps.  All you had to do was run our main .exe on the command line with the install switch and it would install.  Nice huh.  I told my boss, “Well this is just for development. We can take it out or leave it undocumented when we ship.”

The idea took root in the team and soon everyone was using it. Sean, one of the other developers on the team too the idea even further.  He did the work to add a bunch of support files to the product (the various icons and images needed). In addition to adding them to the project, he also added them as resources into the main executable.  After that he wired up the -installwithfiles switch to call all of my code and then unpack the support files into the same directory as the main executable.  Fantastic!

The result was pure magic.  All that was needed to do a manual setup was to copy a few files and run a command line switch.  Uninstall was the same way.  It was so useful during development that we kept it up to date as things changed. If this saved 10 minutes per install per developer over the course of the year then it is likely that this saved hundreds of hours of development time for the team.

When it came time to author the full install package for the release it just called our command line switch.  At that point, there was no removing it. It became a feature of the product.  It still isn’t officially supported, but our install depends on it working so it should work for you too.