Nancy Street MCI32 Licence
Click to see the Site Map
HomeInfoMusicGalleryPetsGeoHobbiesGeo
Site MapWhat's NewRecent ChangesContactsServer StatisticsSite Information Home « Computers « DevBlog

Back to: Development Blog Contents

MCI32.ocx says "Class is not licensed for use".

After building a new development PC I found that I didn't have MCI32.ocx installed. I found this out by trying to play an MP3 file in my Onyx MP3 tagging application. I presume the file was installed and registered as a part of Visual Studio 6.0 that I previously used for C++ development. On the new PC I didn't bother install Studio 6.0, as all of my work was now done using Visual Studio .NET 2003. I didn't want to install Studio 6.0, so I ran some searches and came upon these links:

INFO: CAB Files Distributed with Visual Basic 6.0
Microsoft Multimedia Control 6.0

I downloaded the CAB file from the second link and installed the INF file, but it did not register the file. I then manually copied MCI32.ocx to the System32 folder and ran regsvr32 mci32.dll. This correctly registered the control.

When I ran Onyx and tried to play an audio file I received the "Class is not licensed for use" message. More searches revealed that a special value was need in the registry. I search the registry on my previous PC, which luckily hadn't been dismantled yet, and found a dozen extra entries under the HCR\Licenses key that were not on my new PC. On the old PC I found this curious entry:

[HKEY_CLASSES_ROOT\Licenses]
@="Licensing: Copying the keys may be a violation of established copyrights."

Overlooking this dire warning for the moment, I merged the old keys into the registry and tediously removed them one by one until the MCI32 control worked. Luckily again, it was the fourth one that I tried, this one:

[HKEY_CLASSES_ROOT\Licenses\B1EFCCF0-6AC1-11cf-8ADB-00AA00C00905]
@="qqkjvqpqmqjjpqjjvpqqkqmqvkypoqjquoun"

I then cleaned-up by deleting the other dozen irrelevant keys from the old PC. Finally I had the old MCI32.ocx Microsoft Multimedia Control working again on my new PC. I have no idea why this control is licensed as a part of the VB6 runtime, but I needed it back again quickly so I could play audio files from my old application.

News (07-Mar-2007)

For years I was wondering how to play audio files in Windows apps without any dependency upon special controls or libraries. I finally found the answer in late 2006 thanks to http://www.mentalis.org who supply a free C# code library called Multimedia that shows how it's quite easy to use the Windows MCI API to play audio.

Back to: Development Blog Contents


Contact Information | PGP Keys | Site Map | What's New | Visitor Book
Last Updated: 06-Aug-2007 21:10
Copyright © 1999-2007 Orthogonal Programming