<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://nsis.sourceforge.io/mediawiki/index.php?action=history&amp;feed=atom&amp;title=Project_Procyon</id>
	<title>Project Procyon - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://nsis.sourceforge.io/mediawiki/index.php?action=history&amp;feed=atom&amp;title=Project_Procyon"/>
	<link rel="alternate" type="text/html" href="https://nsis.sourceforge.io/mediawiki/index.php?title=Project_Procyon&amp;action=history"/>
	<updated>2026-08-18T02:05:04Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.17</generator>
	<entry>
		<id>https://nsis.sourceforge.io/mediawiki/index.php?title=Project_Procyon&amp;diff=21944&amp;oldid=prev</id>
		<title>Dsuess: line formatting</title>
		<link rel="alternate" type="text/html" href="https://nsis.sourceforge.io/mediawiki/index.php?title=Project_Procyon&amp;diff=21944&amp;oldid=prev"/>
		<updated>2012-05-08T23:32:35Z</updated>

		<summary type="html">&lt;p&gt;line formatting&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;â† Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 23:32, 8 May 2012&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l31&quot;&gt;Line 31:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 31:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Section &amp;quot;MainSection&amp;quot; SEC01&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Section &amp;quot;MainSection&amp;quot; SEC01&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;IfFileExists &amp;quot;$AppData\Procyon\*.*&amp;quot; +2  ; Procyon goes into AppData for ease&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;        &lt;/ins&gt;IfFileExists &amp;quot;$AppData\Procyon\*.*&amp;quot; +2  ; Procyon goes into AppData for ease&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;CreateDirectory &amp;quot;$AppData\Procyon&amp;quot;      ; of launching and updating.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;        &lt;/ins&gt;CreateDirectory &amp;quot;$AppData\Procyon&amp;quot;      ; of launching and updating.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;        &lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;; Future revisions may include launcher auto-update. Code is written, but no&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;        &lt;/ins&gt;; Future revisions may include launcher auto-update. Code is written, but no&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;; launcher update files are on the Procyon server yet.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;        &lt;/ins&gt;; launcher update files are on the Procyon server yet.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;        &lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;; You can always add &amp;quot;Call DetectLauncherUpdate&amp;quot; here, but the code in that&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;        &lt;/ins&gt;; You can always add &amp;quot;Call DetectLauncherUpdate&amp;quot; here, but the code in that&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;; function and related functions are not tested.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;        &lt;/ins&gt;; function and related functions are not tested.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;        &lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Call DetectProcyonUpdate  ; All the code for the launcher is function-based.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;        &lt;/ins&gt;Call DetectProcyonUpdate  ; All the code for the launcher is function-based.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;SectionEnd&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;SectionEnd&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Dsuess</name></author>
	</entry>
	<entry>
		<id>https://nsis.sourceforge.io/mediawiki/index.php?title=Project_Procyon&amp;diff=19214&amp;oldid=prev</id>
		<title>Kazinsal: added to Category:Real_World_Installers</title>
		<link rel="alternate" type="text/html" href="https://nsis.sourceforge.io/mediawiki/index.php?title=Project_Procyon&amp;diff=19214&amp;oldid=prev"/>
		<updated>2010-12-23T22:22:42Z</updated>

		<summary type="html">&lt;p&gt;added to Category:Real_World_Installers&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;â† Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 22:22, 23 December 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l137&quot;&gt;Line 137:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 137:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/highlight-nsis&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/highlight-nsis&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{PageAuthor|Kazinsal}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{PageAuthor|Kazinsal}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[Category:Real_World_Installers]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key n22049_wiki-wiki_:diff::1.12:old-19213:rev-19214 --&gt;
&lt;/table&gt;</summary>
		<author><name>Kazinsal</name></author>
	</entry>
	<entry>
		<id>https://nsis.sourceforge.io/mediawiki/index.php?title=Project_Procyon&amp;diff=19213&amp;oldid=prev</id>
		<title>Kazinsal: Created page with &quot;== Description == The auto-updater used in [http://procyon.surrealearth.info/ Project Procyon].  This work is licensed under a [http://creativecommons.org/licenses/by-nc/3.0/ Cre...&quot;</title>
		<link rel="alternate" type="text/html" href="https://nsis.sourceforge.io/mediawiki/index.php?title=Project_Procyon&amp;diff=19213&amp;oldid=prev"/>
		<updated>2010-12-23T22:17:13Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;== Description == The auto-updater used in [http://procyon.surrealearth.info/ Project Procyon].  This work is licensed under a [http://creativecommons.org/licenses/by-nc/3.0/ Cre...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Description ==&lt;br /&gt;
The auto-updater used in [http://procyon.surrealearth.info/ Project Procyon].&lt;br /&gt;
&lt;br /&gt;
This work is licensed under a [http://creativecommons.org/licenses/by-nc/3.0/ Creative Commons Attribution-NonCommercial 3.0 Unported License].&lt;br /&gt;
&lt;br /&gt;
== The Script ==&lt;br /&gt;
&amp;lt;highlight-nsis&amp;gt;&lt;br /&gt;
; NSIS script for Project Procyon Alpha Launcher&lt;br /&gt;
; Written in 2010 by Troy Martin for Project Procyon.&lt;br /&gt;
; Project Procyon site: http://procyon.surrealearth.info/&lt;br /&gt;
; Licensed under a Creative Commons Attribution-NonCommercial 3.0 License.&lt;br /&gt;
; See http://creativecommons.org/licenses/by-nc/3.0/ for license details.&lt;br /&gt;
&lt;br /&gt;
; String defines&lt;br /&gt;
!define PRODUCT_NAME &amp;quot;Project Procyon&amp;quot;&lt;br /&gt;
!define PRODUCT_VERSION &amp;quot;Alpha&amp;quot;&lt;br /&gt;
!define PRODUCT_PUBLISHER &amp;quot;Surreal Earth Studios&amp;quot;&lt;br /&gt;
!define PRODUCT_WEB_SITE &amp;quot;http://procyon.surrealearth.info/&amp;quot;&lt;br /&gt;
&lt;br /&gt;
RequestExecutionLevel user  ; It works better without wanting admin privs.&lt;br /&gt;
Icon &amp;quot;procyon.ico&amp;quot;&lt;br /&gt;
BrandingText &amp;quot; &amp;quot;            ; Remove the NSIS branding text&lt;br /&gt;
&lt;br /&gt;
!include &amp;quot;UAC.nsh&amp;quot;  ; I don&amp;#039;t know why this is included.&lt;br /&gt;
&lt;br /&gt;
Name &amp;quot;${PRODUCT_NAME} ${PRODUCT_VERSION}&amp;quot;&lt;br /&gt;
OutFile &amp;quot;procyon.exe&amp;quot;&lt;br /&gt;
InstallDir &amp;quot;$PROGRAMFILES\Project Procyon&amp;quot;&lt;br /&gt;
ShowInstDetails show&lt;br /&gt;
&lt;br /&gt;
Section &amp;quot;MainSection&amp;quot; SEC01&lt;br /&gt;
&lt;br /&gt;
IfFileExists &amp;quot;$AppData\Procyon\*.*&amp;quot; +2  ; Procyon goes into AppData for ease&lt;br /&gt;
CreateDirectory &amp;quot;$AppData\Procyon&amp;quot;      ; of launching and updating.&lt;br /&gt;
&lt;br /&gt;
; Future revisions may include launcher auto-update. Code is written, but no&lt;br /&gt;
; launcher update files are on the Procyon server yet.&lt;br /&gt;
&lt;br /&gt;
; You can always add &amp;quot;Call DetectLauncherUpdate&amp;quot; here, but the code in that&lt;br /&gt;
; function and related functions are not tested.&lt;br /&gt;
&lt;br /&gt;
Call DetectProcyonUpdate  ; All the code for the launcher is function-based.&lt;br /&gt;
&lt;br /&gt;
SectionEnd&lt;br /&gt;
&lt;br /&gt;
Section -Post&lt;br /&gt;
SectionEnd&lt;br /&gt;
&lt;br /&gt;
Function RunProcyon&lt;br /&gt;
        IfFileExists &amp;quot;$AppData\Procyon\procyon.exe&amp;quot; +4&lt;br /&gt;
                Delete &amp;quot;$AppData\Procyon\version.txt&amp;quot;&lt;br /&gt;
                Call DetectProcyonUpdate&lt;br /&gt;
                Quit&lt;br /&gt;
        Exec &amp;#039;&amp;quot;$AppData\Procyon\procyon.exe&amp;quot;&amp;#039;&lt;br /&gt;
        Quit&lt;br /&gt;
FunctionEnd&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Function GetProcyon&lt;br /&gt;
        FileOpen $0 &amp;quot;$AppData\Procyon\version.txt&amp;quot; r&lt;br /&gt;
        FileRead $0 $3&lt;br /&gt;
        FileClose $0&lt;br /&gt;
        StrCpy $3 $3 -2&lt;br /&gt;
        StrCpy $2 &amp;quot;$AppData\Procyon\procyon.exe&amp;quot;&lt;br /&gt;
        Rename $2 &amp;quot;$AppData\Procyon\procyonold.exe&amp;quot;&lt;br /&gt;
        nsisdl::download /TIMEOUT=30000 &amp;quot;${PRODUCT_WEB_SITE}updater/procyon-$3.zip&amp;quot; &amp;quot;$AppData\Procyon\procyon.zip&amp;quot;&lt;br /&gt;
        Pop $R0 ;Get the return value&lt;br /&gt;
                StrCmp $R0 &amp;quot;success&amp;quot; +4&lt;br /&gt;
                MessageBox MB_OK &amp;quot;Download failed: $R0 - $3.zip&amp;quot;&lt;br /&gt;
                Rename &amp;quot;$AppData\Procyon\procyonold.exe&amp;quot; $2&lt;br /&gt;
                Quit&lt;br /&gt;
        nsisunz::UnzipToLog &amp;quot;$AppData\Procyon\procyon.zip&amp;quot; &amp;quot;$AppData\Procyon&amp;quot;&lt;br /&gt;
        Delete &amp;quot;$AppData\Procyon\procyon.zip&amp;quot;&lt;br /&gt;
        Call RunProcyon&lt;br /&gt;
FunctionEnd&lt;br /&gt;
&lt;br /&gt;
Function DetectProcyonUpdate&lt;br /&gt;
        StrCpy $2 &amp;quot;$TEMP\procyonupdate.txt&amp;quot;&lt;br /&gt;
&lt;br /&gt;
        nsisdl::download /TIMEOUT=30000 &amp;quot;${PRODUCT_WEB_SITE}updater/procyonupdate.txt&amp;quot; $2&lt;br /&gt;
        Pop $R0 ;Get the return value&lt;br /&gt;
                StrCmp $R0 &amp;quot;success&amp;quot; +3&lt;br /&gt;
                MessageBox MB_OK &amp;quot;Download failed: $R0&amp;quot;&lt;br /&gt;
                Call RunProcyon&lt;br /&gt;
        FileOpen $0 &amp;quot;$TEMP\procyonupdate.txt&amp;quot; r&lt;br /&gt;
        FileRead $0 $1&lt;br /&gt;
        FileClose $0&lt;br /&gt;
        IfFileExists &amp;quot;$AppData\Procyon\*.*&amp;quot; 0 +5&lt;br /&gt;
        FileOpen $0 &amp;quot;$AppData\Procyon\version.txt&amp;quot; r&lt;br /&gt;
        FileRead $0 $3&lt;br /&gt;
        FileClose $0&lt;br /&gt;
        StrCmp $1 $3 +5&lt;br /&gt;
        FileOpen $0 &amp;quot;$AppData\Procyon\version.txt&amp;quot; w&lt;br /&gt;
        FileWrite $0 $1&lt;br /&gt;
        FileClose $0&lt;br /&gt;
        Call GetProcyon&lt;br /&gt;
        Call RunProcyon&lt;br /&gt;
FunctionEnd&lt;br /&gt;
&lt;br /&gt;
Function RunLauncher    ; Never actually called&lt;br /&gt;
        Exec $EXEPATH&lt;br /&gt;
        Quit&lt;br /&gt;
FunctionEnd&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Function GetLauncher    ; Never actually called&lt;br /&gt;
        nsisdl::download /TIMEOUT=30000 &amp;quot;${PRODUCT_WEB_SITE}procyon.exe&amp;quot; $EXEPATH&lt;br /&gt;
        Pop $R0 ;Get the return value&lt;br /&gt;
                StrCmp $R0 &amp;quot;success&amp;quot; +4&lt;br /&gt;
                MessageBox MB_OK &amp;quot;Download failed: $R0 - $3.exe&amp;quot;&lt;br /&gt;
                Quit&lt;br /&gt;
        Call RunLauncher&lt;br /&gt;
FunctionEnd&lt;br /&gt;
&lt;br /&gt;
Function DetectLauncherUpdate   ; Never actually called&lt;br /&gt;
        StrCpy $2 &amp;quot;$TEMP\launcherupdate.txt&amp;quot;&lt;br /&gt;
&lt;br /&gt;
        nsisdl::download /TIMEOUT=30000 &amp;quot;${PRODUCT_WEB_SITE}updater/launcherupdate.txt&amp;quot; $2&lt;br /&gt;
        Pop $R0 ;Get the return value&lt;br /&gt;
                StrCmp $R0 &amp;quot;success&amp;quot; +3&lt;br /&gt;
                MessageBox MB_OK &amp;quot;Download failed: $R0&amp;quot;&lt;br /&gt;
                Return&lt;br /&gt;
        FileOpen $0 &amp;quot;$TEMP\launcherupdate.txt&amp;quot; r&lt;br /&gt;
        FileRead $0 $1&lt;br /&gt;
        FileClose $0&lt;br /&gt;
        IfFileExists &amp;quot;$AppData\Procyon\*.*&amp;quot; 0 +5&lt;br /&gt;
        FileOpen $0 &amp;quot;$AppData\Procyon\launcher.txt&amp;quot; r&lt;br /&gt;
        FileRead $0 $3&lt;br /&gt;
        FileClose $0&lt;br /&gt;
        StrCmp $1 $3 +5&lt;br /&gt;
        FileOpen $0 &amp;quot;$AppData\Procyon\launcher.txt&amp;quot; w&lt;br /&gt;
        FileWrite $0 $1&lt;br /&gt;
        FileClose $0&lt;br /&gt;
        Call GetLauncher&lt;br /&gt;
        Call RunLauncher&lt;br /&gt;
FunctionEnd&lt;br /&gt;
&amp;lt;/highlight-nsis&amp;gt;&lt;br /&gt;
{{PageAuthor|Kazinsal}}&lt;/div&gt;</summary>
		<author><name>Kazinsal</name></author>
	</entry>
</feed>