Uninstallation problem

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

Uninstallation problem
 
Martin Bruce




Posts: 47
Joined: 2011-02-14
Hello,

We have created an addin to Word, Excel, PowerPoint and Outlook. We have noticed one problem during uninstall of our product.

It seems that during uninstallation each office application is started and closed. This causes problems if you install/uninstall the application through SCCM. In this case the uninstallation is done with the Adminsitrator account and on the local computer there is no mail settings for the administrator at the local machine. This causes Outlook to start setting upp a mailacount for the administrator.

Furhter more the uninstall causes problems with other applications during uninstall because of the need to start the office application durin uninstall.

I'm using temporary CommandBars but can't find any temporary setting for ribbon objects.

Is it possible to have the uninstall procedure not to start the office applications during uninstall?

The adxregistrator.log file doesn't show any problems:

---------------------------------------------------------------------------

Add-in Express Registrator Log File: 12/01/2012 10:25:33

Installation directory: C:\Program Files\Exformatics\Exformatics Office Extension\
Registrator version: 6.4.3056.0
Operating System: Microsoft Windows 7 Professional (build 7600), 32-bit
Process Owner: Administrator
Command Line: "C:\Program Files\Exformatics\Exformatics Office Extension\adxregistrator.exe" /uninstall="Exformatics Office Extension.dll" /privileges=admin
Run 'As Administrator': Yes
Process Elevated: Yes
Integrity Level: High
UAC (User Account Control): On
--------------------------------------------------------------
10:25:33 0164 Starting the add-in unregistration process.
10:25:33 0164 Loading mscoree.dll
10:25:33 0164 Success.
10:25:33 0164 .NET Framework installation directory:
10:25:33 0164 The latest version of .NET Framework: 'v4.0.30319'
10:25:33 0164 Loading CLR: v4.0.30319.
10:25:33 0164 Calling CLRCreateInstance method.
10:25:33 0164 Success.
10:25:33 0164 Calling GetRuntime method.
10:25:33 0164 Success.
10:25:33 0164 Calling GetInterface method.
10:25:33 0164 Calling GetInterface method for the CorRuntimeHost interface.
10:25:33 0164 Success.
10:25:33 0164 Starting CLR...
10:25:33 0164 Success.
10:25:33 0164 The CLR v4.0.30319 has been initialized successfully.
10:25:33 0164 Creating a new domain setup.
10:25:33 0164 Success.
10:25:33 0164 Getting the add-in directory.
10:25:33 0164 Success. The directory is 'C:\Program Files\Exformatics\Exformatics Office Extension\'
10:25:33 0164 The 'shadow copy' is disabled.
10:25:33 0164 Creating a new application domain.
10:25:33 0164 Success.
10:25:33 0164 Getting the base directory for the domain.
10:25:33 0164 Success. The directory is 'C:\Program Files\Exformatics\Exformatics Office Extension\'.
10:25:33 0164 Searching for the Add-in Express core library.
10:25:33 0164 Success. The 'AddinExpress.MSO.2005.dll' file is found.
10:25:33 0164 Creating an instance of the 'AddinExpress.Deployment.ADXRegistrator' class.
10:25:33 0164 Assembly identity is 'AddinExpress.MSO.2005'.
10:25:33 0164 Success.
10:25:33 0164 Unwrapping the instance of the 'AddinExpress.Deployment.ADXRegistrator' class.
10:25:33 0164 Success.
10:25:33 0164 Calling the managed unregistration procedure.
10:25:33 0552 Connecting to the application domain of the Add-in Express loader.
10:25:33 0552 Success.
10:25:33 0552 Loading the 'exformatics office extension.dll' assembly.
10:25:33 0552 Success.
10:25:33 0552 Unregistering the 'exformatics office extension.dll' assembly (administrator).
10:25:54 0552 The ' exformatics office extension.dll' assembly has been unregistered successfully.
10:25:54 0164 Success.
10:25:54 0164 The add-in unregistration process is completed with HRESULT = 0.

---------------------------------------------------------------------------

Any help here would be apreciated.

/Martin
Posted 11 Dec, 2012 08:15:29 Top
Andrei Smolin


Add-in Express team


Posts: 16748
Joined: 2006-05-11
Hello Martin,

Can you please send me the InitializeComponent method from your add-in module? If yes, please send it to the support email address, see {Add-in Express installation folder}\readme.txt; make sure that your email contains a link to this topic. And please tell me what Office version(s) is installed on that PC.

Regards from Belarus (GMT+3),

Andrei Smolin
Add-in Express Team Leader
Posted 11 Dec, 2012 09:09:32 Top
Martin Bruce




Posts: 47
Joined: 2011-02-14
Hello,

Email sent with the information you wanted.

/Martin
Posted 12 Dec, 2012 01:31:57 Top
Andrei Smolin


Add-in Express team


Posts: 16748
Joined: 2006-05-11
Hello Martin,

Thank you for the code. I expected to find a component provoking this behavior but I haven't found any.

Add-in Express runs the host application using this logic:

- a host application is run if there are methods handling the BeforeUninstallControls and AfterUninstallControls events of the add-in module;
- if the event handlers above don't exist, Outlook is run if there's an ADXOlBarShortcutManager component on the add-in module;
- if the event handlers above don't exist and the host application is NOT Outlook, the host application is run if there is a non-temporary ADXCommandbar component supporting this host application or if there's an ADXBuiltInControl having DisableStandardAction=true.

May it be that your add-in adds event handlers for the mentioned events or creates a component of the mentioned types outside of the InitializeComponent method?

Regards from Belarus (GMT+3),

Andrei Smolin
Add-in Express Team Leader
Posted 12 Dec, 2012 05:25:40 Top
Martin Bruce




Posts: 47
Joined: 2011-02-14
Is a ADXCommandbarButton considered to be one of these components then yes that could be the case regarding why Outlook starts during uninstall.

I had empty handlers of BeforeUninstallControls and AfterUninstallControls. Would these cause the behaviour?

No ADXOlBarShortcutManager component.

Setting the ADXCommandbarButton's to temporary and removing the empty BeforeUninstallControls and AfterUninstallControls seems to do the trick.

Thankyou for your help.

/Martin
Posted 12 Dec, 2012 08:52:18 Top
Andrei Smolin


Add-in Express team


Posts: 16748
Joined: 2006-05-11
Martin,

Martin Bruce writes:
I had empty handlers of BeforeUninstallControls and AfterUninstallControls. Would these cause the behaviour?


Yes.

Martin Bruce writes:
Setting the ADXCommandbarButton's to temporary and removing the empty BeforeUninstallControls and AfterUninstallControls seems to do the trick.


Thank you for letting me know.

Regards from Belarus (GMT+3),

Andrei Smolin
Add-in Express Team Leader
Posted 12 Dec, 2012 09:52:11 Top