<?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=PathLib</id>
	<title>PathLib - 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=PathLib"/>
	<link rel="alternate" type="text/html" href="https://nsis.sourceforge.io/mediawiki/index.php?title=PathLib&amp;action=history"/>
	<updated>2026-04-27T10:37:37Z</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=PathLib&amp;diff=25999&amp;oldid=prev</id>
		<title>Jan at 20:07, 2 March 2026</title>
		<link rel="alternate" type="text/html" href="https://nsis.sourceforge.io/mediawiki/index.php?title=PathLib&amp;diff=25999&amp;oldid=prev"/>
		<updated>2026-03-02T20:07:18Z</updated>

		<summary type="html">&lt;p&gt;&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 20:07, 2 March 2026&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-l8&quot;&gt;Line 8:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 8:&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;== Logical Operators ==&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;== Logical Operators ==&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;LogicLib operators for use with &amp;lt;code&amp;gt;${If}&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;${IfNot}&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;${ElseIf}&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;${AndIf}&amp;lt;code&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;/&lt;/del&gt;&amp;gt;, &amp;lt;code&amp;gt;${OrIf}&amp;lt;/code&amp;gt;, etc.&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;LogicLib operators for use with &amp;lt;code&amp;gt;${If}&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;${IfNot}&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;${ElseIf}&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;${AndIf}&amp;lt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;/&lt;/ins&gt;code&amp;gt;, &amp;lt;code&amp;gt;${OrIf}&amp;lt;/code&amp;gt;, etc.&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;     ${If} ${Path.IsAbsolute} &amp;quot;C:\Windows\System32&amp;quot;&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;     ${If} ${Path.IsAbsolute} &amp;quot;C:\Windows\System32&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key n22049_wiki-wiki_:diff::1.12:old-25998:rev-25999 --&gt;
&lt;/table&gt;</summary>
		<author><name>Jan</name></author>
	</entry>
	<entry>
		<id>https://nsis.sourceforge.io/mediawiki/index.php?title=PathLib&amp;diff=25998&amp;oldid=prev</id>
		<title>Jan at 17:52, 2 March 2026</title>
		<link rel="alternate" type="text/html" href="https://nsis.sourceforge.io/mediawiki/index.php?title=PathLib&amp;diff=25998&amp;oldid=prev"/>
		<updated>2026-03-02T17:52:18Z</updated>

		<summary type="html">&lt;p&gt;&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 17:52, 2 March 2026&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-l46&quot;&gt;Line 46:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 46:&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;     ${EndIf}&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;     ${EndIf}&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;      &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;      &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;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;      &lt;/del&gt;${If} ${Path.IsReadable} &amp;quot;$WINDIR\notepad.exe&amp;quot;&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;${If} ${Path.IsReadable} &amp;quot;$WINDIR\notepad.exe&amp;quot;&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;       DetailPrint &amp;#039;&amp;quot;$$WINDIR\notepad.exe&amp;quot; is readable&amp;#039;&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;       DetailPrint &amp;#039;&amp;quot;$$WINDIR\notepad.exe&amp;quot; is readable&amp;#039;&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;     ${EndIf}&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;     ${EndIf}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key n22049_wiki-wiki_:diff::1.12:old-25997:rev-25998 --&gt;
&lt;/table&gt;</summary>
		<author><name>Jan</name></author>
	</entry>
	<entry>
		<id>https://nsis.sourceforge.io/mediawiki/index.php?title=PathLib&amp;diff=25997&amp;oldid=prev</id>
		<title>Jan at 17:48, 2 March 2026</title>
		<link rel="alternate" type="text/html" href="https://nsis.sourceforge.io/mediawiki/index.php?title=PathLib&amp;diff=25997&amp;oldid=prev"/>
		<updated>2026-03-02T17:48:49Z</updated>

		<summary type="html">&lt;p&gt;&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 17:48, 2 March 2026&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-l8&quot;&gt;Line 8:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 8:&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;== Logical Operators ==&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;== Logical Operators ==&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;LogicLib operators for use with &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;`&lt;/del&gt;${If}&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;`&lt;/del&gt;, &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;`&lt;/del&gt;${IfNot}&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;`&lt;/del&gt;, &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;`&lt;/del&gt;${ElseIf}&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;`&lt;/del&gt;, &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;`&lt;/del&gt;${AndIf}&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;`&lt;/del&gt;, &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;`&lt;/del&gt;${OrIf}&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;`&lt;/del&gt;, etc.&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;LogicLib operators for use with &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;code&amp;gt;&lt;/ins&gt;${If}&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/code&amp;gt;&lt;/ins&gt;, &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;code&amp;gt;&lt;/ins&gt;${IfNot}&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/code&amp;gt;&lt;/ins&gt;, &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;code&amp;gt;&lt;/ins&gt;${ElseIf}&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/code&amp;gt;&lt;/ins&gt;, &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;code&amp;gt;&lt;/ins&gt;${AndIf}&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;code/&amp;gt;&lt;/ins&gt;, &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;code&amp;gt;&lt;/ins&gt;${OrIf}&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/code&amp;gt;&lt;/ins&gt;, etc.&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;     ${If} ${Path.IsAbsolute} &amp;quot;C:\Windows\System32&amp;quot;&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;     ${If} ${Path.IsAbsolute} &amp;quot;C:\Windows\System32&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key n22049_wiki-wiki_:diff::1.12:old-25996:rev-25997 --&gt;
&lt;/table&gt;</summary>
		<author><name>Jan</name></author>
	</entry>
	<entry>
		<id>https://nsis.sourceforge.io/mediawiki/index.php?title=PathLib&amp;diff=25996&amp;oldid=prev</id>
		<title>Jan: Created page with &quot;== Description ==  A path library for providing LogicLib operators and transformation macros.  == Minimum Requirements ==  * NSIS 3.0 (Unicode)  == Logical Operators == LogicLib operators for use with `${If}`, `${IfNot}`, `${ElseIf}`, `${AndIf}`, `${OrIf}`, etc.      ${If} ${Path.IsAbsolute} &quot;C:\Windows\System32&quot;       DetailPrint &#039;&quot;C:\Windows\System32&quot; is an absolute path&#039;     ${EndIf}          ${If} ${Path.IsRelative} &quot;docs\readme.txt&quot;       DetailPrint &#039;&quot;docs\readme.t...&quot;</title>
		<link rel="alternate" type="text/html" href="https://nsis.sourceforge.io/mediawiki/index.php?title=PathLib&amp;diff=25996&amp;oldid=prev"/>
		<updated>2026-03-02T17:48:09Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;== Description ==  A path library for providing LogicLib operators and transformation macros.  == Minimum Requirements ==  * NSIS 3.0 (Unicode)  == Logical Operators == LogicLib operators for use with `${If}`, `${IfNot}`, `${ElseIf}`, `${AndIf}`, `${OrIf}`, etc.      ${If} ${Path.IsAbsolute} &amp;quot;C:\Windows\System32&amp;quot;       DetailPrint &amp;#039;&amp;quot;C:\Windows\System32&amp;quot; is an absolute path&amp;#039;     ${EndIf}          ${If} ${Path.IsRelative} &amp;quot;docs\readme.txt&amp;quot;       DetailPrint &amp;#039;&amp;quot;docs\readme.t...&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;
&lt;br /&gt;
A path library for providing LogicLib operators and transformation macros.&lt;br /&gt;
&lt;br /&gt;
== Minimum Requirements ==&lt;br /&gt;
&lt;br /&gt;
* NSIS 3.0 (Unicode)&lt;br /&gt;
&lt;br /&gt;
== Logical Operators ==&lt;br /&gt;
LogicLib operators for use with `${If}`, `${IfNot}`, `${ElseIf}`, `${AndIf}`, `${OrIf}`, etc.&lt;br /&gt;
&lt;br /&gt;
    ${If} ${Path.IsAbsolute} &amp;quot;C:\Windows\System32&amp;quot;&lt;br /&gt;
      DetailPrint &amp;#039;&amp;quot;C:\Windows\System32&amp;quot; is an absolute path&amp;#039;&lt;br /&gt;
    ${EndIf}&lt;br /&gt;
    &lt;br /&gt;
    ${If} ${Path.IsRelative} &amp;quot;docs\readme.txt&amp;quot;&lt;br /&gt;
      DetailPrint &amp;#039;&amp;quot;docs\readme.txt&amp;quot; is a relative path&amp;#039;&lt;br /&gt;
    ${EndIf}&lt;br /&gt;
    &lt;br /&gt;
    ${If} ${Path.IsUNC} &amp;quot;\\server\share\folder&amp;quot;&lt;br /&gt;
      DetailPrint &amp;#039;&amp;quot;\\server\share\folder&amp;quot; is a UNC path&amp;#039;&lt;br /&gt;
    ${EndIf}&lt;br /&gt;
    &lt;br /&gt;
    ${If} ${Path.IsValid} &amp;quot;C:\Program Files\My App\config.ini&amp;quot;&lt;br /&gt;
      DetailPrint &amp;#039;&amp;quot;C:\Program Files\My App\config.ini&amp;quot; is a valid path&amp;#039;&lt;br /&gt;
    ${EndIf}&lt;br /&gt;
    &lt;br /&gt;
    ${IfNot} ${Path.IsValid} &amp;quot;bad&amp;lt;path&amp;quot;&lt;br /&gt;
      DetailPrint &amp;#039;&amp;quot;bad&amp;lt;path&amp;quot; is not a valid path (contains &amp;lt;)&amp;#039;&lt;br /&gt;
    ${EndIf}&lt;br /&gt;
    &lt;br /&gt;
    ${If} ${Path.IsValidFileName} &amp;quot;report.pdf&amp;quot;&lt;br /&gt;
      DetailPrint &amp;#039;&amp;quot;report.pdf&amp;quot; is a valid filename&amp;#039;&lt;br /&gt;
    ${EndIf}&lt;br /&gt;
    &lt;br /&gt;
    ${IfNot} ${Path.IsValidFileName} &amp;quot;folder\file.txt&amp;quot;&lt;br /&gt;
      DetailPrint &amp;#039;&amp;quot;folder\file.txt&amp;quot; is not a valid filename (contains backslash)&amp;#039;&lt;br /&gt;
    ${EndIf}&lt;br /&gt;
    &lt;br /&gt;
    ${If} ${Path.IsFile} &amp;quot;$WINDIR\notepad.exe&amp;quot;&lt;br /&gt;
      DetailPrint &amp;#039;&amp;quot;$$WINDIR\notepad.exe&amp;quot; is a file&amp;#039;&lt;br /&gt;
    ${EndIf}&lt;br /&gt;
    &lt;br /&gt;
    ${If} ${Path.IsDirectory} &amp;quot;$WINDIR&amp;quot;&lt;br /&gt;
      DetailPrint &amp;#039;&amp;quot;$$WINDIR&amp;quot; is a directory&amp;#039;&lt;br /&gt;
    ${EndIf}&lt;br /&gt;
    &lt;br /&gt;
      ${If} ${Path.IsReadable} &amp;quot;$WINDIR\notepad.exe&amp;quot;&lt;br /&gt;
      DetailPrint &amp;#039;&amp;quot;$$WINDIR\notepad.exe&amp;quot; is readable&amp;#039;&lt;br /&gt;
    ${EndIf}&lt;br /&gt;
    &lt;br /&gt;
    ${If} ${Path.IsWritable} &amp;quot;$WINDIR\notepad.exe&amp;quot;&lt;br /&gt;
      DetailPrint &amp;#039;&amp;quot;$$WINDIR\notepad.exe&amp;quot; is writable&amp;#039;&lt;br /&gt;
    ${EndIf}&lt;br /&gt;
    &lt;br /&gt;
    ${IfNot} ${Path.IsHidden} &amp;quot;$WINDIR&amp;quot;&lt;br /&gt;
      DetailPrint &amp;#039;&amp;quot;$$WINDIR&amp;quot; is not hidden&amp;#039;&lt;br /&gt;
    ${EndIf}&lt;br /&gt;
    &lt;br /&gt;
    ${IfNot} ${Path.IsSymLink} &amp;quot;$WINDIR&amp;quot;&lt;br /&gt;
      DetailPrint &amp;#039;&amp;quot;$$WINDIR&amp;quot; is not a symlink&amp;#039;&lt;br /&gt;
    ${EndIf}&lt;br /&gt;
&lt;br /&gt;
== Transformations ==&lt;br /&gt;
Path transformation macros&lt;br /&gt;
&lt;br /&gt;
    ${Path.Normalize} &amp;quot;C:\foo\bar\..\baz&amp;quot; $R0&lt;br /&gt;
    =&amp;gt; Output: C:\foo\baz&lt;br /&gt;
    &lt;br /&gt;
    ${Path.Join} &amp;quot;C:\Users\Justin&amp;quot; &amp;quot;Documents\file.txt&amp;quot; $R0&lt;br /&gt;
    =&amp;gt; Output: C:\Users\Jan\Documents\file.txt&lt;br /&gt;
    &lt;br /&gt;
    ${Path.Resolve} &amp;quot;relative\file.txt&amp;quot; $R0&lt;br /&gt;
    =&amp;gt; Output: &amp;lt;current working directory&amp;gt;\relative\file.txt&lt;br /&gt;
    &lt;br /&gt;
    ${Path.Dirname} &amp;quot;C:\Users\Justin\report.pdf&amp;quot; $R0&lt;br /&gt;
    =&amp;gt; Output: C:\Users\Justin&lt;br /&gt;
    &lt;br /&gt;
    ${Path.Extname} &amp;quot;C:\Users\Justin\report.pdf&amp;quot; $R0&lt;br /&gt;
    =&amp;gt; Output: .pdf&lt;br /&gt;
    &lt;br /&gt;
    ${Path.Basename} &amp;quot;C:\Users\Justin\report.pdf&amp;quot; &amp;quot;&amp;quot; $R0&lt;br /&gt;
    =&amp;gt; Output: report.pdf&lt;br /&gt;
    &lt;br /&gt;
    ${Path.Basename} &amp;quot;C:\Users\Justin\report.pdf&amp;quot; &amp;quot;.pdf&amp;quot; $R0&lt;br /&gt;
    =&amp;gt; Output: report&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
* [https://github.com/idleberg/nsis-pathlib GitHub]&lt;br /&gt;
&lt;br /&gt;
[[Category:Plugins]]&lt;/div&gt;</summary>
		<author><name>Jan</name></author>
	</entry>
</feed>