<?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; Why Basic MSI Projects have a Steeper Learning Curve than InstallScript Projects</title>
	<atom:link href="http://www.installationdeveloper.com/306/why-basic-msi-projects-have-a-steeper-learning-curve-than-installscript-projects/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.installationdeveloper.com</link>
	<description>InstallShield Training - InstallShield Tutorials</description>
	<lastBuildDate>Thu, 26 Jan 2012 22:12:00 +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>Why Basic MSI Projects have a Steeper Learning Curve than InstallScript Projects</title>
		<link>http://www.installationdeveloper.com/306/why-basic-msi-projects-have-a-steeper-learning-curve-than-installscript-projects/</link>
		<comments>http://www.installationdeveloper.com/306/why-basic-msi-projects-have-a-steeper-learning-curve-than-installscript-projects/#comments</comments>
		<pubDate>Fri, 19 Jun 2009 16:53:24 +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=306</guid>
		<description><![CDATA[I have written two posts&#160;in the past on the differences between Basic MSI, InstallScript, and InstallScript MSI projects in InstallShield.&#160; Here are the links to those posts: http://www.installationdeveloper.com/post/InstallScript-vs-Basic-MSI.aspx http://www.installationdeveloper.com/post/InstallScript-vs-InstallScript-MSI.aspx In the first link above, I mentioned that if you are just starting out, the Basic MSI project has a steeper learning curve than the InstallScript [...]]]></description>
			<content:encoded><![CDATA[<p>
I have written two posts&nbsp;in the past on the differences between <strong>Basic MSI</strong>, <strong>InstallScript</strong>, and <strong>InstallScript MSI</strong> projects in <strong>InstallShield</strong>.&nbsp; Here are the links to those posts:
</p>
<p>
<a href="http://www.installationdeveloper.com/post/InstallScript-vs-Basic-MSI.aspx">http://www.installationdeveloper.com/post/InstallScript-vs-Basic-MSI.aspx</a>
</p>
<p>
<a href="http://www.installationdeveloper.com/post/InstallScript-vs-InstallScript-MSI.aspx">http://www.installationdeveloper.com/post/InstallScript-vs-InstallScript-MSI.aspx</a>
</p>
<p>
In the first link above, I mentioned that if you are just starting out, the <strong>Basic MSI</strong> project has a steeper learning curve than the <strong>InstallScript</strong> project.&nbsp; Well, a reader wrote&nbsp;and asked me why?&nbsp; Here&#39;s the answer.
</p>
<p>
<strong>InstallScript</strong> projects are driven by a script.&nbsp; Usually, <strong>InstallScript</strong> projects also broken up into separate&nbsp;event handler scripts.&nbsp; So, this model of installation development is more intuitive and more closely resembles basic Windows application development.&nbsp; <strong>InstallScript</strong> is a procedural-based language and is very easy to learn.
</p>
<p>
<strong>Basic MSI</strong> projects are totally different.&nbsp; They are driven by the <strong>Windows Installer (MSI),</strong>&nbsp;which is governed by a sequence of actions.&nbsp; These actions are of two types,&nbsp;Standard and Custom.&nbsp; These actions control the user interface of the installation and they make all necessary modifications to the user&#39;s system.&nbsp; In addition, the majority of information in the <strong>Basic MSI</strong> project is held in a set of tables, as an <strong>MSI</strong> file is really a relational database.&nbsp; Unless a person&nbsp;learned to work with the <strong>Windows Installer</strong> initially, they may find that&nbsp;working with a set of tables is&nbsp;less intuitive than working with a script.
</p>
<p>
There are other differences, in an <strong>InstallScript</strong> project, all the UI elements are performed by function calls made from the script.&nbsp; In a <strong>Basic MSI</strong> project, the UI elements are performed by a set of actions, and these actions generally involve a sequence of dialogs.&nbsp; To define how each of the dialogs behaves, you have to define behaviors for each of the controls in the dialogs.&nbsp; This is done through the setting of properties for the controls.
</p>
<p>
Another big difference is that in order to customize a <strong>Basic MSI</strong> installation and have a piece of functionality that is not provided by default by the <strong>Windows Installer</strong>, you have to write a custom action.&nbsp; Custom Actions are actions that you create and insert into the sequence of a <strong>Basic MSI </strong>installation.&nbsp; There are many different types of custom actions that you can create, but generally people write custom actions in <strong>InstallScript</strong>.&nbsp; Basically, you write an <strong>InstallScript</strong> function that performs a specific task, and then you create a custom action&nbsp;that calls that function.&nbsp; These can be a little confusing to&nbsp;set up the first couple of times you do them.
</p>
<p>
Even though you now know&nbsp;the differences between the project types, and may think that you would never want to create a <strong>Basic MSI</strong> project because it is initially harder, just remember that <strong>Basic MSI</strong> development is not difficult when someone shows you how to do it.&nbsp; That&#39;s why I developed the <strong>InstallShield Training DVD</strong> courses, and that&#39;s why in the courses <strong>I take people by the hand and show them what to do</strong>.&nbsp; <strong>It makes a huge difference</strong>.
</p>
<p>
If you want to quickly learn how to develop Basic MSI installations, <strong>go to this link&nbsp;now</strong>:
</p>
<p>
<u><font color="#0000ff"><a href="http://www.wavepointstudios.net/Basic-MSI-2009.aspx">http://www.wavepointstudios.net/Basic-MSI-2009.aspx</a></font></u><a href="http://www.wavepointstudios.net/"></a></p>
<!-- Start Sociable --><div class="sociable"><div class="sociable_tagline"><a class='sociable_tagline' target='_blank' href='http://blogplay.com' style='color:#333333;text-decoration:none'>Be Sociable, Share!</a></div><ul class='clearfix'><li><a title="Twitter" class="option1_32" style="background-position:-288px -32px" rel="nofollow" target="_blank" href="http://twitter.com/intent/tweet?text=Why%20Basic%20MSI%20Projects%20have%20a%20Steeper%20Learning%20Curve%20than%20InstallScript%20Projects%20-%20http%3A%2F%2Fwww.installationdeveloper.com%2F306%2Fwhy-basic-msi-projects-have-a-steeper-learning-curve-than-installscript-projects%2F%20(via%20@sociablesite)"></a></li><li><a title="Facebook" class="option1_32" style="background-position:-96px 0px" rel="nofollow" target="_blank" href="http://www.facebook.com/share.php?u=http%3A%2F%2Fwww.installationdeveloper.com%2F306%2Fwhy-basic-msi-projects-have-a-steeper-learning-curve-than-installscript-projects%2F&amp;t=Why%20Basic%20MSI%20Projects%20have%20a%20Steeper%20Learning%20Curve%20than%20InstallScript%20Projects"></a></li><li><a title="email" class="option1_32" style="background-position:-160px 0px" rel="nofollow" target="_blank" href="https://mail.google.com/mail/?view=cm&fs=1&to&su=Why%20Basic%20MSI%20Projects%20have%20a%20Steeper%20Learning%20Curve%20than%20InstallScript%20Projects&body=http%3A%2F%2Fwww.installationdeveloper.com%2F306%2Fwhy-basic-msi-projects-have-a-steeper-learning-curve-than-installscript-projects%2F&ui=2&tf=1&shva=1"></a></li><li><a class="option1_32" style="cursor:pointer;background-position:-128px 0px" rel="nofollow" title="Add to favorites - doesn't work in Chrome"  onClick="javascript:AddToFavorites();"></a></li><li><a title="StumbleUpon" class="option1_32" style="background-position:-224px -32px" rel="nofollow" target="_blank" href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fwww.installationdeveloper.com%2F306%2Fwhy-basic-msi-projects-have-a-steeper-learning-curve-than-installscript-projects%2F&title=Why%20Basic%20MSI%20Projects%20have%20a%20Steeper%20Learning%20Curve%20than%20InstallScript%20Projects"></a></li><li><a title="Delicious" class="option1_32" style="background-position:-32px 0px" rel="nofollow" target="_blank" href="http://delicious.com/post?url=http%3A%2F%2Fwww.installationdeveloper.com%2F306%2Fwhy-basic-msi-projects-have-a-steeper-learning-curve-than-installscript-projects%2F&amp;title=Why%20Basic%20MSI%20Projects%20have%20a%20Steeper%20Learning%20Curve%20than%20InstallScript%20Projects&amp;notes=%0D%0AI%20have%20written%20two%20posts%26nbsp%3Bin%20the%20past%20on%20the%20differences%20between%20Basic%20MSI%2C%20InstallScript%2C%20and%20InstallScript%20MSI%20projects%20in%20InstallShield.%26nbsp%3B%20Here%20are%20the%20links%20to%20those%20posts%3A%20%0D%0A%0D%0A%0D%0Ahttp%3A%2F%2Fwww.installationdeveloper.com%2Fpost%2FInstallScript-v"></a></li><li><a title="Google Reader" class="option1_32" style="background-position:-224px 0px" rel="nofollow" target="_blank" href="http://www.google.com/reader/link?url=http%3A%2F%2Fwww.installationdeveloper.com%2F306%2Fwhy-basic-msi-projects-have-a-steeper-learning-curve-than-installscript-projects%2F&amp;title=Why%20Basic%20MSI%20Projects%20have%20a%20Steeper%20Learning%20Curve%20than%20InstallScript%20Projects&amp;srcURL=http%3A%2F%2Fwww.installationdeveloper.com%2F306%2Fwhy-basic-msi-projects-have-a-steeper-learning-curve-than-installscript-projects%2F&amp;srcTitle=Installation+Developer+InstallShield+Training+-+InstallShield+Tutorials"></a></li><li><a title="LinkedIn" class="option1_32" style="background-position:-288px 0px" rel="nofollow" target="_blank" href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http%3A%2F%2Fwww.installationdeveloper.com%2F306%2Fwhy-basic-msi-projects-have-a-steeper-learning-curve-than-installscript-projects%2F&amp;title=Why%20Basic%20MSI%20Projects%20have%20a%20Steeper%20Learning%20Curve%20than%20InstallScript%20Projects&amp;source=Installation+Developer+InstallShield+Training+-+InstallShield+Tutorials&amp;summary=%0D%0AI%20have%20written%20two%20posts%26nbsp%3Bin%20the%20past%20on%20the%20differences%20between%20Basic%20MSI%2C%20InstallScript%2C%20and%20InstallScript%20MSI%20projects%20in%20InstallShield.%26nbsp%3B%20Here%20are%20the%20links%20to%20those%20posts%3A%20%0D%0A%0D%0A%0D%0Ahttp%3A%2F%2Fwww.installationdeveloper.com%2Fpost%2FInstallScript-v"></a></li><li><a title="BlinkList" class="option1_32" style="background-position:0px 0px" rel="nofollow" target="_blank" href="http://www.blinklist.com/index.php?Action=Blink/addblink.php&amp;Url=http%3A%2F%2Fwww.installationdeveloper.com%2F306%2Fwhy-basic-msi-projects-have-a-steeper-learning-curve-than-installscript-projects%2F&amp;Title=Why%20Basic%20MSI%20Projects%20have%20a%20Steeper%20Learning%20Curve%20than%20InstallScript%20Projects"></a></li><li><a style="cursor:pointer" rel="nofollow" onMouseOut="fixOnMouseOut(document.getElementById('sociable-post-306'), event, 'post-306')" onMouseOver="more(this,'post-306')"><img style='margin-top:9px' src='http://www.installationdeveloper.com/wp-content/plugins/sociable/images/more.png'></a></li></ul><div onMouseout="fixOnMouseOut(this,event,'post-306')" id="sociable-post-306" style="display:none;">   

    <div style="top: auto; left: auto; display: block;" id="sociable">



		<div class="popup">

			<div class="content">

				<ul><li style="heigth:32px;width:32px"><a title="Myspace" class="option1_32" style="background-position:0px -32px" rel="nofollow" target="_blank" href="http://www.myspace.com/Modules/PostTo/Pages/?u=http%3A%2F%2Fwww.installationdeveloper.com%2F306%2Fwhy-basic-msi-projects-have-a-steeper-learning-curve-than-installscript-projects%2F&amp;t=Why%20Basic%20MSI%20Projects%20have%20a%20Steeper%20Learning%20Curve%20than%20InstallScript%20Projects"></a></li><li style="heigth:32px;width:32px"><a title="Digg" class="option1_32" style="background-position:-64px 0px" rel="nofollow" target="_blank" href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fwww.installationdeveloper.com%2F306%2Fwhy-basic-msi-projects-have-a-steeper-learning-curve-than-installscript-projects%2F&amp;title=Why%20Basic%20MSI%20Projects%20have%20a%20Steeper%20Learning%20Curve%20than%20InstallScript%20Projects&amp;bodytext=%0D%0AI%20have%20written%20two%20posts%26nbsp%3Bin%20the%20past%20on%20the%20differences%20between%20Basic%20MSI%2C%20InstallScript%2C%20and%20InstallScript%20MSI%20projects%20in%20InstallShield.%26nbsp%3B%20Here%20are%20the%20links%20to%20those%20posts%3A%20%0D%0A%0D%0A%0D%0Ahttp%3A%2F%2Fwww.installationdeveloper.com%2Fpost%2FInstallScript-v"></a></li><li style="heigth:32px;width:32px"><a title="Reddit" class="option1_32" style="background-position:-128px -32px" rel="nofollow" target="_blank" href="http://reddit.com/submit?url=http%3A%2F%2Fwww.installationdeveloper.com%2F306%2Fwhy-basic-msi-projects-have-a-steeper-learning-curve-than-installscript-projects%2F&amp;title=Why%20Basic%20MSI%20Projects%20have%20a%20Steeper%20Learning%20Curve%20than%20InstallScript%20Projects"></a></li><li style="heigth:32px;width:32px"><a title="Google Bookmarks" class="option1_32" style="background-position:-192px 0px" rel="nofollow" target="_blank" href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fwww.installationdeveloper.com%2F306%2Fwhy-basic-msi-projects-have-a-steeper-learning-curve-than-installscript-projects%2F&amp;title=Why%20Basic%20MSI%20Projects%20have%20a%20Steeper%20Learning%20Curve%20than%20InstallScript%20Projects&amp;annotation=%0D%0AI%20have%20written%20two%20posts%26nbsp%3Bin%20the%20past%20on%20the%20differences%20between%20Basic%20MSI%2C%20InstallScript%2C%20and%20InstallScript%20MSI%20projects%20in%20InstallShield.%26nbsp%3B%20Here%20are%20the%20links%20to%20those%20posts%3A%20%0D%0A%0D%0A%0D%0Ahttp%3A%2F%2Fwww.installationdeveloper.com%2Fpost%2FInstallScript-v"></a></li><li style="heigth:32px;width:32px"><a title="HackerNews" class="option1_32" style="background-position:-256px 0px" rel="nofollow" target="_blank" href="http://news.ycombinator.com/submitlink?u=http%3A%2F%2Fwww.installationdeveloper.com%2F306%2Fwhy-basic-msi-projects-have-a-steeper-learning-curve-than-installscript-projects%2F&amp;t=Why%20Basic%20MSI%20Projects%20have%20a%20Steeper%20Learning%20Curve%20than%20InstallScript%20Projects"></a></li><li style="heigth:32px;width:32px"><a title="MSNReporter" class="option1_32" style="background-position:-352px 0px" rel="nofollow" target="_blank" href="http://reporter.es.msn.com/?fn=contribute&amp;Title=Why%20Basic%20MSI%20Projects%20have%20a%20Steeper%20Learning%20Curve%20than%20InstallScript%20Projects&amp;URL=http%3A%2F%2Fwww.installationdeveloper.com%2F306%2Fwhy-basic-msi-projects-have-a-steeper-learning-curve-than-installscript-projects%2F&amp;cat_id=6&amp;tag_id=31&amp;Remark=%0D%0AI%20have%20written%20two%20posts%26nbsp%3Bin%20the%20past%20on%20the%20differences%20between%20Basic%20MSI%2C%20InstallScript%2C%20and%20InstallScript%20MSI%20projects%20in%20InstallShield.%26nbsp%3B%20Here%20are%20the%20links%20to%20those%20posts%3A%20%0D%0A%0D%0A%0D%0Ahttp%3A%2F%2Fwww.installationdeveloper.com%2Fpost%2FInstallScript-v"></a></li><li style="heigth:32px;width:32px"><a title="Sphinn" class="option1_32" style="background-position:-192px -32px" rel="nofollow" target="_blank" href="http://sphinn.com/index.php?c=post&amp;m=submit&amp;link=http%3A%2F%2Fwww.installationdeveloper.com%2F306%2Fwhy-basic-msi-projects-have-a-steeper-learning-curve-than-installscript-projects%2F"></a></li><li style="heigth:32px;width:32px"><a title="Posterous" class="option1_32" style="background-position:-64px -32px" rel="nofollow" target="_blank" href="http://posterous.com/share?linkto=http%3A%2F%2Fwww.installationdeveloper.com%2F306%2Fwhy-basic-msi-projects-have-a-steeper-learning-curve-than-installscript-projects%2F&amp;title=Why%20Basic%20MSI%20Projects%20have%20a%20Steeper%20Learning%20Curve%20than%20InstallScript%20Projects&amp;selection=%0D%0AI%20have%20written%20two%20posts%26nbsp%3Bin%20the%20past%20on%20the%20differences%20between%20Basic%20MSI%2C%20InstallScript%2C%20and%20InstallScript%20MSI%20projects%20in%20InstallShield.%26nbsp%3B%20Here%20are%20the%20links%20to%20those%20posts%3A%20%0D%0A%0D%0A%0D%0Ahttp%3A%2F%2Fwww.installationdeveloper.com%2Fpost%2FInstallScript-v"></a></li><li style="heigth:32px;width:32px"><a title="Tumblr" class="option1_32" style="background-position:-256px -32px" rel="nofollow" target="_blank" href="http://www.tumblr.com/share?v=3&amp;u=http%3A%2F%2Fwww.installationdeveloper.com%2F306%2Fwhy-basic-msi-projects-have-a-steeper-learning-curve-than-installscript-projects%2F&amp;t=Why%20Basic%20MSI%20Projects%20have%20a%20Steeper%20Learning%20Curve%20than%20InstallScript%20Projects&amp;s=%0D%0AI%20have%20written%20two%20posts%26nbsp%3Bin%20the%20past%20on%20the%20differences%20between%20Basic%20MSI%2C%20InstallScript%2C%20and%20InstallScript%20MSI%20projects%20in%20InstallShield.%26nbsp%3B%20Here%20are%20the%20links%20to%20those%20posts%3A%20%0D%0A%0D%0A%0D%0Ahttp%3A%2F%2Fwww.installationdeveloper.com%2Fpost%2FInstallScript-v"></a></li></ul>			

			</div>        

		  <a style="cursor:pointer" onclick="hide_sociable('post-306',true)" class="close">



		  <img onclick="hide_sociable('post-306',true)" title="close" src="http://www.installationdeveloper.com/wp-content/plugins/sociable/images/closelabel.png">

		  </a>

		</div>

	</div> 

  </div></div><div class='sociable' style='float:none'><ul class='clearfix'><li id="Twitter_Counter"><a href="https://twitter.com/share" data-text="Why Basic MSI Projects have a Steeper Learning Curve than InstallScript Projects - http://www.installationdeveloper.com/306/why-basic-msi-projects-have-a-steeper-learning-curve-than-installscript-projects/ (via #sociablesite)" data-url="http://www.installationdeveloper.com/306/why-basic-msi-projects-have-a-steeper-learning-curve-than-installscript-projects/" class="twitter-share-button" data-count="horizontal">Tweet</a><script type="text/javascript" src="//platform.twitter.com/widgets.js"></script></li><li id="Facebook_Counter"><iframe src="//www.facebook.com/plugins/like.php?href=http://www.installationdeveloper.com/306/why-basic-msi-projects-have-a-steeper-learning-curve-than-installscript-projects/&send=false&layout=button_count&show_faces=false&action=like&colorscheme=light&font" scrolling="no" frameborder="0" style="border:none; overflow:hidden;height:32px;width:100px" allowTransparency="true"></iframe></li><li id="Google_+"><g:plusone annotation="bubble" href="http://www.installationdeveloper.com/306/why-basic-msi-projects-have-a-steeper-learning-curve-than-installscript-projects/" size="medium"></g:plusone></li><li id="LinkedIn_Counter"><script src="http://platform.linkedin.com/in.js" type="text/javascript"></script><script type="IN/Share" data-url="http://www.installationdeveloper.com/306/why-basic-msi-projects-have-a-steeper-learning-curve-than-installscript-projects/" data-counter="right"></script></li><li id="StumbleUpon_Counter"><script src="http://www.stumbleupon.com/hostedbadge.php?s=2&r=http://www.installationdeveloper.com/306/why-basic-msi-projects-have-a-steeper-learning-curve-than-installscript-projects/"></script></li></ul></div><!-- End Sociable -->]]></content:encoded>
			<wfw:commentRss>http://www.installationdeveloper.com/306/why-basic-msi-projects-have-a-steeper-learning-curve-than-installscript-projects/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

