Are you sure that creates the registry entries in the user space? (so without admin rights)

I use a similar method for the installer of my add-ins, but they do require admin-rights.The command I use is this:"C:\Program Files (x86)\WiX Toolset v3.8\bin\heat.exe" file MyAddin.dll -ag -template fragment -out MyAddin.wxsNot sure what those different parameters mean, but this works for me.

The advantage of setting the registry keys in the installer (rather then in code) is that these settings are also removed when un-installing. (I think, not 100% sure )

I haven't found this to be a major problem though. Most organisations who don't give admin-rights to their users want to control which software gets installed and used on the computers. I can imagine that those organisations wouldn't be too with happy users installing software themselves just because they can.

I think about making this easy approach to always install for a user to my standard method. Easy to develop and to use! You can see an example in hoTools, branch Development, AaddinSimpleNoAdminSetup.

It's possible to make an *.msi file with WIX for per user or per-machine install. It took me a while to figure it out and to get it running. During install you have to go to advanced (not click install) to make a proper per-user install without asking for admin. See the references.

It's complicated, and you have to install in Advanced Mode to get it properly working without asking for admin rights. The main things are:- Register to EA: RegistryKey Root="HKMU" Key="Software\Sparx Systems\EAAddins\hoReverse">- Register dll: <RegistryValue Root="HKCR" Key="CLSID\... (Standard for WIX tool Heat)The Installer keeps care of the correct location in the registry (user/machine).

You can see it at GITHUB in my hoReverse, Branch Development.

I would also like to hear about your experiences.

Summary:- Install per user without admin rights is quite simple with WIX- Install with GUI for per user and per machine may cause you long nights. But it works with one drawback I know about.

Thanks for the info. I seem to have found a solution by combining your approach with custom actions as suggested by Geert.I wanted to use Custom Actions to avoid having to run Wix Heat tool and copy/paste each time the content.The way I defined it lets me register and unregister the DLL respectively during the install and uninstall processes.

I will write something up once tests and installation from various users don't bring any other issue.I published both the standard and portable editions of eaUtils on http://www.eautils.com/en/download. Please feel free to install and send me your feedback (successful or else...)

Re registering the DLL have you include code in wxs file to do this, e.g. below is the complete registration for my eaForms installer, which works for both machine and current users hence use of root HKMU but this could be HKCU if definitely only for current user. This is the component that does class registration and sparx addin key

Perhaps this may give you a clue, and one day I'll update my post with other findings such as custom UI etc along my path of creating quite a few installers now!! Ping me if you are still having issues and I'll see what I can do.