Welcome to WebmasterWorld Guest from 54.226.133.245

Forum Moderators: bill

Message Too Old, No Replies

Can't seem to register DLLs on Windows Server 2003 x64

Just upgraded servers from 32 bit to 64 bit

     
5:33 pm on Sep 8, 2005 (gmt 0)

Preferred Member

10+ Year Member

joined:May 12, 2004
posts:390
votes: 0


Hi, I recently upgraded my website to a Windows 2003 x64 OS on a 64-bit box, from a Windows 2003 on a 32-bit box.

Everything works great, except all of my attempts to register dlls.

I get this same error for virtually everything:

Microsoft VBScript runtime
error '800a01ad'
ActiveX component can't create object: '[OBJECT NAME HERE]'

My code is all exactly the same as on the old box...

Anyone have any similar experience or resolution?

2:39 pm on Sept 9, 2005 (gmt 0)

Full Member

10+ Year Member

joined:Feb 18, 2005
posts:262
votes: 0


Microsoft support [support.microsoft.com]

Does this help?

My first thoughts are security on your server.

3:59 pm on Sept 9, 2005 (gmt 0)

Preferred Member

10+ Year Member

joined:May 12, 2004
posts:390
votes: 0


I checked the security on the dll's and they are both fine. I even added the IUSR, IWAM and Everyone accounts to those dlls and still nothing.

This is really frustrating :(

Is it possibly how I registered the dlls? I used regsvr32 - is there a different process on a x64 machine?

8:18 pm on Sept 11, 2005 (gmt 0)

Full Member

10+ Year Member

joined:Nov 18, 2003
posts:202
votes: 0


Hmm. You know you can't load a 32 bit DLL in a 64 bit process, don't you? That's why there's a both a 32 bit and 64 bit version of Internet Explorer.
1:35 pm on Sept 12, 2005 (gmt 0)

Preferred Member

10+ Year Member

joined:May 12, 2004
posts:390
votes: 0


Hmm. You know you can't load a 32 bit DLL in a 64 bit process, don't you? That's why there's a both a 32 bit and 64 bit version of Internet Explorer.

Does this mean if I install regular Windows 2003 Enterprise instead of x64, but still have the 64 bit processor, it will work OK?

2:19 pm on Sept 12, 2005 (gmt 0)

Full Member

10+ Year Member

joined:Nov 18, 2003
posts:202
votes: 0


Win 2003 32 bit will work quite happily on a 64 bit box, assuming it's x86 compatible hardware (as opposed to Itanium).

However, you might as well find out what the problem is with Win64. You don't say which process is trying to load the dll, nor which dll you are trying to load, nor which version of regsvr32 you called (there are two versions on Win64).

If your process is 64 bit, make sure:
- The DLL you're referencing is 64 bit
- You called the 64 bit version of regsvr32

If your process is 32 bit, make sure:
- The DLL you're referencing is 32 bit
- You called the 32 bit version of regsvr32

Sorry I can't be more specific; I have neither direct experience of Win64, nor of ActiveX, so it's the blind leading the blind :-)