Outlook 32 bits VS Outlook 64 bits.

Add-in Express™ Support Service
That's what is more important than anything else

Outlook 32 bits VS Outlook 64 bits.
AnyCPU compile addin does not work in 64 bits 
Benoit Duchaine




Posts: 10
Joined: 2017-06-21
Hi.

I cannot figure out why my Outlook Addin on the same machine works on 32 bits but when we install on 64 bits, it does not work. The adxregistrator logs shows a perfectly loaded/registered Addin but Outlook disables it with a runtime error.

Do I need to do something specific (setup and/or compile) in order to get it to load?

Ben
Posted 20 Jul, 2017 11:05:43 Top
Andrei Smolin


Add-in Express team


Posts: 14094
Joined: 2006-05-11
Hello Ben,

Reinstall your add-in, start Outlook and, while Outlook is still opened, check if these files are created or updated:

- {My Documents}\Add-in Express\adxregistrator.log in the profile of the user who runs the installer
- {My Documents}\Add-in Express\adxloader.log in the profile of the user who starts Outlook

If the files are updated (they aren't old) and if they don't contain errors/warnings, you'll need to debug your add-in. If adxloader.log isn't created, check section Troubleshooting add-in loading, see the PDF file in the folder {Add-in Express}\Docs on your development PC.

Regards from Belarus (GMT+3),

Andrei Smolin
Add-in Express Team Leader
Posted 21 Jul, 2017 05:10:11 Top
Benoit Duchaine




Posts: 10
Joined: 2017-06-21
Hi Andrei.

Still having problems, here are my results :
- I uninstalled the Addin. The adxregitrator.log shows a successfull uninstall.
- I reinstalled the Addin. The adxregitrator.log shows a successfull install.

Add-in Express Registrator Log File: 07/21/2017 10:46:20

Installation directory: C:Program Files (x86)PDFStamperNET
Registrator version: 7.7.4087.0
Operating System: Microsoft Windows 7 Professional Service Pack 1 (build 7601), 64-bit
Process Owner: System
Command Line: "C:Program Files (x86)PDFStamperNETdxregistrator.exe" /install="PDFStamperNet.dll" /privileges=admin
Run 'As Administrator': Yes
Process Elevated: Yes
Integrity Level: System
UAC (User Account Control): Off
--------------------------------------------------------------
10:46:20 0272 Starting the add-in registration process.
10:46:20 0272 Loading mscoree.dll
10:46:20 0272 Success.
10:46:20 0272 .NET Framework installation directory: 
10:46:20 0272 The latest version of .NET Framework: 'v4.0.30319'
10:46:20 0272 Loading CLR: v4.0.30319.
10:46:20 0272 Calling CLRCreateInstance method.
10:46:20 0272 Success.
10:46:20 0272 Calling GetRuntime method.
10:46:20 0272 Success.
10:46:20 0272 Checking if the hosting API of .NET Framework v4.0 beta is installed.
10:46:20 0272 The hosting API is up to date.
10:46:20 0272 Calling GetInterface method for the CorRuntimeHost interface.
10:46:20 0272 Success.
10:46:20 0272 Starting CLR...
10:46:20 0272 Success.
10:46:20 0272 Getting the CLR version.
10:46:20 0272 The CLR v4.0.30319 has been initialized successfully.
10:46:20 0272 Creating a new domain setup.
10:46:20 0272 Success.
10:46:20 0272 Getting the add-in directory.
10:46:20 0272 Success. The directory is 'C:Program Files (x86)PDFStamperNET'
10:46:20 0272 The 'shadow copy' is disabled.
10:46:20 0272 Creating a new application domain.
10:46:20 0272 Success.
10:46:20 0272 Getting the base directory for the domain.
10:46:20 0272 Success. The directory is 'C:Program Files (x86)PDFStamperNET'.
10:46:20 0272 Searching for the Add-in Express core library.
10:46:20 0272 Success. The 'AddinExpress.MSO.2005.dll' file is found.
10:46:20 0272 Creating an instance of the 'AddinExpress.Deployment.ADXRegistrator' class.
10:46:20 0272 Assembly identity is 'AddinExpress.MSO.2005'.
10:46:20 0272 Success.
10:46:20 0272 Unwrapping the instance of the 'AddinExpress.Deployment.ADXRegistrator' class.
10:46:20 0272 Success.
10:46:20 0272 Calling the managed registration procedure (DISPID = 1610743823).
10:46:29 0272 Success.
10:46:29 0272 The add-in registration process is completed with HRESULT = 0.

- Starting oulook disables the Addin (changes the LoadBehavior from 3 to 2).
- The adxregistrator.log does not get updated. There is no adxloader.log file being created/updated.
- I read the help file for "Troubleshooting add-in loading".
- This leads me to "Add-in is not Registered", which leads me to "Locating COM Add-ins in the Registry".
- I looked at the registry and all three items are there and points to all good CLSID.

Maybe for more information about my Addin :
- The project includes a 3rd-party ActiveX (32 bit DLL) : Gnostice PDFToolKit
- I use VS2008, compiled with AnyCPU
- I create an install with standard Setup project from VS and call the registrator.
- The setup is run with administrator priviledges.
- The same project works on the machine if we install Outlook 32 bits but does not work if we install Outlook 64 bits.

Thanks.
P.S. Yes, it's my first time creating a 64 bits specific application, so I am sorry if I lack some knowledge.
Posted 21 Jul, 2017 10:36:59 Top
Benoit Duchaine




Posts: 10
Joined: 2017-06-21
I identified the problem with the 32 bits DLL in the 64 bits code.

Is there a way for me to be able to load the 32 bit into the 64 bit code?
Posted 21 Jul, 2017 12:34:55 Top
Benoit Duchaine




Posts: 10
Joined: 2017-06-21
All is fixed, I found this page to help me load a 32 bit in a 64 bit environment.
https://techtalk.gfi.com/32bit-object-64bit-environment/

Thanks for your help!
Posted 21 Jul, 2017 12:47:23 Top
Andrei Smolin


Add-in Express team


Posts: 14094
Joined: 2006-05-11
Hello Benoit,

Note that in this case, the ActiveX you run is hosted by dllhost.exe, not by the Office application. That is, you access that process from the process of the Office host application. If something doesn't work in this way, you may be unable to fix that.

Regards from Belarus (GMT+3),

Andrei Smolin
Add-in Express Team Leader
Posted 24 Jul, 2017 04:07:44 Top