Archived Forum Post

Index of archived forum posts

Question:

Using ActiveX's in Visual FoxPro on 64-bit Windows

Jul 02 '13 at 09:08

I am test class Chilkat.CertStore on W7 64bit Ultimate from develop environment Visual FoxPro. I am copied DLL the files to C:WindowsSysWOW64 and register it:

CkString_x64.dll
ChilkatCert_x64.dll
ChilkatCrypt2_x64.dll
ChilkatUtil_x64.dll

But if I can create instance for example Chilkat.CertStore class (loCertStore = CREATEOBJECT("Chilkat.CertStore"))

then I receive error message: OLE error code 0x80040154: Class not registerd

Which next DLL the files I need on 64 bit OS for success instancing this class?


Answer

The Visual Foxpro IDE runs as a 32-bit program, and as far as I know, produces 32-bit applications. Therefore, regardless of whether you're app runs on a 32-bit or 64-bit Windows computer, it is the 32-bit ActiveX that will always be required. The solution is to register the 32-bit ActiveX's on the computer (making sure to register the 32-bit ActiveX's in the 32-bit registry). See this for more information on how to do it: http://www.cknotes.com/?p=361

The ActiveX DLL's you'll need are dependent on which objects your app uses. For a mapping of objects to DLL's, see this: http://www.cknotes.com/?p=172