<?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>Joy of Setup &#187; Flight Simulator</title>
	<atom:link href="http://www.joyofsetup.com/category/flight-simulator/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.joyofsetup.com</link>
	<description>Bob Arnson's blog about setup and servicing</description>
	<lastBuildDate>Tue, 29 Jun 2010 02:41:43 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>New WiX feature: Firewall extension</title>
		<link>http://www.joyofsetup.com/2008/05/17/new-wix-feature-firewall-extension/</link>
		<comments>http://www.joyofsetup.com/2008/05/17/new-wix-feature-firewall-extension/#comments</comments>
		<pubDate>Sat, 17 May 2008 22:13:22 +0000</pubDate>
		<dc:creator>Bob Arnson</dc:creator>
				<category><![CDATA[Flight Simulator]]></category>
		<category><![CDATA[WiX]]></category>
		<category><![CDATA[new feature]]></category>
		<category><![CDATA[WiX extensions]]></category>

		<guid isPermaLink="false">http://www.joyofsetup.com/2008/05/17/new-wix-feature-firewall-extension/</guid>
		<description><![CDATA[WixFirewallExtension is a new WiX extension that lets you configure the Windows Firewall from your program&#8217;s installer. Windows has had a built-in firewall since Windows XP was released in 2001, though it was XP&#8217;s Service Pack 2 that introduced a firewall of sufficient power for most people to use it. (It helps that in SP2, [...]]]></description>
			<content:encoded><![CDATA[<p>WixFirewallExtension is a new WiX extension that lets you configure the Windows Firewall from your program&#8217;s installer. Windows has had a built-in firewall since Windows XP was released in 2001, though it was XP&#8217;s Service Pack 2 that introduced a firewall of sufficient power for most people to use it. (It helps that in SP2, the firewall is turned on by default. The same is true on Windows Vista, Server 2003 SP1, and Server 2008.)</p>
<p>Outgoing connections &#8212; from the local computer to a server &#8212; aren&#8217;t blocked. (In fact, the firewall on XP SP2 and Server 2003 SP1 doesn&#8217;t support blocking outbound connections. That feature was added to the firewall in Vista and Server 2008.) Incoming connections are blocked unless the firewall is configured to allow them. If your program is any kind of a server, it needs to add itself to the firewall&#8217;s exception list or it won&#8217;t receive any connections that originate from another machine.</p>
<p>There are two types of firewall exceptions:</p>
<ul>
<li>Application: A particular program for an incoming connection on any port/protocol.</li>
<li>Port: A particular port for a particular IP protocol (TCP or UDP). Any program can accept incoming connections from that port/protocol.</li>
</ul>
<p>For both types of exceptions, the scope of the exception controls which incoming connections are accepted:</p>
<ul>
<li>Any network, including the Internet.</li>
<li>Only the local subnetwork.</li>
<li>Custom IP addresses.</li>
</ul>
<p>You can configure your program&#8217;s firewall exceptions using the FirewallException element. To configure an application exception, nest the FirewallException element under the program&#8217;s File element or under a Component element and specify the program&#8217;s file id in the File attribute:</p>
<blockquote><p>&lt;Wix xmlns=&#8221;http://schemas.microsoft.com/wix/2006/wi&#8221; xmlns:fire=&#8221;http://schemas.microsoft.com/wix/FirewallExtension&#8221;&gt;<br />
&#8230;<br />
&lt;Component Id=&#8221;MyComponent1&#8243; Guid=&#8221;PUT-GUID-HERE&#8221;&gt;<br />
&lt;File KeyPath=&#8221;yes&#8221; Source=&#8221;program.exe&#8221;&gt;<br />
&lt;fire:FirewallException Id=&#8221;FWX1&#8243; Name=&#8221;My Program&#8221; /&gt;<br />
&#8230;</p></blockquote>
<p>The Id and Name attributes are both required. You can adjust the scope of the exception using the Scope attribute, which takes values <em>any</em> or <em>localSubnet</em> or by using RemoteAddress child elements:</p>
<blockquote><p>&lt;Wix xmlns=&#8221;http://schemas.microsoft.com/wix/2006/wi&#8221; xmlns:fire=&#8221;http://schemas.microsoft.com/wix/FirewallExtension&#8221;&gt;<br />
&#8230;<br />
&lt;Component Id=&#8221;MyComponent2&#8243; Guid=&#8221;PUT-GUID-HERE&#8221;&gt;<br />
&lt;File KeyPath=&#8221;yes&#8221; Source=&#8221;program.exe&#8221;&gt;<br />
&lt;fire:FirewallException Id=&#8221;FWX2&#8243; Name=&#8221;My Program&#8221;&gt;<br />
&lt;fire:RemoteAddress&gt;127.0.0.1&lt;/fire:RemoteAddress&gt;<br />
&lt;fire:RemoteAddress&gt;127.0.0.2&lt;/fire:RemoteAddress&gt;<br />
&lt;fire:RemoteAddress&gt;127.0.0.3&lt;/fire:RemoteAddress&gt;<br />
&#8230;</p></blockquote>
<p>RemoteAddress is a direct line to the firewall API&#8217;s support for <a href="http://msdn.microsoft.com/en-us/library/aa365366(VS.85).aspx">remote addresses</a>.</p>
<p>There&#8217;s also a Program attribute that lets you specify a formatted string that identifies the program that should get the firewall exception. It&#8217;s useful if you want to specify an exception for a program installed by a different package.</p>
<p>To specify a port exception, use the Port and Protocol attributes. Port takes an integer value and Protocol takes <em>tcp</em>, <em>udp</em>, or <em>any</em>. Note that <em>any</em> requires Windows Vista and Server 2008; on XP SP2 and Server 2003 SP1, specify two port exceptions, one with Protocol=&#8221;tcp&#8221; and another with Protocol=&#8221;udp&#8221; as a workaround.</p>
<blockquote><p>&lt;Wix xmlns=&#8221;http://schemas.microsoft.com/wix/2006/wi&#8221; xmlns:fire=&#8221;http://schemas.microsoft.com/wix/FirewallExtension&#8221;&gt;<br />
&#8230;<br />
&lt;Component Id=&#8221;MyComponent3&#8243; Guid=&#8221;PUT-GUID-HERE&#8221;&gt;<br />
&lt;File KeyPath=&#8221;yes&#8221; Source=&#8221;program.exe&#8221;&gt;<br />
&lt;fire:FirewallException Id=&#8221;FWX3&#8243; Name=&#8221;My Program&#8221; Port=&#8221;1025&#8243; Protocol=&#8221;udp&#8221; /&gt;<br />
&#8230;</p></blockquote>
<p>Both types of exceptions also support the IgnoreFailure attribute to specify whether firewall configuration failures should be ignored or cause the installation to roll back.</p>
<h4>Sponsored by ACES</h4>
<p>The firewall extension is part of the work I’m undertaking to convert ACES Studio’s products from our old script-based installer to a declarative installer built with WiX. Studio management was pleased to contribute the work to the WiX community.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joyofsetup.com/2008/05/17/new-wix-feature-firewall-extension/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>New WiX feature: Gaming extension</title>
		<link>http://www.joyofsetup.com/2008/04/22/new-wix-feature-gaming-extension/</link>
		<comments>http://www.joyofsetup.com/2008/04/22/new-wix-feature-gaming-extension/#comments</comments>
		<pubDate>Wed, 23 Apr 2008 06:49:17 +0000</pubDate>
		<dc:creator>Bob Arnson</dc:creator>
				<category><![CDATA[Flight Simulator]]></category>
		<category><![CDATA[WiX]]></category>
		<category><![CDATA[new feature]]></category>
		<category><![CDATA[WiX extensions]]></category>

		<guid isPermaLink="false">http://www.joyofsetup.com/2008/04/22/new-wix-feature-gaming-extension/</guid>
		<description><![CDATA[The Game Explorer is a new feature in Windows Vista to collect and richly present installed games. Game Explorer is a shell folder that includes detailed information about each game, including box art, content ratings (and parental-control restrictions based on them), and performance requirements (using the Vista performance rating system). Most of the details shown [...]]]></description>
			<content:encoded><![CDATA[<p>The Game Explorer is a new feature in Windows Vista to collect and richly present installed games. Game Explorer is a shell folder that includes detailed information about each game, including box art, content ratings (and parental-control restrictions based on them), and performance requirements (using the Vista performance rating system).</p>
<p>Most of the details shown in Game Explorer come from the game developer in the form of the <a href="http://msdn2.microsoft.com/en-us/library/bb173445(VS.85).aspx">Game Definition File (GDF)</a> that&#8217;s embedded as a resource in your executable. Details and samples on the GDF and Game Explorer are available in the <a href="http://msdn2.microsoft.com/en-us/library/aa139765.aspx">DirectX SDK</a>, especially in <a href="http://msdn2.microsoft.com/en-us/library/bb173446(VS.85).aspx">Getting Started with Game Explorer</a>.</p>
<p>The WiX Gaming extension is a compiler extension with custom actions to do the following:</p>
<ul>
<li>Register a game in Game Explorer.</li>
<li>Create tasks in the context menu of a game in Game Explorer.</li>
<li>Register a game on Windows XP so it&#8217;s available in Game Explorer after an upgrade to Windows Vista.</li>
<li>Register extensions with support for the rich saved-game preview handler.</li>
</ul>
<p>[Update: WixGamingExtension will be available in the <a href="http://wix.sourceforge.net/releases/">next weekly release</a> of WiX v3.]</p>
<h2>Registering games</h2>
<p>To register a game, add a Game element and specify its instance ID in its Id attribute as a child of the File element for the game executable. For example:</p>
<blockquote>
<p align="left">&lt;File Id=&#8221;MyGameExeFile&#8221; Name=&#8221;passenger_simulator.exe&#8221; KeyPath=&#8221;yes&#8221;&gt;<br />
&lt;gaming:Game Id=&#8221;985D5FD3-FC40-4CE9-9EE5-F2AAAB959230&#8243;&gt;<br />
&#8230;</p>
</blockquote>
<p>The DirectX SDK <a href="http://msdn2.microsoft.com/en-us/library/bb173446(VS.85).aspx#Step_4_Call_IGameExplorer_AddGame">suggests</a> letting the Game Explorer COM object create a new GUID for every installation. It then suggests writing the new GUID to the registry or file system to persist it or to <a href="http://msdn2.microsoft.com/en-us/library/bb173451(VS.85).aspx">use WMI to query Game Explorer for the GUID</a>. The prior release of Flight Simulator used WMI, which was a fairly regular source of failures during uninstall and repair operations. Following the mantra of minimizing runtime dependencies during setup, I chose to let the setup author specify a static ID. No persistence or runtime dependencies required.</p>
<h2>Creating tasks</h2>
<p><a href="http://msdn2.microsoft.com/en-us/library/bb173450(VS.85).aspx">Game Explorer tasks</a> are simply shortcuts shown on the context menu on the game icon in Game Explorer. <em>Play tasks</em> are plain ol&#8217; shortcuts to the game executable with optional command-line arguments. <em>Support tasks</em> are shortcuts to URLs. The shortcuts must be created in specific directories for Game Explorer to find them.</p>
<p>WixGamingExtension translates strongly-typed PlayTask elements into rows in the Shortcut table; the Name attribute is the name of the shortcut and Arguments are the command-line arguments. WixGamingExtension translates SupportTask elements into <a href="http://www.joyofsetup.com/2008/03/18/new-wix-feature-internet-shortcuts/">WixUtilExtension InternetShortcuts</a>; the Name attribute is the name of the shortcut and Address is the URL.</p>
<blockquote>
<p align="left">&lt;File Id=&#8221;MyGameExeFile&#8221; Name=&#8221;passenger_simulator.exe&#8221; KeyPath=&#8221;yes&#8221;&gt;<br />
&lt;gaming:Game Id=&#8221;985D5FD3-FC40-4CE9-9EE5-F2AAAB959230&#8243;&gt;<br />
&lt;gaming:PlayTask Name=&#8221;Play&#8221; /&gt;<br />
&lt;gaming:PlayTask Name=&#8221;Play in Deity Mode&#8221; Arguments=&#8221;-deity&#8221; /&gt;<br />
&lt;gaming:SupportTask Name=&#8221;Help!&#8221; Address=&#8221;<a href="http://example.com">http://example.com&#8221;</a> /&gt;<br />
&lt;gaming:SupportTask Name=&#8221;Cheat codes&#8221; Address=&#8221;<a href="http://example.com">http://example.com&#8221;</a> /&gt;<br />
&lt;gaming:SupportTask Name=&#8221;Get P0wned&#8221; Address=&#8221;<a href="http://example.com/1337">http://example.com/1337&#8243;</a> /&gt;<br />
&lt;gaming:SupportTask Name=&#8221;Get owned&#8221; Address=&#8221;<a href="http://example.com/non1337">http://example.com/non1337&#8243;</a> /&gt;<br />
&lt;gaming:PlayTask Name=&#8221;Show no mercy&#8221; Arguments=&#8221;-cutenfluffy&#8221; /&gt;<br />
&lt;gaming:SupportTask Name=&#8221;Forums&#8221; Address=&#8221;<a href="http://example.com">http://example.com&#8221;</a> /&gt;<br />
&lt;/gaming:Game&gt;</p>
</blockquote>
<h2>Registering for OS upgrades</h2>
<p>When you install a game on Windows XP and later install Windows Vista as an upgrade, the Vista upgrade can automatically register the game in Game Explorer. All that&#8217;s required is writing the task shortcuts and a few registry values. WixGamingExtension does that automatically; no extra authoring is required.</p>
<h2>Rich saved games</h2>
<p>Vista includes a <a href="http://msdn2.microsoft.com/en-us/library/bb173448(VS.85).aspx">special preview handler</a> for file extensions registered as a saved-game file. Most of the effort required to support rich preview is in the game itself; the burden on setup is just to register the extension for the preview handler. WixGamingExtension supports this registration as a simple yes/no attribute on the standard WiX <a href="http://wix.sourceforge.net/manual-wix2/wix_xsd_extension.htm">Extension element</a>:</p>
<blockquote><p>&lt;ProgId Id=&#8221;MyGameProgId&#8221;&gt;<br />
&lt;Extension Id=&#8221;MyGameSave&#8221; gaming:IsRichSavedGame=&#8221;yes&#8221; /&gt;<br />
&lt;/ProgId&gt;</p></blockquote>
<h2>Sponsored by ACES</h2>
<p>The gaming extension is part of the work I&#8217;m undertaking to convert ACES Studio&#8217;s products from our old script-based installer to a declarative installer built with WiX. Studio management was pleased to contribute the work to the wider WiX community.</p>
<p>If you happen to publish a cool game that uses WixGamingExtension, feel free to <a href="http://support.microsoft.com/contactus/">send a copy</a> my way. <img src='http://www.joyofsetup.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':-D' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.joyofsetup.com/2008/04/22/new-wix-feature-gaming-extension/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>New WiX feature: Internet shortcuts</title>
		<link>http://www.joyofsetup.com/2008/03/18/new-wix-feature-internet-shortcuts/</link>
		<comments>http://www.joyofsetup.com/2008/03/18/new-wix-feature-internet-shortcuts/#comments</comments>
		<pubDate>Wed, 19 Mar 2008 05:05:59 +0000</pubDate>
		<dc:creator>Bob Arnson</dc:creator>
				<category><![CDATA[Flight Simulator]]></category>
		<category><![CDATA[WiX]]></category>
		<category><![CDATA[new feature]]></category>
		<category><![CDATA[WiX extensions]]></category>

		<guid isPermaLink="false">http://www.joyofsetup.com/2008/03/18/new-wix-feature-internet-shortcuts/</guid>
		<description><![CDATA[A common request on wix-users is how to create shortcuts to a Web site. MSI&#8217;s Shortcut table and CreateShortcuts action don&#8217;t support targets that point to URLs like http://www.joyofsetup.com/. A shortcut&#8217;s target can point only to a feature (for advertised shortcuts) or a file or directory (for unadvertised shortcuts). You can fake a shortcut to [...]]]></description>
			<content:encoded><![CDATA[<p>A common request on <em><a href="https://lists.sourceforge.net/lists/listinfo/wix-users">wix-users</a></em> is how to create shortcuts to a Web site. MSI&#8217;s <a href="https://lists.sourceforge.net/lists/listinfo/wix-users">Shortcut table</a> and <a href="http://msdn2.microsoft.com/en-us/library/aa368054(VS.85).aspx">CreateShortcuts action</a> don&#8217;t support targets that point to URLs like <a title="http://www.joyofsetup.com/" href="http://www.joyofsetup.com/">http://www.joyofsetup.com/</a>. A shortcut&#8217;s target can point only to a feature (for advertised shortcuts) or a file or directory (for unadvertised shortcuts).</p>
<p>You can fake a shortcut to a URL by using the <a href="http://msdn2.microsoft.com/en-us/library/aa369282(VS.85).aspx">IniFile table</a> to create a .url file. It&#8217;s a bit of a hack, given that the format of .url files isn&#8217;t explicitly documented and is therefore subject to change. (Granted, it&#8217;s not likely to change, because that would break a lot of existing applications.)</p>
<p>I needed URL shortcuts for <a href="http://www.tsinsider.com/en-US/Pages/default.aspx">Train Simulator</a> so I wrote a custom action to create them. I then added authoring support to the WixUtilExtension compiler extension. With reviews from <a href="http://blogs.msdn.com/heaths/default.aspx">Heath</a> and <a href="http://blogs.msdn.com/pmarcu/">Peter</a>, I checked in the work today. You&#8217;ll see it in the next <a href="http://wix.sourceforge.net/releases/">weekly build of WiX v3</a>.</p>
<p>The authoring is similar to, but simpler than, a standard shortcut. Here&#8217;s the attribute schema reference from WiX.chm:</p>
<table border="1" cellspacing="0" cellpadding="4" width="477">
<tbody>
<tr>
<td width="81" valign="top"><strong>Name</strong></td>
<td width="54" valign="top"><strong>Type</strong></td>
<td width="260" valign="top"><strong>Description</strong></td>
<td width="80" valign="top"><strong>Required</strong></td>
</tr>
<tr>
<td width="85" valign="top">Id</td>
<td width="59" valign="top">String</td>
<td width="250" valign="top">Unique identifier in your installation package for this Internet shortcut.</td>
<td width="85" valign="top">Yes</td>
</tr>
<tr>
<td width="87" valign="top">Directory</td>
<td width="62" valign="top">String</td>
<td width="244" valign="top">Identifier of the directory where the shortcut should be created.</td>
<td width="89" valign="top">Yes</td>
</tr>
<tr>
<td width="88" valign="top">Name</td>
<td width="64" valign="top">String</td>
<td width="241" valign="top">The name of the shortcut file, which is visible to the user. (The .lnk extension is added automatically and by default, is not shown to the user.)</td>
<td width="91" valign="top">Yes</td>
</tr>
<tr>
<td width="88" valign="top">Target</td>
<td width="65" valign="top">String</td>
<td width="239" valign="top">URL that should be opened when the user selects the shortcut. Windows opens the URL in the appropriate handler for the protocol specified in the URL. Note that this is a formatted field, so you can use [#fileId] syntax to refer to a file being installed (using the file: protocol).</td>
<td width="95" valign="top">Yes</td>
</tr>
</tbody>
</table>
<p>Here&#8217;s what a simple <strong>http</strong> shortcut looks like:</p>
<blockquote><p>&lt;util:InternetShortcut<br />
Id=&#8221;Home&#8221;<br />
Directory=&#8221;DesktopFolder&#8221;<br />
Name=&#8221;Joy of Setup&#8221;<br />
Target=&#8221;http://joyofsetup.com&#8221; /&gt;</p></blockquote>
<p>You can also create shortcuts to resources using non-http protocols:</p>
<blockquote><p>&lt;util:InternetShortcut<br />
Id=&#8221;ARP&#8221;<br />
Directory=&#8221;ProgramMenuFolder&#8221;<br />
Name=&#8221;ARP&#8221;<br />
Target=&#8221;file://[%WINDIR]\Help\addremov.chm&#8221; /&gt;</p></blockquote>
<p>Internet shortcuts are needed, among other reasons, for Vista&#8217;s Game Explorer. More on that in a future entry.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joyofsetup.com/2008/03/18/new-wix-feature-internet-shortcuts/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Flight Simulator X Service Pack 2 available&#8211;and how to work around common problems</title>
		<link>http://www.joyofsetup.com/2007/12/16/flight-simulator-x-service-pack-2-available-and-how-to-work-around-common-problems/</link>
		<comments>http://www.joyofsetup.com/2007/12/16/flight-simulator-x-service-pack-2-available-and-how-to-work-around-common-problems/#comments</comments>
		<pubDate>Sun, 16 Dec 2007 21:17:25 +0000</pubDate>
		<dc:creator>Bob Arnson</dc:creator>
				<category><![CDATA[Flight Simulator]]></category>

		<guid isPermaLink="false">http://www.joyofsetup.com/2007/12/16/flight-simulator-x-service-pack-2-available-and-how-to-work-around-common-problems/</guid>
		<description><![CDATA[We shipped Service Pack 2 for Flight Simulator X on Friday. (Get the downloads from fsinsider.com; see Phil Taylor&#8217;s blog entries for more details.) Service Pack 2 contains the same set of fixes as in Acceleration, without Acceleration&#8216;s new aircraft or missions. We&#8217;re seeing a common problem come up: A message from the installer: &#8220;Microsoft [...]]]></description>
			<content:encoded><![CDATA[<p>We shipped Service Pack 2 for Flight Simulator X on Friday. (<a href="http://www.fsinsider.com/downloads/Pages/FlightSimulatorXServicePack2.aspx">Get the downloads from fsinsider.com</a>; <a href="http://blogs.msdn.com/ptaylor/archive/2007/12/14/fsx-sp2-is-available-for-download.aspx">see Phil Taylor&#8217;s blog entries for more details</a>.) Service Pack 2 contains the same set of fixes as in <em>Acceleration</em>, without <em>Acceleration</em>&#8216;s new aircraft or missions.</p>
<p>We&#8217;re seeing a common problem come up: A message from the installer: &#8220;Microsoft Flight Simulator X Service Pack 2 requires the English version of Flight Simulator X.&#8221;</p>
<p>So far, the immediate cause is the same: missing data in the registry. During testing, the root cause was also the same: Copying the installed files from another partition or machine rather than using the installer. That&#8217;s not officially supported, of course, but given the size of Flight Simulator, it&#8217;s fairly common to want to move the installed files (to a bigger partition, for example) without reinstalling.</p>
<p>Service Pack 2 requires the registry data that the original RTM and SP1 installers write. (It uses the data in the registry to find the installation directory and the language.dll file. It checks the version information in language.dll to make sure it has the same language as the SP2 installer; otherwise, you&#8217;d end up with a broken mix of localized content.)</p>
<p>Unfortunately, the original RTM installer doesn&#8217;t rewrite those registry values when you do a repair, so what works is to uninstall and reinstall RTM, then SP1, then SP2.</p>
<p>That said, here&#8217;s a shortcut. Note that it involves editing the registry, which can be hazardous to your computer&#8217;s health. If you don&#8217;t feel comfortable doing this, uninstall and reinstall is a safe choice.</p>
<ol>
<li>Start RegEdit.</li>
<li>On 32-bit operating systems, open the <strong>HKEY_LOCAL_MACHINE\ SOFTWARE\ Microsoft\ microsoft games\ flight simulator\ 10.0</strong> key in the left pane.<br />
On 64-bit operating systems, open the <strong>HKEY_LOCAL_MACHINE\ SOFTWARE\ Wow6432Node\ Microsoft\ Microsoft Games\ Flight Simulator\ 10.0</strong> key in the left pane.</li>
<li>Choose Edit|New|String Value.</li>
<li>Replace New Value #1 by typing SetupPath.</li>
<li>Double-click SetupPath and in the Value data box, type the full directory path where you installed or copied Flight Simulator X.</li>
</ol>
<p>The SP2 installer should then be able to find language.dll and verify that it&#8217;s the right language for the version of SP2 you&#8217;re trying to install.</p>
<p>That&#8217;s the only common problem we&#8217;ve seen &#8212; as of today, anyway. I&#8217;ll update this blog entry with additional items if/when they come up.</p>
<p>Update #1, 17-Dec-07: Added registry key for x64 OSes.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joyofsetup.com/2007/12/16/flight-simulator-x-service-pack-2-available-and-how-to-work-around-common-problems/feed/</wfw:commentRss>
		<slash:comments>56</slash:comments>
		</item>
		<item>
		<title>Flight Simulator X: Acceleration releases to manufacturing</title>
		<link>http://www.joyofsetup.com/2007/10/03/flight-simulator-x-acceleration-releases-to-manufacturing/</link>
		<comments>http://www.joyofsetup.com/2007/10/03/flight-simulator-x-acceleration-releases-to-manufacturing/#comments</comments>
		<pubDate>Thu, 04 Oct 2007 04:20:25 +0000</pubDate>
		<dc:creator>Bob Arnson</dc:creator>
				<category><![CDATA[Flight Simulator]]></category>
		<category><![CDATA[WiX]]></category>

		<guid isPermaLink="false">http://www.joyofsetup.com/2007/10/03/flight-simulator-x-acceleration-releases-to-manufacturing/</guid>
		<description><![CDATA[My second project at ACES Studio, the Flight Simulator X: Acceleration expansion pack, has gone gold. Well, 12.5 percent of it has: We sent the English release to manufacturing but we have seven more languages we&#8217;re shipping over the next couple of weeks. So while the extra-long days are a bit more normal now, the [...]]]></description>
			<content:encoded><![CDATA[<p>My second project at ACES Studio, the <a href="http://www.fsinsider.com/news/Pages/AccelerationGoesGold.aspx">Flight Simulator X: Acceleration expansion pack, has gone gold</a>. Well, 12.5 percent of it has: We sent the English release to manufacturing but we have seven more languages we&#8217;re shipping over the next couple of weeks. So while the extra-long days are a bit more normal now, the weekends are still fairly busy, coordinating builds and releases with our international folks in Dublin and Tokyo.</p>
<p>Acceleration was a &#8220;small&#8221; release, but only by the standards of a 14GB, two-DVD Flight Simulator X. Here are some mildly interesting statistics:</p>
<table border="1" cellspacing="0" cellpadding="2" width="400">
<tbody>
<tr>
<td width="259" valign="top">Number of DVDs</td>
<td width="139" valign="top">1</td>
</tr>
<tr>
<td width="259" valign="top">Number of files</td>
<td width="139" valign="top">7121</td>
</tr>
<tr>
<td width="259" valign="top">Compressed byte count</td>
<td width="139" valign="top">2,567,158,638</td>
</tr>
<tr>
<td width="259" valign="top">Uncompressed byte count</td>
<td width="139" valign="top">4,014,683,859</td>
</tr>
<tr>
<td width="259" valign="top">WiX version used to build installer</td>
<td width="139" valign="top">3.0.3304.0</td>
</tr>
<tr>
<td width="259" valign="top">Visual C++ version used to build setup UI and custom actions</td>
<td width="139" valign="top">8.0</td>
</tr>
<tr>
<td width="259" valign="top">Number of new custom actions</td>
<td width="139" valign="top">5 (plus rollback and scheduling CAs)</td>
</tr>
<tr>
<td width="259" valign="top">Number of new custom tables for data-driven deferred custom actions</td>
<td width="139" valign="top">2</td>
</tr>
<tr>
<td width="259" valign="top">Number of WiX custom actions consumed</td>
<td width="139" valign="top">2</td>
</tr>
<tr>
<td width="259" valign="top">Percentage of WiX custom action enhanced for Acceleration where enhancements were contributed back to WiX</td>
<td width="139" valign="top">100</td>
</tr>
</tbody>
</table>
<p>Seven more languages to go!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joyofsetup.com/2007/10/03/flight-simulator-x-acceleration-releases-to-manufacturing/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Flight Simulator X: Acceleration trailer</title>
		<link>http://www.joyofsetup.com/2007/07/27/flight-simulator-x-acceleration-trailer/</link>
		<comments>http://www.joyofsetup.com/2007/07/27/flight-simulator-x-acceleration-trailer/#comments</comments>
		<pubDate>Fri, 27 Jul 2007 22:36:32 +0000</pubDate>
		<dc:creator>Bob Arnson</dc:creator>
				<category><![CDATA[Flight Simulator]]></category>

		<guid isPermaLink="false">http://www.joyofsetup.com/2007/07/27/flight-simulator-x-acceleration-trailer/</guid>
		<description><![CDATA[It&#8217;s been only a couple of months since we shipped FSX SP1, but the project that&#8217;s been occupying my mornings, afternoons, most evenings, and many weekends is getting closer and closer to shipping. One piece of evidence is the recently-released trailer. It looks amazing! Sadly, nobody much liked the idea of showing setup in the [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s been only a couple of months since we shipped <a href="http://www.joyofsetup.com/2007/05/15/flight-simulator-x-service-pack-1-ships/">FSX SP1</a>, but the project that&#8217;s been occupying my mornings, afternoons, most evenings, and many weekends is getting closer and closer to shipping. One piece of evidence is the <a href="http://dev.fsinsider.com/news/Pages/AccelerationTrailer.aspx">recently-released trailer</a>. It looks amazing!</p>
<p>Sadly, nobody much liked the idea of showing setup in the trailer.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joyofsetup.com/2007/07/27/flight-simulator-x-acceleration-trailer/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Flight Simulator X Service Pack 1 ships</title>
		<link>http://www.joyofsetup.com/2007/05/15/flight-simulator-x-service-pack-1-ships/</link>
		<comments>http://www.joyofsetup.com/2007/05/15/flight-simulator-x-service-pack-1-ships/#comments</comments>
		<pubDate>Wed, 16 May 2007 06:04:58 +0000</pubDate>
		<dc:creator>Bob Arnson</dc:creator>
				<category><![CDATA[Flight Simulator]]></category>

		<guid isPermaLink="false">http://www.joyofsetup.com/2007/05/15/flight-simulator-x-service-pack-1-ships/</guid>
		<description><![CDATA[The project that has kept me busy since moving to the ACES Studio at the beginning of the year is finally out the door! Flight Simulator X Service Pack 1 is now available from fsinsider.com. Also available is Flight Simulator X Software Development Kit SP1A. I&#8217;ll be discussing both projects in more detail in future [...]]]></description>
			<content:encoded><![CDATA[<p>The project that has kept me busy since moving to the ACES Studio at the beginning of the year is finally out the door! <a href="http://www.fsinsider.com/downloads/Pages/FlightSimulatorXServicePack1.aspx">Flight Simulator X Service Pack 1 is now available from fsinsider.com.</a> Also available is <a href="http://www.fsinsider.com/downloads/Pages/FSXSoftwareDevelopmentKitUpdate.aspx">Flight Simulator X Software Development Kit SP1A</a>.</p>
<p>I&#8217;ll be discussing both projects in more detail in future posts, but for now, here&#8217;s a quick summary:</p>
<ul>
<li>FSX SP1 is delivered in multiple per-language self-extractors, each of which contains two patches, one for each of the two editions Flight Simulator X is available in (Standard and Deluxe). Of the approximately 42,000 files(!) in RTM, only a couple of hundred were patched or added in SP1.Because of how the FSX RTM setup was built, it wasn&#8217;t feasible to ship one patch for all the editions and languages. I built the patch-creation packages (.pcp files) in WiX v3 and built the patches using MsiMsp and PatchWiz 3.1. However, it wasn&#8217;t otherwise a &#8220;typical&#8221; patch build; the RTM setup auto-generated most of its 42,000 files so file IDs and component GUIDs and IDs weren&#8217;t stable. That&#8217;s why I needed to build 13 distinct patches (two each for English, French, German, Italian, Polish, and Spanish and one for Japanese). It also meant that I couldn&#8217;t follow the typical approach of rebuilding the upgrade MSI packages &#8212; the GUIDs and IDs kept changing. The story of building custom upgrade packages deserves its own series of posts.</li>
<li>FSX SDK SP1A is delivered in one self-extractor. It&#8217;s available only in English and only for users of the Deluxe editions, so we needed to deliver only one package. Unlike the game itself, the SDK update is delivered as a new product, not a patch. I investigated delivering a patch for the SDK too, but ran into the same issues with changing IDs as with the game. Another complication was the release of SDK SP1 (without the &#8220;A&#8221; suffix); it also shipped as a product but with custom code that manually updated and deleted files in the RTM SDK. Both issues combined, a patch wasn&#8217;t something I could pull off in a reasonable timeframe. So I created a new SDK product using WiX v3. The self-extractor is the WiX v3 setup.exe chainer. By dropping the auto-generation, I had more work to keep the setup current but we&#8217;ll be in a great position for future patches.</li>
</ul>
<p>The entire ACES Studio can be justifiably proud of the tremendous effort that went into FSX SP1 and SDK SP1A. Naturally, I just wrote above about the work that went into patching and setup, because that&#8217;s what I worked on. But a huge amount of work went into performance enhancements and content improvements. I hope every FSX user enjoys it!</p>
<p>Now on to the <a href="http://www.fsinsider.com/news/Pages/AnnouncingFSXExpansion.aspx">expansion pack and DirectX 10 update</a>&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joyofsetup.com/2007/05/15/flight-simulator-x-service-pack-1-ships/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
	</channel>
</rss>
