The System.Configuration.Installer code is rotten. It dumps state
information in files in the application folder. That doesn't work too well
for installations that are launched from an advertised shortcut in order to
install state for a non-privileged user. I had exactly this problem with RSS
Bandit 1.3. Ironically RSS Bandit was indeed using a managed custom action
to generate registry keys (registering the feed: protocol, as I recall)
which are of course a native feature of Windows Installer.

The CLR problem is this: you cannot load multiple versions of the CLR into
the same process. It's a one-time thing. If you load via COM, you get the
latest version of the CLR that's installed on the operating system, which
can potentially break your COM add-in if they're written for an older
version. It looks like InstallUtilLib.dll loads the CLR using the hosting
interfaces, so it gets to specify the exact runtime version required.

I'm not sure whether the CLR version is really an issue as it's my
understanding that Windows Installer will create a new msiexec.exe process
for each custom action (this is to stop third-party code crashing the main
installer service). However, this is not documented (as far as I can see) so
could change at any time; there could be a single server hosting all your
custom actions in a future version.

However, you will always have the issue that if any part of the runtime is
broken, your custom actions won't work. Particularly, if the CLR is broken,
or any class that you use in your custom action is broken, uninstall may not
work. This goes against the principle of the installation being
self-contained, as far as possible.

If you care about your uninstall not breaking if the CLR or the script
engines are broken, you should avoid managed or script custom actions.

-- 
Mike Dimmick

-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of John Vottero
Sent: 24 March 2007 15:43
To: Bob Arnson; [EMAIL PROTECTED]
Cc: WiX-users
Subject: Re: [WiX-users] C# .dll

> 
> DEÁK JAHN, Gábor wrote:
> > Anyway, it's not a WiX limitation but a Windows Installer limitation,
> so until WI can call a managed DLL, there is nothing WiX can do about
> it. Much the same way as with Unicode. We're here starting to run on
> the fourth Windows platform with full Unicode support (NT, 2000, XP and
> Vista) and Windows Installer still doesn't speak Unicode, meaning that
> you cannot customize your setup for languages that don't happen to be
> on the list of supported codepages. Another issue WiX can do nothing
> about.
> >
> 
> And even if WiX could, wouldn't it make more sense to spend that time
> beefing up and adding new WiX CAs rather than enabling even more CAs
> without rollback or patch support?
> 

The System.Configuration.Installer base class has virtual methods for
Install, Uninstall, Commit and Rollback.  Doesn't that mean that that it can
support Rollbacks?

I don't know enough about Windows Installer to understand all the
implications of managed CAs.  What I do know is that there are many groups
at Microsoft that are creating managed CAs to support their products and
they aren't creating unmanaged CAs and they aren't documenting what their
managed CAs actually do so ISV's are left stuck in the middle.  We have to
reverse engineer the Microsoft managed CAs so we can develop "proper"
installers.

The situation is clearly broken and it's up to Microsoft to fix it.

John Vottero


-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to