Install Add-In for ALL users using adxregistrator.exe

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

Install Add-In for ALL users using adxregistrator.exe
 
Patrik Stutz


Guest


Hi

We are trying desperately to register our MS Office Add-In to all users on a Computer using the adxregistrator.exe

We have tried to:
- set the InstallForAllUsers Property of the Add-In to "true"
- use the /privileges=admin argument for adxregistrator.exe
- starting cmd as administrator and running the command

It all did not help.
Can someone tell us how we can do it?

Thanks!
Posted 24 Aug, 2011 11:02:12 Top
Eugene Astafiev


Guest


Hi Patrik,

May I see the adxregistrator.log file? Typically you can find it in the <My Documents>\Add-in Express folder.

Note, you can find step-by-steps instructions in the http://www.add-in-express.com/creating-addins-blog/2011/02/22/deploying-permachine-office-extensions-msi-installer/ article on our technical blog.
Posted 24 Aug, 2011 13:08:15 Top
Patrik Stutz


Guest


Ok, I can?t say there is a log file or not, because this was different in all of my tests.
In some tests, a log file was created, in other tests there was no log file.

I?ve read the "deploying per-machine" article already, but since we want to include the add-ins in the installer of the main program, we don?t want an additional MSI for every Add-In.

I?ll tell you now what I?ve done in my last try:

1) set the InstallForAllUsers property to true
2) build the add in and place the DLL together with all dependecies in a folder
3) create a batch file with the following content:
adxregistrator.exe /install="addin.dll" /privileges=admin
4) right click the batch file and select "Run as Administrator"

After this try, the add-in was not registered. There was also NO log file.
What do I have to change?
Posted 25 Aug, 2011 03:39:16 Top
Patrik Stutz


Guest


UPDATE:
---------------

I tried it once again. This time I activated the REAL Administrator account using this command:
net user Administrator /active

Then i logged me in the Administrator account.
Here, i did absolutely the same as above, with a completely other result.

There are 3 Users on the test system:
- Administrator
- Test (is Administrator)
- Test2 (is a normal user)

For Administrator and Test, the Add-In was installed. For Test2 not.

There was also a logfile created with the following contents:

Add-in Express Registrator Log File: 08/25/2011 01:25:28

Installation directory: C:\Program Files\FILEminimizer Suite\
Registrator version: 6.4.3056.0
Operating System: Microsoft Windows 7 Professional (build 7600), 32-bit
Process Owner: Administrator
Command Line: adxregistrator.exe /install="fmword.dll" /privileges=admin
Run 'As Administrator': Yes
Process Elevated: Yes
Integrity Level: High
UAC (User Account Control): On
--------------------------------------------------------------
01:25:28 0160 Starting the add-in registration process.
01:25:28 0160 Loading mscoree.dll
01:25:28 0160 Success.
01:25:28 0160 .NET Framework installation directory:
01:25:28 0160 The latest version of .NET Framework: 'v2.0.50727'
01:25:28 0160 Loading CLR: v2.0.50727.
01:25:28 0160 The CLR v2.0.50727 has been initialized successfully.
01:25:28 0160 Creating a new domain setup.
01:25:28 0160 Success.
01:25:28 0160 Getting the add-in directory.
01:25:28 0160 Success. The directory is 'C:\Program Files\FILEminimizer Suite\'
01:25:28 0160 The 'shadow copy' is disabled.
01:25:28 0160 Creating a new application domain.
01:25:28 0160 Success.
01:25:28 0160 Getting the base directory for the domain.
01:25:28 0160 Success. The directory is 'C:\Program Files\FILEminimizer Suite\'.
01:25:28 0160 Searching for the Add-in Express core library.
01:25:28 0160 Success. The 'AddinExpress.MSO.2005.dll' file is found.
01:25:28 0160 Creating an instance of the 'AddinExpress.Deployment.ADXRegistrator' class.
01:25:28 0160 Assembly identity is 'AddinExpress.MSO.2005'.
01:25:39 0160 Success.
01:25:39 0160 Unwrapping the instance of the 'AddinExpress.Deployment.ADXRegistrator' class.
01:25:39 0160 Success.
01:25:39 0160 Calling the managed registration procedure.
01:25:39 1012 Connecting to the application domain of the Add-in Express loader.
01:25:39 1012 Success.
01:25:39 1012 Loading the 'fmword.dll' assembly.
01:25:39 1012 Success.
01:25:39 1012 Registering the 'fmword.dll' assembly (administrator).
01:25:39 1012 The ' fmword.dll' assembly has been registered successfully.
01:25:39 0160 Success.
01:25:39 0160 The add-in registration process is completed with HRESULT = 0.
Posted 25 Aug, 2011 03:49:51 Top
Eugene Astafiev


Guest


Hi Patrik,

Thank you for providing me with the log file. It looks good.

1. Note that a regular user (not admin) doesn't have sufficient privileges to modify the <C:>\Program Files folder.
2. The admin permissions are required if you want to install the add-in for all users (some records will be added to the HKLM hive).

Anyway, did you try to create a MSI installer automatically as described in the mentioned above article?
Posted 25 Aug, 2011 04:25:43 Top
Patrik Stutz


Guest


Ok, I?ve created an installer like in your link. Using this, I was able to install the Add-In for all users. That?s good!

But what?s the difference from the installer to my own install process?
How can I fix it, so that it also works in my installer?

Thanks!
Posted 25 Aug, 2011 05:13:31 Top
Eugene Astafiev


Guest


Hi Patrik,

Please take a look at the http://www.add-in-express.com/docs/net-tips.php#addin-not-work section in the online documentation. Does it help?
Posted 25 Aug, 2011 05:44:44 Top
Patrik Stutz


Guest


We have solved the problem now!
The problem was, that we also copied a file called "adxloader.dll.manifest".
After checking out its contents, it was very clear ^^

Since we install the Add-In manually, the manifest file is not needed.
We don?t copy it now and it works fine without it.

Thanks anyway!
Posted 25 Aug, 2011 08:17:59 Top
Eugene Astafiev


Guest


You are welcome, Patrik!
Posted 25 Aug, 2011 08:22:24 Top
Daniel Lemke


Guest


Hi there,

sorry for hijacking the thread but my problem is very similar to that of the OP.

I'd like to find a way how to manually install/register the add-in for every user. From what I've read in the FAQ, the adxregistrator should create registry keys in the HKLM path of the machine in order to get the add-in working for all the users.

This is the way I tried to accomplish this:

  • Set InstallForAllUsers property in add-in project to true.
  • Copied all the necessary files to a folder that is also accessible for non-admin users.
  • Created adxloader manifest with the following content:
    <?xml version="1.0" encoding="utf-8"?> 
    <configuration> 
        <assemblyIdentity name="EstOlAddin, PublicKeyToken=13acf979d16e8a17" /> 
        <loaderSettings generateLogFile="true" shadowCopyEnabled="true"  
            privileges="admin"> configFileName="app.config" 
        <logFileLocation>D:dxLoaderLog.txt</logFileLocation> 
        </loaderSettings> 
    </configuration>

  • Executed (admin console) adxregistrator.exe /install=EstOlAddin.dll /privileges=admin
  • Executed (admin console) regsvr32 adxloader.dll


The add-in will now be loaded for the current user, but no luck when switching to another account. Checking the HKLM tree shows that there is no key created for the add-in, while there are keys in the HKCU tree of the (admin) user who ?Â?Ð?ìinstalled?Â?Ð?í the add-in.

http://pastebin.com/EuWfEnWL

Any ideas what could solve the issue?

Best regards,

Daniel Lemke
Posted 30 Aug, 2011 10:13:11 Top