Archived Forum Post

Index of archived forum posts

Question:

Application not working when distributed

Feb 25 '17 at 02:36

Hi,

We have incorporated Chilkat Zip into our VBA/MS Access application. It works fine on the development PC; the deployment package includes ChilkatZip.dll, and the dll appears to register correctly on the target system (in SysWow64).

Then, when attempting to create the zip object, the application raises the error "ActiveX component can't create object."

I've tried installing on two different target machines (other than the development machine) with the same results in both cases.

Any ideas what this could be?

Thanks, Alex


Answer

Here are a few likely solutions:

  1. If you registered the ActiveX DLL w/out admin privileges, then the DLL was registered to the logged-in Windows account. If a different Windows account is used for the application, then the ActiveX registration will not be seen. Make sure to register using admin privileges so that the registration is valid for all Windows user accounts.
  2. Make sure you're registering the 32-bit ActiveX. MS Access should be running as a 32-bit process regardless of whether the computer is 64-bit or 32-bit.
  3. Make sure the VC9 runtime redist is installed. See the note entitled "MSVC++ 9.0 Runtime Libs" on this web page: https://www.chilkatsoft.com/downloads_ActiveX.asp

Answer

Also.. I just noticed you said "ChilkatZip.dll". That's an extremely old DLL that existed when the Chilkat classes/objects were scattered across different DLLs. For many years now, the Chilkat ActiveX is a single DLL that contains all the classes.


Answer

Hi,

Thank you - that was the problem. I was distributing the wrong DLL.

I had no idea. My code was using the object Chilkat_9_5_0.Zip using CreateObject, but my project was referencing ChilkatZip.dll. On my development system, that worked anyway, because CreateObject found what it needed without a reference, since correct DLL was registered. But the correct DLL was not shipping with the deployment package.

That also explains why I was having trouble with early binding :)

Anyway now it deploys fine and works great. Thanks!