|
DeathsTouchMud Newbie
Joined: 03 Sep 2004 Posts: 1
|
Posted: Fri Sep 03, 2004 1:11 am
Class not registered error |
Hello, I have been using Zmud for around two years or so, and I love it. I have hardly ever run into any problems with, until today. I just upgraded from windows xp home to windows xp pro, and when I went to startup Zmud, it gave me an error saying it couldnt open the databases. I checked the faq, ran the mdac checker, it said everything was ok. So, I figured I'd just uninstall, remove the old Zmud folder, reinstall, see if that solved the problem... solved. Nope, now when I try to run Zmud it gives me a class not registered error. Anyone have any idea as to what the problem is? I am already going through Zmud withdrawals, lol, please help!!
edit- I decided to go ahead and download the mdac 2.8, that solved the problem, the checker must have missed it. :) |
|
|
|
Zugg MASTER
Joined: 25 Sep 2000 Posts: 23379 Location: Colorado, USA
|
Posted: Fri Sep 03, 2004 6:10 pm |
Just in case other people have this error message and read this post...
First, isn't it sad that Windows can't be bothered to tell us *what* class is not registered! In any case, zMUD uses two external classes:
1) The ZSCONVERT program that comes with zMUD registers a custom class for that allows zMUD to convert old maps and settings files. Sometimes this class can get messed up on your computer, especially if you move files to a different disk so that the system can't find the ZSCONVERT program any more. The solution to this is to simply run the ZSCONVERT program and then exit. This will re-register the class and fix the registry.
2) The other classes that zMUD uses are part of the Microsoft MDAC/Jet database software that is part of Windows. This is by far the most common cause of the error message. There is lots of software that improperly installs MDAC (even Microsoft software) so it is easy to get a DLL file overwritten by an older version that will then mess it all up.
Unfortunately, the Microsoft installer for MDAC tries to be TOO SMART. It will refuse to do anything if it thinks that MDAC is already installed on your system with the correct version. It doesn't actually check any files on your disk...it just checks the system registry entries. And if these registry entries look fine, the installer doesn't do anything. You often don't even get any error message. So you *think* you have updated MDAC, but really you haven't.
If a new version of MDAC is available, then you can try installing that. Since the Microsoft installer sees that you are installing a new version of MDAC, it will then update the files properly. But once that new version gets corrupted, then the install will refuse to fix the files again. So it's a constant problem.
There have been some other posts on this forum describing some of the Registry keys that you can delete to force the MDAC installer to work. But that isn't for the faint-hearted. If you know enough about computers to be editing the registry, then you probably won't have any trouble search this forum for those other posts.
The only other way to *force* MDAC to install itself properly is to reinstall Windows and the re-apply all of the service packs and updates using the Windows Updater tool. MDAC is part of these service packs, but Jet is not. So you still usually need to go to the http://www.zuggsoft.com/data page to install the Jet drivers for MDAC.
Anyway, keep at it. Sometimes trying to install MDAC more than once helps. I had a situation where installing 3 times (and rebooting between each one) actually finally worked. I have no idea why. The annoying MDAC installer is one of the biggest headaches I've ever encountered with Windows and I wish Microsoft would someday fix this so that it always updates the DLL files correctly instead of just assuming that the registry information is correct. |
|
|
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|