<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: WIX and Custom Actions</title>
	<atom:link href="http://lostechies.com/gabrielschenker/2010/05/18/wix-and-custom-actions/feed/" rel="self" type="application/rss+xml" />
	<link>http://lostechies.com/gabrielschenker/2010/05/18/wix-and-custom-actions/</link>
	<description>Blog about architectural patterns, best practices, coding principles and techniques</description>
	<lastBuildDate>Wed, 22 May 2013 12:15:00 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.4.2</generator>
	<item>
		<title>By: Miles</title>
		<link>http://lostechies.com/gabrielschenker/2010/05/18/wix-and-custom-actions/#comment-375</link>
		<dc:creator>Miles</dc:creator>
		<pubDate>Sun, 10 Jul 2011 10:33:00 +0000</pubDate>
		<guid isPermaLink="false">/blogs/gabrielschenker/archive/2010/05/19/wix-and-custom-actions.aspx#comment-375</guid>
		<description>
Many children end up thinking that if people are just animals why should I commit my life to helping people? Why shouldn&#039;t I just take the path of least resistance and do drugs all day to enjoy the fleeting pleasures of this life?
</description>
		<content:encoded><![CDATA[<p>Many children end up thinking that if people are just animals why should I commit my life to helping people? Why shouldn&#8217;t I just take the path of least resistance and do drugs all day to enjoy the fleeting pleasures of this life?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Christopher Painter</title>
		<link>http://lostechies.com/gabrielschenker/2010/05/18/wix-and-custom-actions/#comment-216</link>
		<dc:creator>Christopher Painter</dc:creator>
		<pubDate>Mon, 24 May 2010 03:07:02 +0000</pubDate>
		<guid isPermaLink="false">/blogs/gabrielschenker/archive/2010/05/19/wix-and-custom-actions.aspx#comment-216</guid>
		<description>One more thing; in DTF you can say File &#124; New &#124; C# Custom Action Project and it will create a project with a custom msbuild targets that handles the makesfxca stuff for you.  It&#039;s really nice in taking all your project references and content items and package it all up for you to use at install time.</description>
		<content:encoded><![CDATA[<p>One more thing; in DTF you can say File | New | C# Custom Action Project and it will create a project with a custom msbuild targets that handles the makesfxca stuff for you.  It&#8217;s really nice in taking all your project references and content items and package it all up for you to use at install time.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Christopher Painter</title>
		<link>http://lostechies.com/gabrielschenker/2010/05/18/wix-and-custom-actions/#comment-215</link>
		<dc:creator>Christopher Painter</dc:creator>
		<pubDate>Mon, 24 May 2010 03:05:04 +0000</pubDate>
		<guid isPermaLink="false">/blogs/gabrielschenker/archive/2010/05/19/wix-and-custom-actions.aspx#comment-215</guid>
		<description>You should never use InstallUtil to write managed custom actions.  DTF custom actions use a native C++ host, a call out to rundll and an RPC between the two to avoid tatooing the msiexec process with a specific CLR.

I have tons of articles on my blog regarding DTF and it&#039;s a vey good technology.

BTW, Gabriel-  I live in Cedar Park and would love to get together with you sometime to talk about Installs and WiX.</description>
		<content:encoded><![CDATA[<p>You should never use InstallUtil to write managed custom actions.  DTF custom actions use a native C++ host, a call out to rundll and an RPC between the two to avoid tatooing the msiexec process with a specific CLR.</p>
<p>I have tons of articles on my blog regarding DTF and it&#8217;s a vey good technology.</p>
<p>BTW, Gabriel-  I live in Cedar Park and would love to get together with you sometime to talk about Installs and WiX.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Gabriel N. Schenker</title>
		<link>http://lostechies.com/gabrielschenker/2010/05/18/wix-and-custom-actions/#comment-214</link>
		<dc:creator>Gabriel N. Schenker</dc:creator>
		<pubDate>Wed, 19 May 2010 19:34:59 +0000</pubDate>
		<guid isPermaLink="false">/blogs/gabrielschenker/archive/2010/05/19/wix-and-custom-actions.aspx#comment-214</guid>
		<description>@Chris: I do not agree with your statement! Your statement might have been a valid one a couple of years ago when Aaron Stebner publish a corresponding warning of not using managed custom actions in an installer but since WIX 3.0 the support for managed custom actions has been massively improved.
What I do agree is that you have to be careful and discuss the potential side effects when using managed CAs. Since our applications DOES use/need the .NET framework to run and we provide a bootstrapper to install it if not already available on the target system it makes sense for us to use managed custom actions. Moreover different versions of the CLR can coexist in the same process without any problem.</description>
		<content:encoded><![CDATA[<p>@Chris: I do not agree with your statement! Your statement might have been a valid one a couple of years ago when Aaron Stebner publish a corresponding warning of not using managed custom actions in an installer but since WIX 3.0 the support for managed custom actions has been massively improved.<br />
What I do agree is that you have to be careful and discuss the potential side effects when using managed CAs. Since our applications DOES use/need the .NET framework to run and we provide a bootstrapper to install it if not already available on the target system it makes sense for us to use managed custom actions. Moreover different versions of the CLR can coexist in the same process without any problem.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Chris Tavares</title>
		<link>http://lostechies.com/gabrielschenker/2010/05/18/wix-and-custom-actions/#comment-213</link>
		<dc:creator>Chris Tavares</dc:creator>
		<pubDate>Wed, 19 May 2010 16:58:55 +0000</pubDate>
		<guid isPermaLink="false">/blogs/gabrielschenker/archive/2010/05/19/wix-and-custom-actions.aspx#comment-213</guid>
		<description>You should NEVER write a managed custom action. NEVER. For the same reason you shouldn&#039;t write a managed shell extension.

MSI runs as a Windows service. If you write a managed custom action, you drag the CLR into that service - more importantly, you drag your choice of CLR into the process. And worse, if somebody else wrote a managed action and targeted a different version, you may end up with the wrong CLR in process and everything goes to pot.

Yes, it really sucks, but it&#039;s the nature of the beast.
</description>
		<content:encoded><![CDATA[<p>You should NEVER write a managed custom action. NEVER. For the same reason you shouldn&#8217;t write a managed shell extension.</p>
<p>MSI runs as a Windows service. If you write a managed custom action, you drag the CLR into that service &#8211; more importantly, you drag your choice of CLR into the process. And worse, if somebody else wrote a managed action and targeted a different version, you may end up with the wrong CLR in process and everything goes to pot.</p>
<p>Yes, it really sucks, but it&#8217;s the nature of the beast.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Gabriel N. Schenker</title>
		<link>http://lostechies.com/gabrielschenker/2010/05/18/wix-and-custom-actions/#comment-212</link>
		<dc:creator>Gabriel N. Schenker</dc:creator>
		<pubDate>Wed, 19 May 2010 04:52:31 +0000</pubDate>
		<guid isPermaLink="false">/blogs/gabrielschenker/archive/2010/05/19/wix-and-custom-actions.aspx#comment-212</guid>
		<description>@Matt: this seems to be an interesting project. Thanks for the link.</description>
		<content:encoded><![CDATA[<p>@Matt: this seems to be an interesting project. Thanks for the link.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Gabriel N. Schenker</title>
		<link>http://lostechies.com/gabrielschenker/2010/05/18/wix-and-custom-actions/#comment-211</link>
		<dc:creator>Gabriel N. Schenker</dc:creator>
		<pubDate>Wed, 19 May 2010 04:50:16 +0000</pubDate>
		<guid isPermaLink="false">/blogs/gabrielschenker/archive/2010/05/19/wix-and-custom-actions.aspx#comment-211</guid>
		<description>@Santosh: IntPtr does not work if you run a 32bit application on a 64bit OS!
The tutorial you reference was indeed one of my primary sources when creating my installer</description>
		<content:encoded><![CDATA[<p>@Santosh: IntPtr does not work if you run a 32bit application on a 64bit OS!<br />
The tutorial you reference was indeed one of my primary sources when creating my installer</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Matt</title>
		<link>http://lostechies.com/gabrielschenker/2010/05/18/wix-and-custom-actions/#comment-210</link>
		<dc:creator>Matt</dc:creator>
		<pubDate>Wed, 19 May 2010 04:20:54 +0000</pubDate>
		<guid isPermaLink="false">/blogs/gabrielschenker/archive/2010/05/19/wix-and-custom-actions.aspx#comment-210</guid>
		<description>I wound up using WixSharp instead of WIX directly:

http://www.csscript.net/WixSharp.html

Made life *much* easier - can author both the installer and any custom actions in C# and it takes care of everything else, for the most part...</description>
		<content:encoded><![CDATA[<p>I wound up using WixSharp instead of WIX directly:</p>
<p><a href="http://www.csscript.net/WixSharp.html" rel="nofollow">http://www.csscript.net/WixSharp.html</a></p>
<p>Made life *much* easier &#8211; can author both the installer and any custom actions in C# and it takes care of everything else, for the most part&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Santosh Kulkarni</title>
		<link>http://lostechies.com/gabrielschenker/2010/05/18/wix-and-custom-actions/#comment-209</link>
		<dc:creator>Santosh Kulkarni</dc:creator>
		<pubDate>Wed, 19 May 2010 03:09:24 +0000</pubDate>
		<guid isPermaLink="false">/blogs/gabrielschenker/archive/2010/05/19/wix-and-custom-actions.aspx#comment-209</guid>
		<description>You can also use IntPtr.Size to determine the OS bitness.
IntPtr.Size == 8 (64 bit OS)
IntPtr.Size == 4 (32 bit OS)</description>
		<content:encoded><![CDATA[<p>You can also use IntPtr.Size to determine the OS bitness.<br />
IntPtr.Size == 8 (64 bit OS)<br />
IntPtr.Size == 4 (32 bit OS)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Santosh Kulkarni</title>
		<link>http://lostechies.com/gabrielschenker/2010/05/18/wix-and-custom-actions/#comment-208</link>
		<dc:creator>Santosh Kulkarni</dc:creator>
		<pubDate>Wed, 19 May 2010 03:07:56 +0000</pubDate>
		<guid isPermaLink="false">/blogs/gabrielschenker/archive/2010/05/19/wix-and-custom-actions.aspx#comment-208</guid>
		<description>Interesting that you wrote this blog post now.. I have been finding out my way around the same issues this past couple of days and just today I tied all the loose ends on my project .. 

the WiX tutorial is a pretty handy resource:
http://www.tramontana.co.hu/wix/

Here is a specific part on managed custom actions:
http://www.tramontana.co.hu/wix/lesson3.php
</description>
		<content:encoded><![CDATA[<p>Interesting that you wrote this blog post now.. I have been finding out my way around the same issues this past couple of days and just today I tied all the loose ends on my project .. </p>
<p>the WiX tutorial is a pretty handy resource:<br />
<a href="http://www.tramontana.co.hu/wix/" rel="nofollow">http://www.tramontana.co.hu/wix/</a></p>
<p>Here is a specific part on managed custom actions:<br />
<a href="http://www.tramontana.co.hu/wix/lesson3.php" rel="nofollow">http://www.tramontana.co.hu/wix/lesson3.php</a></p>
]]></content:encoded>
	</item>
</channel>
</rss>
