<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Installation Developer &#187; The Difference Between Features and Components</title>
	<atom:link href="http://www.installationdeveloper.com/332/the-difference-between-features-and-components/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.installationdeveloper.com</link>
	<description>InstallShield Training - InstallShield Tutorials</description>
	<lastBuildDate>Sat, 04 Sep 2010 14:49:42 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>The Difference Between Features and Components</title>
		<link>http://www.installationdeveloper.com/332/the-difference-between-features-and-components/</link>
		<comments>http://www.installationdeveloper.com/332/the-difference-between-features-and-components/#comments</comments>
		<pubDate>Fri, 14 Aug 2009 03:44:03 +0000</pubDate>
		<dc:creator>Rod_Maupin</dc:creator>
				<category><![CDATA[InstallShield Training]]></category>
		<category><![CDATA[installshield class]]></category>
		<category><![CDATA[installshield classes]]></category>
		<category><![CDATA[installshield course]]></category>
		<category><![CDATA[installshield courses]]></category>
		<category><![CDATA[installshield programmer]]></category>
		<category><![CDATA[Installshield Tutorial]]></category>
		<category><![CDATA[installshield tutorials]]></category>

		<guid isPermaLink="false">http://www.installationdeveloper.com/?p=332</guid>
		<description><![CDATA[If you are new to InstallShield, you need to read this post.&#160; Veterans will probably be bored. Let&#39;s say you an installation that has one&#160;feature that is required, and several components.&#160; You want the user to be able to select or deselect components during the installation, because some components are required and some are optional.&#160; [...]]]></description>
			<content:encoded><![CDATA[<p>
If you are new to <strong>InstallShield</strong>, you need to read this post.&nbsp; Veterans will probably be bored.
</p>
<p>
Let&#39;s say you an installation that has one&nbsp;<strong>feature</strong> that is required, and several <strong>components</strong>.&nbsp; You want the user to be able to select or deselect components during the installation, because some components are required and some are optional.&nbsp; During the development of your installation, you&nbsp;have found out that it isn&#39;t working.&nbsp; Here is why.
</p>
<p>
<strong>Features</strong> are the smallest installable part of a product from the end-user&#39;s perspective.&nbsp; <strong>Components</strong> are the smallest installable part of a product from the installation developer&#39;s perspective.&nbsp;&nbsp;As such, the end user has no access to the components in your installation, because he doesn&#39;t know about them.&nbsp; He only has access to the features.&nbsp; But since you only have one feature, which is a required feature that is always installed, there is nothing for the him&nbsp;to select or deselect.&nbsp; So, how do you solve your problem?
</p>
<p>
You must isolate the required components&nbsp;in the&nbsp;installation, and put them under the required feature.&nbsp; You are then left with the optional components.&nbsp; You want the user to be able to select or deselect them, but he can&#39;t.&nbsp;&nbsp;He can&#39;t access&nbsp;any components, because he does not know about them.&nbsp; He can only access features, and more importantly he can only select or deselect features.
</p>
<p>
For each optional component, you must create a corresponding feature for it, then assign the component to that feature.&nbsp; You then make each of these features optional.&nbsp;&nbsp;During the installation, the user will be able to select or deselect each optional feature, which will in turn and unbeknownst to him, select or deselect the component(s) that belongs to the feature.
</p>
<p>
That is the proper way to handle optional functionality in an installation.</p>

<div class="sociable">
<div class="sociable_tagline">
<strong>Share and Enjoy:</strong>
</div>
<ul>
	<li class="sociablefirst"><a rel="nofollow"  target="_blank" href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fwww.installationdeveloper.com%2F332%2Fthe-difference-between-features-and-components%2F&amp;title=The%20Difference%20Between%20Features%20and%20Components&amp;bodytext=%0D%0AIf%20you%20are%20new%20to%20InstallShield%2C%20you%20need%20to%20read%20this%20post.%26nbsp%3B%20Veterans%20will%20probably%20be%20bored.%20%0D%0A%0D%0A%0D%0ALet%26%2339%3Bs%20say%20you%20an%20installation%20that%20has%20one%26nbsp%3Bfeature%20that%20is%20required%2C%20and%20several%20components.%26nbsp%3B%20You%20want%20the%20user%20to%20be%20able%20to%20se" title="Digg"><img src="http://www.installationdeveloper.com/wp-content/plugins/sociable/images/digg.png" title="Digg" alt="Digg" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://delicious.com/post?url=http%3A%2F%2Fwww.installationdeveloper.com%2F332%2Fthe-difference-between-features-and-components%2F&amp;title=The%20Difference%20Between%20Features%20and%20Components&amp;notes=%0D%0AIf%20you%20are%20new%20to%20InstallShield%2C%20you%20need%20to%20read%20this%20post.%26nbsp%3B%20Veterans%20will%20probably%20be%20bored.%20%0D%0A%0D%0A%0D%0ALet%26%2339%3Bs%20say%20you%20an%20installation%20that%20has%20one%26nbsp%3Bfeature%20that%20is%20required%2C%20and%20several%20components.%26nbsp%3B%20You%20want%20the%20user%20to%20be%20able%20to%20se" title="del.icio.us"><img src="http://www.installationdeveloper.com/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://www.facebook.com/share.php?u=http%3A%2F%2Fwww.installationdeveloper.com%2F332%2Fthe-difference-between-features-and-components%2F&amp;t=The%20Difference%20Between%20Features%20and%20Components" title="Facebook"><img src="http://www.installationdeveloper.com/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://www.newsvine.com/_tools/seed&amp;save?u=http%3A%2F%2Fwww.installationdeveloper.com%2F332%2Fthe-difference-between-features-and-components%2F&amp;h=The%20Difference%20Between%20Features%20and%20Components" title="NewsVine"><img src="http://www.installationdeveloper.com/wp-content/plugins/sociable/images/newsvine.png" title="NewsVine" alt="NewsVine" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://reddit.com/submit?url=http%3A%2F%2Fwww.installationdeveloper.com%2F332%2Fthe-difference-between-features-and-components%2F&amp;title=The%20Difference%20Between%20Features%20and%20Components" title="Reddit"><img src="http://www.installationdeveloper.com/wp-content/plugins/sociable/images/reddit.png" title="Reddit" alt="Reddit" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fwww.installationdeveloper.com%2F332%2Fthe-difference-between-features-and-components%2F&amp;title=The%20Difference%20Between%20Features%20and%20Components" title="StumbleUpon"><img src="http://www.installationdeveloper.com/wp-content/plugins/sociable/images/stumbleupon.png" title="StumbleUpon" alt="StumbleUpon" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fwww.installationdeveloper.com%2F332%2Fthe-difference-between-features-and-components%2F&amp;title=The%20Difference%20Between%20Features%20and%20Components&amp;annotation=%0D%0AIf%20you%20are%20new%20to%20InstallShield%2C%20you%20need%20to%20read%20this%20post.%26nbsp%3B%20Veterans%20will%20probably%20be%20bored.%20%0D%0A%0D%0A%0D%0ALet%26%2339%3Bs%20say%20you%20an%20installation%20that%20has%20one%26nbsp%3Bfeature%20that%20is%20required%2C%20and%20several%20components.%26nbsp%3B%20You%20want%20the%20user%20to%20be%20able%20to%20se" title="Google Bookmarks"><img src="http://www.installationdeveloper.com/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://buzz.yahoo.com/submit/?submitUrl=http%3A%2F%2Fwww.installationdeveloper.com%2F332%2Fthe-difference-between-features-and-components%2F&amp;submitHeadline=The%20Difference%20Between%20Features%20and%20Components&amp;submitSummary=%0D%0AIf%20you%20are%20new%20to%20InstallShield%2C%20you%20need%20to%20read%20this%20post.%26nbsp%3B%20Veterans%20will%20probably%20be%20bored.%20%0D%0A%0D%0A%0D%0ALet%26%2339%3Bs%20say%20you%20an%20installation%20that%20has%20one%26nbsp%3Bfeature%20that%20is%20required%2C%20and%20several%20components.%26nbsp%3B%20You%20want%20the%20user%20to%20be%20able%20to%20se&amp;submitCategory=science&amp;submitAssetType=text" title="Yahoo! Buzz"><img src="http://www.installationdeveloper.com/wp-content/plugins/sociable/images/yahoobuzz.png" title="Yahoo! Buzz" alt="Yahoo! Buzz" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://twitter.com/home?status=The%20Difference%20Between%20Features%20and%20Components%20-%20http%3A%2F%2Fwww.installationdeveloper.com%2F332%2Fthe-difference-between-features-and-components%2F" title="Twitter"><img src="http://www.installationdeveloper.com/wp-content/plugins/sociable/images/twitter.png" title="Twitter" alt="Twitter" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://technorati.com/faves?add=http%3A%2F%2Fwww.installationdeveloper.com%2F332%2Fthe-difference-between-features-and-components%2F" title="Technorati"><img src="http://www.installationdeveloper.com/wp-content/plugins/sociable/images/technorati.png" title="Technorati" alt="Technorati" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="https://favorites.live.com/quickadd.aspx?marklet=1&amp;url=http%3A%2F%2Fwww.installationdeveloper.com%2F332%2Fthe-difference-between-features-and-components%2F&amp;title=The%20Difference%20Between%20Features%20and%20Components" title="Live"><img src="http://www.installationdeveloper.com/wp-content/plugins/sociable/images/live.png" title="Live" alt="Live" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  target="_blank" href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http%3A%2F%2Fwww.installationdeveloper.com%2F332%2Fthe-difference-between-features-and-components%2F&amp;title=The%20Difference%20Between%20Features%20and%20Components&amp;source=Installation+Developer+InstallShield+Training+-+InstallShield+Tutorials&amp;summary=%0D%0AIf%20you%20are%20new%20to%20InstallShield%2C%20you%20need%20to%20read%20this%20post.%26nbsp%3B%20Veterans%20will%20probably%20be%20bored.%20%0D%0A%0D%0A%0D%0ALet%26%2339%3Bs%20say%20you%20an%20installation%20that%20has%20one%26nbsp%3Bfeature%20that%20is%20required%2C%20and%20several%20components.%26nbsp%3B%20You%20want%20the%20user%20to%20be%20able%20to%20se" title="LinkedIn"><img src="http://www.installationdeveloper.com/wp-content/plugins/sociable/images/linkedin.png" title="LinkedIn" alt="LinkedIn" class="sociable-hovers" /></a></li>
	<li class="sociablelast"><a rel="nofollow"  target="_blank" href="http://www.myspace.com/Modules/PostTo/Pages/?u=http%3A%2F%2Fwww.installationdeveloper.com%2F332%2Fthe-difference-between-features-and-components%2F&amp;t=The%20Difference%20Between%20Features%20and%20Components" title="MySpace"><img src="http://www.installationdeveloper.com/wp-content/plugins/sociable/images/myspace.png" title="MySpace" alt="MySpace" class="sociable-hovers" /></a></li>
</ul>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.installationdeveloper.com/332/the-difference-between-features-and-components/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
