LegacyUpdate
LegacyUpdate copied to clipboard
Failed to execute ActiveX control on Windows 2000 SBS
I using Windows 2000 Small Business Server and I can't manage to get LegacyUpdate working. During the loading process, IE6 freezes and a few seconds later displays the error code "800A01AB: Unknown error" or "Unknown Error 84". Trying to check the WSUS server ends up with the error message in the screenshot. Please refer to the screenshots for more details. I'm using the latest version and did also a reboot afterwards.
Don't hesitate to ask for more details.
Wow, that’s a weird one… even crashing the crash dialog! Let me try setting up a 2k SBS VM and see if I can debug this.
I don’t think it’ll change much, but just to get it out of the way, could you try the following in a cmd (close IE first):
cd "%ProgramFiles%\Legacy Update"
regsvr32 /u LegacyUpdate.dll
regsvr32 LegacyUpdate.dll
Just to be sure it isn’t a weird fluke where it somehow messed up registering the dll.
Thanks for your reply. I've unregistered and registered the DLL successfully, but the error still persists. A Windows SBS 2000 is basically just a "Windows 2000 Server". So any W2K Server product key works.
_vsnwprintf
which what StringCchPrintfW uses require special treatment for W2K
https://github.com/tpn/winsdk-10/blob/master/Include/10.0.14393.0/shared/strsafe.h#L109
https://github.com/tpn/winsdk-10/blob/master/Include/10.0.10240.0/km/ntstrsafe.h#L100
#define STRSAFE_LIB
before including the strsafe.h header file.
Add strsafe.lib to the TARGET_LIBS line in SOURCES
this would increase the binary size (and lose the string safety for other OSs), so it might be better to create separate dll for W2K :)
I've spent some time trying to reproduce this and haven't been able to, and I've got a complete SBS 2000 environment setup. Is there anything non-standard about your setup?
There are a couple things of note:
- Doing a complete installation of SBS makes the server a domain controller, which causes the autologin for LegacyUpdateTemp to not work. Domain controllers can't have local accounts...
- I had to disable internet proxying in Internet Options since ISA Server 2000 turns that on by default (and treats the system as a proxy server). Without that, I would just get a hang anytime the LegacyUpdate installer attempted to download a file (which makes sense)
- I did this with LegacyUpdate 1.4.2, so it's possible this bug has been fixed since then? Note that I also didn't have issues with NSxfer.dll like #131 and I'm not sure why that's happening on that person's system
Thank you for your commitment to resolving this issue. I can confirm the notes you provided. I attempted a fresh install (SP4, IE6, VMware Tools) and experienced no issues. Additionally, I tried installing the latest version on the VM where the previous problem occurred. Now, I am receiving error code 800A01AD (unknown error). It's possible that something is simply not working properly with the VM.
After I run the SBS configuration on the newly set up VM and removed the proxy, I get the error 800A01AD. So the SBS setup screws it somehow up.
Good afternoon,
I'll give this a shot with a fresh install of SBS 2000 shortly, and then install SP4/IE6/VMWare Tools (I'll use VMWare Player this time instead of VirtualBox, that way I have an identical replica of your environment), then run the SBS configuration/setup, and then try Legacy Update
I can't seem to reproduce this again, even with a fresh install. However, I have noticed an oddity...
LegacyUpdate's website is identifying this as Windows 2000 Professional SP4. It's definitely Windows 2000 Server (and you wouldn't be able to get Exchange Server 2000 on Windows 2000 Pro either!) - in the screenshot I've shown LegacyUpdate's website, the Windows 2000 Server on the start menu, winver, System Properties, and the relevant registry entries
I'm not entirely sure what's happening here, but I do have access to a physical copy of Microsoft Backoffice Server 2000, so if you want me to try that instead (I'll note that my copy of SBS does have a variety of discs for updated service packs for Exchange Server and related products, though I'm not sure if that's related! It does ask for them during the SBS configuration). Using Backoffice Server 2000 should give me no additional product service packs, and honestly I wonder if something with an unpatched Exchange Server 2000, SQL Server 2000, or ISA Server 2000 is causing some strangeness to occur.
Does your copy of SBS have the Additional Service Packs disc?
Thanks heaps for helping test @renodr. My logic for detecting a server vs client must be broken. It’ll probably work for Advanced Server, Datacenter, etc. because those have system metrics flags, just not regular Server because that’s represented by a flag provided by a different API (effectively a workstation vs server boolean). To be honest I should probably try grabbing the string used by winver instead of basing it on a bunch of lookup tables for those flags.
Won’t affect updates of course, it’s just an incorrect OS string on the UI.
I do wonder if it's something with my copy of SBS 2000 (maybe it comes with certain updates applied, like the stuff on the Additional Service Packs disc that SBS's configuration wizard asks for), and that's why I'm not able to reproduce it.
I just finished installing and configuring Microsoft BackOffice Server 2000, and I was able to install and use LegacyUpdate normally (minus the AD DC issue, but that's to be expected, you can't have local accounts on a Domain Controller)
Interestingly though, this system identifies as Windows 2000 Server SP4 in LegacyUpdate! However, I don't have updates for Exchange 2000, SQL Server, etc... which is really strange. Those might need later service packs for them to start getting updates through Windows Update though