<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.cheatengine.org/index.php?action=history&amp;feed=atom&amp;title=Lua%3AClass%3AMemScan</id>
	<title>Lua:Class:MemScan - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.cheatengine.org/index.php?action=history&amp;feed=atom&amp;title=Lua%3AClass%3AMemScan"/>
	<link rel="alternate" type="text/html" href="https://wiki.cheatengine.org/index.php?title=Lua:Class:MemScan&amp;action=history"/>
	<updated>2026-07-26T11:54:51Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.32.0</generator>
	<entry>
		<id>https://wiki.cheatengine.org/index.php?title=Lua:Class:MemScan&amp;diff=8490&amp;oldid=prev</id>
		<title>Leunsel: /* Examples */ Syntax Highlight.</title>
		<link rel="alternate" type="text/html" href="https://wiki.cheatengine.org/index.php?title=Lua:Class:MemScan&amp;diff=8490&amp;oldid=prev"/>
		<updated>2026-06-26T23:59:12Z</updated>

		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Examples: &lt;/span&gt; Syntax Highlight.&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&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: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 23:59, 26 June 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-l569&quot; &gt;Line 569:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 569:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;===Examples===&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;===Examples===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; 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;&amp;lt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;pre&lt;/del&gt;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; 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;&amp;lt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;syntaxhighlight lang=&amp;quot;lua&amp;quot; line&lt;/ins&gt;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;local memscan = createMemScan()&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;local memscan = createMemScan()&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l592&quot; &gt;Line 592:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 592:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;print(&amp;quot;First scan done&amp;quot;)&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;print(&amp;quot;First scan done&amp;quot;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; 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;&amp;lt;/&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;pre&lt;/del&gt;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; 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;&amp;lt;/&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;syntaxhighlight&lt;/ins&gt;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; 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;&amp;lt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;pre&lt;/del&gt;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; 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;&amp;lt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;syntaxhighlight lang=&amp;quot;lua&amp;quot; line&lt;/ins&gt;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;local memscan = createMemScan()&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;local memscan = createMemScan()&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l631&quot; &gt;Line 631:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 631:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;print(&amp;quot;Next scan done&amp;quot;)&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;print(&amp;quot;Next scan done&amp;quot;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; 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;&amp;lt;/&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;pre&lt;/del&gt;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; 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;&amp;lt;/&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;syntaxhighlight&lt;/ins&gt;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; 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;&amp;lt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;pre&lt;/del&gt;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; 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;&amp;lt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;syntaxhighlight lang=&amp;quot;lua&amp;quot; line&lt;/ins&gt;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;local memscan = createMemScan()&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;local memscan = createMemScan()&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l664&quot; &gt;Line 664:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 664:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;   print(&amp;quot;No result found&amp;quot;)&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;   print(&amp;quot;No result found&amp;quot;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;end&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;end&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; 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;&amp;lt;/&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;pre&lt;/del&gt;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; 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;&amp;lt;/&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;syntaxhighlight&lt;/ins&gt;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; 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;&amp;lt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;pre&lt;/del&gt;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; 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;&amp;lt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;syntaxhighlight lang=&amp;quot;lua&amp;quot; line&lt;/ins&gt;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;local memscan = createMemScan()&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;local memscan = createMemScan()&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l677&quot; &gt;Line 677:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 677:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;   print(&amp;quot;Scan finished&amp;quot;)&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;   print(&amp;quot;Scan finished&amp;quot;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;end&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;end&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; 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;&amp;lt;/&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;pre&lt;/del&gt;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; 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;&amp;lt;/&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;syntaxhighlight&lt;/ins&gt;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; 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;&amp;lt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;pre&lt;/del&gt;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; 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;&amp;lt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;syntaxhighlight lang=&amp;quot;lua&amp;quot; line&lt;/ins&gt;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;local memscan = getCurrentMemscan()&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;local memscan = getCurrentMemscan()&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l689&quot; &gt;Line 689:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 689:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;   print(&amp;quot;Found: &amp;quot; .. tostring(progress.ResultsFound))&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;   print(&amp;quot;Found: &amp;quot; .. tostring(progress.ResultsFound))&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;end&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;end&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; 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;&amp;lt;/&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;pre&lt;/del&gt;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; 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;&amp;lt;/&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;syntaxhighlight&lt;/ins&gt;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;{{LuaSeeAlso}}&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;{{LuaSeeAlso}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Leunsel</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.cheatengine.org/index.php?title=Lua:Class:MemScan&amp;diff=8053&amp;oldid=prev</id>
		<title>Leunsel at 19:36, 23 June 2026</title>
		<link rel="alternate" type="text/html" href="https://wiki.cheatengine.org/index.php?title=Lua:Class:MemScan&amp;diff=8053&amp;oldid=prev"/>
		<updated>2026-06-23T19:36:35Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&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: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 19:36, 23 June 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-l1&quot; &gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;[[Category:Lua]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;[[Category:Lua]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; 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 class=&quot;diffchange diffchange-inline&quot;&gt;CodeBox&lt;/del&gt;|'''class''' MemScan ''':''' Object}}&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; 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 class=&quot;diffchange diffchange-inline&quot;&gt;Class&lt;/ins&gt;|'''class''' MemScan ''':''' Object}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;The MemScan class represents a memory scan object.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;The MemScan class represents a memory scan object.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Leunsel</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.cheatengine.org/index.php?title=Lua:Class:MemScan&amp;diff=8052&amp;oldid=prev</id>
		<title>Leunsel: Initial page creation.</title>
		<link rel="alternate" type="text/html" href="https://wiki.cheatengine.org/index.php?title=Lua:Class:MemScan&amp;diff=8052&amp;oldid=prev"/>
		<updated>2026-06-23T19:36:25Z</updated>

		<summary type="html">&lt;p&gt;Initial page creation.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[Category:Lua]]&lt;br /&gt;
{{CodeBox|'''class''' MemScan ''':''' Object}}&lt;br /&gt;
&lt;br /&gt;
The MemScan class represents a memory scan object.&lt;br /&gt;
&lt;br /&gt;
A MemScan inherits from Object. It can perform first scans, next scans, unknown initial value scans, value comparisons, and saved-result comparisons. It can also be used together with a FoundList object to access scan results.&lt;br /&gt;
&lt;br /&gt;
===Inheritance===&lt;br /&gt;
{|width=&amp;quot;85%&amp;quot; cellpadding=&amp;quot;10%&amp;quot; cellspacing=&amp;quot;0&amp;quot; border=&amp;quot;0&amp;quot;&lt;br /&gt;
!align=&amp;quot;left&amp;quot;|Class&lt;br /&gt;
!align=&amp;quot;left&amp;quot;|Inherits From&lt;br /&gt;
!style=&amp;quot;width: 80%;background-color:white;&amp;quot; align=&amp;quot;left&amp;quot;|Description&lt;br /&gt;
|-&lt;br /&gt;
|MemScan&lt;br /&gt;
|Object&lt;br /&gt;
|A memory scan object used to perform and manage memory scans.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Creation===&lt;br /&gt;
{{CodeBox|'''function''' getCurrentMemscan() ''':''' MemScan}}&lt;br /&gt;
{{CodeBox|'''function''' createMemScan(''progressbar'') ''':''' MemScan}}&lt;br /&gt;
&lt;br /&gt;
Returns or creates a MemScan object.&lt;br /&gt;
&lt;br /&gt;
getCurrentMemscan returns the current memory scan object. If tabs are used, it returns the MemScan object of the currently selected tab.&lt;br /&gt;
&lt;br /&gt;
createMemScan creates a new MemScan object. The optional progressbar parameter can be used to attach scan progress to a progress bar.&lt;br /&gt;
&lt;br /&gt;
===Function Parameters===&lt;br /&gt;
{|width=&amp;quot;85%&amp;quot; cellpadding=&amp;quot;10%&amp;quot; cellspacing=&amp;quot;0&amp;quot; border=&amp;quot;0&amp;quot;&lt;br /&gt;
!align=&amp;quot;left&amp;quot;|Function&lt;br /&gt;
!align=&amp;quot;left&amp;quot;|Parameter&lt;br /&gt;
!style=&amp;quot;width: 80%;background-color:white;&amp;quot; align=&amp;quot;left&amp;quot;|Description&lt;br /&gt;
|-&lt;br /&gt;
|getCurrentMemscan()&lt;br /&gt;
|None&lt;br /&gt;
|Returns the current MemScan object.&lt;br /&gt;
|-&lt;br /&gt;
|createMemScan(progressbar)&lt;br /&gt;
|progressbar (optional)&lt;br /&gt;
|Creates a new MemScan object and optionally attaches a progress bar.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
MemScan — A memory scan object.&lt;br /&gt;
&lt;br /&gt;
===Scan State Properties===&lt;br /&gt;
{|width=&amp;quot;85%&amp;quot; cellpadding=&amp;quot;10%&amp;quot; cellspacing=&amp;quot;0&amp;quot; border=&amp;quot;0&amp;quot;&lt;br /&gt;
!align=&amp;quot;left&amp;quot;|Property&lt;br /&gt;
!align=&amp;quot;left&amp;quot;|Type&lt;br /&gt;
!style=&amp;quot;width: 80%;background-color:white;&amp;quot; align=&amp;quot;left&amp;quot;|Description&lt;br /&gt;
|-&lt;br /&gt;
|LastScanWasRegionScan&lt;br /&gt;
|Boolean&lt;br /&gt;
|Returns true if the previous scan was an unknown initial value scan.&lt;br /&gt;
|-&lt;br /&gt;
|LastScanValue&lt;br /&gt;
|String&lt;br /&gt;
|The value used by the previous scan.&lt;br /&gt;
|-&lt;br /&gt;
|LastScanType&lt;br /&gt;
|ScanType or String&lt;br /&gt;
|The type of the previous scan, such as stNewScan or stNextScan.&lt;br /&gt;
|-&lt;br /&gt;
|ScanresultFolder&lt;br /&gt;
|String&lt;br /&gt;
|The path where the scan results are stored.&lt;br /&gt;
|-&lt;br /&gt;
|FoundList&lt;br /&gt;
|FoundList&lt;br /&gt;
|The FoundList currently attached to this MemScan object.&lt;br /&gt;
|-&lt;br /&gt;
|OnlyOneResult&lt;br /&gt;
|Boolean&lt;br /&gt;
|If true, the scan stops after finding the first result and writes the address to Result.&lt;br /&gt;
|-&lt;br /&gt;
|IsUnique&lt;br /&gt;
|Boolean&lt;br /&gt;
|Similar to OnlyOneResult, but uses multiple threads. If the value is not unique, a random matching address may be returned.&lt;br /&gt;
|-&lt;br /&gt;
|Result&lt;br /&gt;
|Integer&lt;br /&gt;
|If OnlyOneResult is used, this contains the found address after the scan has finished.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Event Properties===&lt;br /&gt;
{|width=&amp;quot;85%&amp;quot; cellpadding=&amp;quot;10%&amp;quot; cellspacing=&amp;quot;0&amp;quot; border=&amp;quot;0&amp;quot;&lt;br /&gt;
!align=&amp;quot;left&amp;quot;|Property&lt;br /&gt;
!align=&amp;quot;left&amp;quot;|Type&lt;br /&gt;
!style=&amp;quot;width: 80%;background-color:white;&amp;quot; align=&amp;quot;left&amp;quot;|Description&lt;br /&gt;
|-&lt;br /&gt;
|OnScanDone&lt;br /&gt;
|Function&lt;br /&gt;
|Function called when the scan has finished. Receives the MemScan object as parameter.&lt;br /&gt;
|-&lt;br /&gt;
|OnGuiUpdate&lt;br /&gt;
|Function&lt;br /&gt;
|Function called during the scan so the interface can be updated.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===OnGuiUpdate Parameters===&lt;br /&gt;
{|width=&amp;quot;85%&amp;quot; cellpadding=&amp;quot;10%&amp;quot; cellspacing=&amp;quot;0&amp;quot; border=&amp;quot;0&amp;quot;&lt;br /&gt;
!align=&amp;quot;left&amp;quot;|Parameter&lt;br /&gt;
!align=&amp;quot;left&amp;quot;|Type&lt;br /&gt;
!style=&amp;quot;width: 80%;background-color:white;&amp;quot; align=&amp;quot;left&amp;quot;|Description&lt;br /&gt;
|-&lt;br /&gt;
|memscan&lt;br /&gt;
|MemScan&lt;br /&gt;
|The MemScan object that is currently scanning.&lt;br /&gt;
|-&lt;br /&gt;
|TotalAddressesToScan&lt;br /&gt;
|Integer&lt;br /&gt;
|The total number of addresses that will be scanned.&lt;br /&gt;
|-&lt;br /&gt;
|CurrentlyScanned&lt;br /&gt;
|Integer&lt;br /&gt;
|The number of addresses already scanned.&lt;br /&gt;
|-&lt;br /&gt;
|ResultsFound&lt;br /&gt;
|Integer&lt;br /&gt;
|The number of results found so far.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Scan Configuration Properties===&lt;br /&gt;
{|width=&amp;quot;85%&amp;quot; cellpadding=&amp;quot;10%&amp;quot; cellspacing=&amp;quot;0&amp;quot; border=&amp;quot;0&amp;quot;&lt;br /&gt;
!align=&amp;quot;left&amp;quot;|Property&lt;br /&gt;
!align=&amp;quot;left&amp;quot;|Type&lt;br /&gt;
!style=&amp;quot;width: 80%;background-color:white;&amp;quot; align=&amp;quot;left&amp;quot;|Description&lt;br /&gt;
|-&lt;br /&gt;
|CodePage&lt;br /&gt;
|Boolean&lt;br /&gt;
|Controls code page handling for scans that use text input.&lt;br /&gt;
|-&lt;br /&gt;
|ScanOption&lt;br /&gt;
|TScanOption&lt;br /&gt;
|The scan option to use.&lt;br /&gt;
|-&lt;br /&gt;
|VariableType&lt;br /&gt;
|TVariableType&lt;br /&gt;
|The variable type to scan for.&lt;br /&gt;
|-&lt;br /&gt;
|VarType&lt;br /&gt;
|TVariableType&lt;br /&gt;
|Alias for VariableType.&lt;br /&gt;
|-&lt;br /&gt;
|Roundingtype&lt;br /&gt;
|TRoundingType&lt;br /&gt;
|The rounding mode used for floating-point scans.&lt;br /&gt;
|-&lt;br /&gt;
|Scanvalue&lt;br /&gt;
|String&lt;br /&gt;
|The primary value to scan for.&lt;br /&gt;
|-&lt;br /&gt;
|Scanvalue1&lt;br /&gt;
|String&lt;br /&gt;
|Alias for Scanvalue.&lt;br /&gt;
|-&lt;br /&gt;
|Scanvalue2&lt;br /&gt;
|String&lt;br /&gt;
|The secondary value to scan for, such as the upper value in a value-between scan.&lt;br /&gt;
|-&lt;br /&gt;
|Startaddress&lt;br /&gt;
|Integer&lt;br /&gt;
|The start address of the scan range.&lt;br /&gt;
|-&lt;br /&gt;
|Stopaddress&lt;br /&gt;
|Integer&lt;br /&gt;
|The stop address of the scan range.&lt;br /&gt;
|-&lt;br /&gt;
|Hexadecimal&lt;br /&gt;
|Boolean&lt;br /&gt;
|If true, the input value is treated as hexadecimal.&lt;br /&gt;
|-&lt;br /&gt;
|BinaryStringAsDecimal&lt;br /&gt;
|Boolean&lt;br /&gt;
|If true and the variable type is vtBinary, the input is treated as decimal instead of a binary string.&lt;br /&gt;
|-&lt;br /&gt;
|UTF16&lt;br /&gt;
|Boolean&lt;br /&gt;
|If true and the variable type is vtString, a UTF-16 string scan is performed.&lt;br /&gt;
|-&lt;br /&gt;
|Casesensitive&lt;br /&gt;
|Boolean&lt;br /&gt;
|If true and the variable type is vtString, the scan is case-sensitive.&lt;br /&gt;
|-&lt;br /&gt;
|Fastscanmethod&lt;br /&gt;
|TFastScanMethod&lt;br /&gt;
|The fast scan alignment method.&lt;br /&gt;
|-&lt;br /&gt;
|Fastscanparameter&lt;br /&gt;
|String&lt;br /&gt;
|The parameter used by the selected fast scan method.&lt;br /&gt;
|-&lt;br /&gt;
|Customtype&lt;br /&gt;
|TCustomType&lt;br /&gt;
|The custom type to use when scanning with a custom variable type.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Scan Region Properties===&lt;br /&gt;
{|width=&amp;quot;85%&amp;quot; cellpadding=&amp;quot;10%&amp;quot; cellspacing=&amp;quot;0&amp;quot; border=&amp;quot;0&amp;quot;&lt;br /&gt;
!align=&amp;quot;left&amp;quot;|Property&lt;br /&gt;
!align=&amp;quot;left&amp;quot;|Type&lt;br /&gt;
!style=&amp;quot;width: 80%;background-color:white;&amp;quot; align=&amp;quot;left&amp;quot;|Description&lt;br /&gt;
|-&lt;br /&gt;
|ScanWritable&lt;br /&gt;
|TScanRegionPreference&lt;br /&gt;
|Controls whether writable memory is included, excluded, or ignored.&lt;br /&gt;
|-&lt;br /&gt;
|ScanExecutable&lt;br /&gt;
|TScanRegionPreference&lt;br /&gt;
|Controls whether executable memory is included, excluded, or ignored.&lt;br /&gt;
|-&lt;br /&gt;
|ScanCopyOnWrite&lt;br /&gt;
|TScanRegionPreference&lt;br /&gt;
|Controls whether copy-on-write memory is included, excluded, or ignored.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Saved Scan Properties===&lt;br /&gt;
{|width=&amp;quot;85%&amp;quot; cellpadding=&amp;quot;10%&amp;quot; cellspacing=&amp;quot;0&amp;quot; border=&amp;quot;0&amp;quot;&lt;br /&gt;
!align=&amp;quot;left&amp;quot;|Property&lt;br /&gt;
!align=&amp;quot;left&amp;quot;|Type&lt;br /&gt;
!style=&amp;quot;width: 80%;background-color:white;&amp;quot; align=&amp;quot;left&amp;quot;|Description&lt;br /&gt;
|-&lt;br /&gt;
|Percentage&lt;br /&gt;
|Boolean&lt;br /&gt;
|If true, the scan uses percentage-based comparison where supported.&lt;br /&gt;
|-&lt;br /&gt;
|CompareToSavedScan&lt;br /&gt;
|Boolean&lt;br /&gt;
|If true, the scan compares against a saved scan result.&lt;br /&gt;
|-&lt;br /&gt;
|SavedScanName&lt;br /&gt;
|String&lt;br /&gt;
|The name of the saved scan result to compare against.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Methods===&lt;br /&gt;
{|width=&amp;quot;85%&amp;quot; cellpadding=&amp;quot;10%&amp;quot; cellspacing=&amp;quot;0&amp;quot; border=&amp;quot;0&amp;quot;&lt;br /&gt;
!align=&amp;quot;left&amp;quot;|Method&lt;br /&gt;
!align=&amp;quot;left&amp;quot;|Return Type&lt;br /&gt;
!style=&amp;quot;width: 80%;background-color:white;&amp;quot; align=&amp;quot;left&amp;quot;|Description&lt;br /&gt;
|-&lt;br /&gt;
|scan()&lt;br /&gt;
|void&lt;br /&gt;
|Performs either a first scan or next scan based on the current property values.&lt;br /&gt;
|-&lt;br /&gt;
|firstScan()&lt;br /&gt;
|void&lt;br /&gt;
|Performs a first scan based on the current property values.&lt;br /&gt;
|-&lt;br /&gt;
|nextScan()&lt;br /&gt;
|void&lt;br /&gt;
|Performs a next scan based on the current property values.&lt;br /&gt;
|-&lt;br /&gt;
|newScan()&lt;br /&gt;
|void&lt;br /&gt;
|Clears the current scan results.&lt;br /&gt;
|-&lt;br /&gt;
|firstScan(scanoption, vartype, roundingtype, input1, input2, startAddress, stopAddress, protectionflags, alignmenttype, alignmentparam, isHexadecimalInput, isNotABinaryString, isunicodescan, iscasesensitive)&lt;br /&gt;
|void&lt;br /&gt;
|Performs an initial scan using the specified parameters.&lt;br /&gt;
|-&lt;br /&gt;
|nextScan(scanoption, roundingtype, input1, input2, isHexadecimalInput, isNotABinaryString, isunicodescan, iscasesensitive, ispercentagescan, savedresultname)&lt;br /&gt;
|void&lt;br /&gt;
|Performs a next scan based on the previous scan or a saved result list.&lt;br /&gt;
|-&lt;br /&gt;
|waitTillDone()&lt;br /&gt;
|void&lt;br /&gt;
|Waits for the MemScan thread or threads to finish scanning. This should be used after starting a scan.&lt;br /&gt;
|-&lt;br /&gt;
|saveCurrentResults(name)&lt;br /&gt;
|void&lt;br /&gt;
|Saves the current scan results to a unique name for this MemScan object.&lt;br /&gt;
|-&lt;br /&gt;
|getSavedResultList()&lt;br /&gt;
|Table&lt;br /&gt;
|Returns an indexed table containing the names of all saved results.&lt;br /&gt;
|-&lt;br /&gt;
|getSavedResultHandler(name)&lt;br /&gt;
|SavedResultHandler&lt;br /&gt;
|Returns the SavedResultHandler object with the given name, or nil on failure.&lt;br /&gt;
|-&lt;br /&gt;
|getAttachedFoundlist()&lt;br /&gt;
|FoundList&lt;br /&gt;
|Returns the attached FoundList object, or nil if no FoundList is attached.&lt;br /&gt;
|-&lt;br /&gt;
|setOnlyOneResult(state)&lt;br /&gt;
|void&lt;br /&gt;
|If true before a scan starts, the scanner only returns one result. This does not work with a FoundList.&lt;br /&gt;
|-&lt;br /&gt;
|getOnlyResult()&lt;br /&gt;
|Integer or nil&lt;br /&gt;
|Only works if OnlyOneResult is true. Returns the found address or nil if no result was found.&lt;br /&gt;
|-&lt;br /&gt;
|getProgress()&lt;br /&gt;
|Table&lt;br /&gt;
|Returns a table containing progress information.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Progress Table Fields===&lt;br /&gt;
{|width=&amp;quot;85%&amp;quot; cellpadding=&amp;quot;10%&amp;quot; cellspacing=&amp;quot;0&amp;quot; border=&amp;quot;0&amp;quot;&lt;br /&gt;
!align=&amp;quot;left&amp;quot;|Field&lt;br /&gt;
!align=&amp;quot;left&amp;quot;|Type&lt;br /&gt;
!style=&amp;quot;width: 80%;background-color:white;&amp;quot; align=&amp;quot;left&amp;quot;|Description&lt;br /&gt;
|-&lt;br /&gt;
|TotalAddressesToScan&lt;br /&gt;
|Integer&lt;br /&gt;
|The total number of addresses that will be scanned.&lt;br /&gt;
|-&lt;br /&gt;
|CurrentlyScanned&lt;br /&gt;
|Integer&lt;br /&gt;
|The number of addresses already scanned.&lt;br /&gt;
|-&lt;br /&gt;
|ResultsFound&lt;br /&gt;
|Integer&lt;br /&gt;
|The number of results found so far.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===First Scan Parameters===&lt;br /&gt;
{|width=&amp;quot;85%&amp;quot; cellpadding=&amp;quot;10%&amp;quot; cellspacing=&amp;quot;0&amp;quot; border=&amp;quot;0&amp;quot;&lt;br /&gt;
!align=&amp;quot;left&amp;quot;|Parameter&lt;br /&gt;
!align=&amp;quot;left&amp;quot;|Type&lt;br /&gt;
!style=&amp;quot;width: 80%;background-color:white;&amp;quot; align=&amp;quot;left&amp;quot;|Description&lt;br /&gt;
|-&lt;br /&gt;
|scanoption&lt;br /&gt;
|TScanOption&lt;br /&gt;
|Defines what type of first scan is performed.&lt;br /&gt;
|-&lt;br /&gt;
|vartype&lt;br /&gt;
|TVariableType&lt;br /&gt;
|Defines the variable type to scan for.&lt;br /&gt;
|-&lt;br /&gt;
|roundingtype&lt;br /&gt;
|TRoundingType&lt;br /&gt;
|Defines how exact-value floating-point scans are handled.&lt;br /&gt;
|-&lt;br /&gt;
|input1&lt;br /&gt;
|String&lt;br /&gt;
|The primary input value, if required by the scan option.&lt;br /&gt;
|-&lt;br /&gt;
|input2&lt;br /&gt;
|String&lt;br /&gt;
|The secondary input value, if required by the scan option.&lt;br /&gt;
|-&lt;br /&gt;
|startAddress&lt;br /&gt;
|Integer or [[CEAddressString]]&lt;br /&gt;
|The start address to scan from. Commonly 0.&lt;br /&gt;
|-&lt;br /&gt;
|stopAddress&lt;br /&gt;
|Integer or [[CEAddressString]]&lt;br /&gt;
|The address where the scan should stop. Commonly 0xffffffffffffffff.&lt;br /&gt;
|-&lt;br /&gt;
|protectionflags&lt;br /&gt;
|String&lt;br /&gt;
|Protection flags that control which memory regions are scanned.&lt;br /&gt;
|-&lt;br /&gt;
|alignmenttype&lt;br /&gt;
|TFastScanMethod&lt;br /&gt;
|The scan alignment type.&lt;br /&gt;
|-&lt;br /&gt;
|alignmentparam&lt;br /&gt;
|String&lt;br /&gt;
|The alignment parameter used by the selected alignment type.&lt;br /&gt;
|-&lt;br /&gt;
|isHexadecimalInput&lt;br /&gt;
|Boolean&lt;br /&gt;
|If true, the input value is treated as hexadecimal. If false, it is treated as decimal.&lt;br /&gt;
|-&lt;br /&gt;
|isNotABinaryString&lt;br /&gt;
|Boolean&lt;br /&gt;
|If true and vartype is vtBinary, the input is treated as decimal instead of a binary string.&lt;br /&gt;
|-&lt;br /&gt;
|isunicodescan&lt;br /&gt;
|Boolean&lt;br /&gt;
|If true and vartype is vtString, a UTF-16 string scan is performed.&lt;br /&gt;
|-&lt;br /&gt;
|iscasesensitive&lt;br /&gt;
|Boolean&lt;br /&gt;
|If true and vartype is vtString, the scan checks for matching case.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Next Scan Parameters===&lt;br /&gt;
{|width=&amp;quot;85%&amp;quot; cellpadding=&amp;quot;10%&amp;quot; cellspacing=&amp;quot;0&amp;quot; border=&amp;quot;0&amp;quot;&lt;br /&gt;
!align=&amp;quot;left&amp;quot;|Parameter&lt;br /&gt;
!align=&amp;quot;left&amp;quot;|Type&lt;br /&gt;
!style=&amp;quot;width: 80%;background-color:white;&amp;quot; align=&amp;quot;left&amp;quot;|Description&lt;br /&gt;
|-&lt;br /&gt;
|scanoption&lt;br /&gt;
|TScanOption&lt;br /&gt;
|Defines what type of next scan is performed.&lt;br /&gt;
|-&lt;br /&gt;
|roundingtype&lt;br /&gt;
|TRoundingType&lt;br /&gt;
|Defines how exact-value floating-point scans are handled.&lt;br /&gt;
|-&lt;br /&gt;
|input1&lt;br /&gt;
|String&lt;br /&gt;
|The primary input value, if required by the scan option.&lt;br /&gt;
|-&lt;br /&gt;
|input2&lt;br /&gt;
|String&lt;br /&gt;
|The secondary input value, if required by the scan option.&lt;br /&gt;
|-&lt;br /&gt;
|isHexadecimalInput&lt;br /&gt;
|Boolean&lt;br /&gt;
|If true, the input value is treated as hexadecimal. If false, it is treated as decimal.&lt;br /&gt;
|-&lt;br /&gt;
|isNotABinaryString&lt;br /&gt;
|Boolean&lt;br /&gt;
|If true and the previous variable type is vtBinary, the input is treated as decimal instead of a binary string.&lt;br /&gt;
|-&lt;br /&gt;
|isunicodescan&lt;br /&gt;
|Boolean&lt;br /&gt;
|If true and the previous variable type is vtString, a UTF-16 string scan is performed.&lt;br /&gt;
|-&lt;br /&gt;
|iscasesensitive&lt;br /&gt;
|Boolean&lt;br /&gt;
|If true and the previous variable type is vtString, the scan checks for matching case.&lt;br /&gt;
|-&lt;br /&gt;
|ispercentagescan&lt;br /&gt;
|Boolean&lt;br /&gt;
|If true and supported by the scan option, Cheat Engine performs a percentage scan instead of a normal value scan.&lt;br /&gt;
|-&lt;br /&gt;
|savedresultname&lt;br /&gt;
|String (optional)&lt;br /&gt;
|The name of a saved result list that should be compared against. The first scan is named FIRST.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===First Scan Options===&lt;br /&gt;
{|width=&amp;quot;85%&amp;quot; cellpadding=&amp;quot;10%&amp;quot; cellspacing=&amp;quot;0&amp;quot; border=&amp;quot;0&amp;quot;&lt;br /&gt;
!align=&amp;quot;left&amp;quot;|Value&lt;br /&gt;
!align=&amp;quot;left&amp;quot;|Description&lt;br /&gt;
|-&lt;br /&gt;
|soUnknownValue&lt;br /&gt;
|Unknown initial value scan.&lt;br /&gt;
|-&lt;br /&gt;
|soExactValue&lt;br /&gt;
|Exact value scan.&lt;br /&gt;
|-&lt;br /&gt;
|soValueBetween&lt;br /&gt;
|Value between scan.&lt;br /&gt;
|-&lt;br /&gt;
|soBiggerThan&lt;br /&gt;
|Bigger than scan.&lt;br /&gt;
|-&lt;br /&gt;
|soSmallerThan&lt;br /&gt;
|Smaller than scan.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Next Scan Options===&lt;br /&gt;
{|width=&amp;quot;85%&amp;quot; cellpadding=&amp;quot;10%&amp;quot; cellspacing=&amp;quot;0&amp;quot; border=&amp;quot;0&amp;quot;&lt;br /&gt;
!align=&amp;quot;left&amp;quot;|Value&lt;br /&gt;
!align=&amp;quot;left&amp;quot;|Description&lt;br /&gt;
|-&lt;br /&gt;
|soExactValue&lt;br /&gt;
|Exact value scan.&lt;br /&gt;
|-&lt;br /&gt;
|soValueBetween&lt;br /&gt;
|Value between scan.&lt;br /&gt;
|-&lt;br /&gt;
|soBiggerThan&lt;br /&gt;
|Bigger than scan.&lt;br /&gt;
|-&lt;br /&gt;
|soSmallerThan&lt;br /&gt;
|Smaller than scan.&lt;br /&gt;
|-&lt;br /&gt;
|soIncreasedValue&lt;br /&gt;
|Increased value scan.&lt;br /&gt;
|-&lt;br /&gt;
|soIncreasedValueBy&lt;br /&gt;
|Increased value by scan.&lt;br /&gt;
|-&lt;br /&gt;
|soDecreasedValue&lt;br /&gt;
|Decreased value scan.&lt;br /&gt;
|-&lt;br /&gt;
|soDecreasedValueBy&lt;br /&gt;
|Decreased value by scan.&lt;br /&gt;
|-&lt;br /&gt;
|soChanged&lt;br /&gt;
|Changed value scan.&lt;br /&gt;
|-&lt;br /&gt;
|soUnchanged&lt;br /&gt;
|Unchanged value scan.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Variable Types===&lt;br /&gt;
{|width=&amp;quot;85%&amp;quot; cellpadding=&amp;quot;10%&amp;quot; cellspacing=&amp;quot;0&amp;quot; border=&amp;quot;0&amp;quot;&lt;br /&gt;
!align=&amp;quot;left&amp;quot;|Value&lt;br /&gt;
!align=&amp;quot;left&amp;quot;|Description&lt;br /&gt;
|-&lt;br /&gt;
|vtByte&lt;br /&gt;
|1-byte integer.&lt;br /&gt;
|-&lt;br /&gt;
|vtWord&lt;br /&gt;
|2-byte integer.&lt;br /&gt;
|-&lt;br /&gt;
|vtDword&lt;br /&gt;
|4-byte integer.&lt;br /&gt;
|-&lt;br /&gt;
|vtQword&lt;br /&gt;
|8-byte integer.&lt;br /&gt;
|-&lt;br /&gt;
|vtSingle&lt;br /&gt;
|Single-precision floating-point value.&lt;br /&gt;
|-&lt;br /&gt;
|vtDouble&lt;br /&gt;
|Double-precision floating-point value.&lt;br /&gt;
|-&lt;br /&gt;
|vtString&lt;br /&gt;
|String value.&lt;br /&gt;
|-&lt;br /&gt;
|vtByteArray&lt;br /&gt;
|Byte array.&lt;br /&gt;
|-&lt;br /&gt;
|vtGrouped&lt;br /&gt;
|Grouped scan value.&lt;br /&gt;
|-&lt;br /&gt;
|vtBinary&lt;br /&gt;
|Binary value.&lt;br /&gt;
|-&lt;br /&gt;
|vtAll&lt;br /&gt;
|All supported variable types.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Rounding Types===&lt;br /&gt;
{|width=&amp;quot;85%&amp;quot; cellpadding=&amp;quot;10%&amp;quot; cellspacing=&amp;quot;0&amp;quot; border=&amp;quot;0&amp;quot;&lt;br /&gt;
!align=&amp;quot;left&amp;quot;|Value&lt;br /&gt;
!style=&amp;quot;width: 80%;background-color:white;&amp;quot; align=&amp;quot;left&amp;quot;|Description&lt;br /&gt;
|-&lt;br /&gt;
|rtRounded&lt;br /&gt;
|Normal rounded scan. For example, an exact value of 3 includes values from 3.0 to 3.49999999.&lt;br /&gt;
|-&lt;br /&gt;
|rtTruncated&lt;br /&gt;
|Truncated scan. For example, an exact value of 3 includes values from 3.0 to 3.99999999.&lt;br /&gt;
|-&lt;br /&gt;
|rtExtremerounded&lt;br /&gt;
|Extreme rounded scan. For example, an exact value of 3 includes values from 2.0000001 to 3.99999999.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Alignment Types===&lt;br /&gt;
{|width=&amp;quot;85%&amp;quot; cellpadding=&amp;quot;10%&amp;quot; cellspacing=&amp;quot;0&amp;quot; border=&amp;quot;0&amp;quot;&lt;br /&gt;
!align=&amp;quot;left&amp;quot;|Value&lt;br /&gt;
!style=&amp;quot;width: 80%;background-color:white;&amp;quot; align=&amp;quot;left&amp;quot;|Description&lt;br /&gt;
|-&lt;br /&gt;
|fsmNotAligned&lt;br /&gt;
|No alignment check.&lt;br /&gt;
|-&lt;br /&gt;
|fsmAligned&lt;br /&gt;
|The address must be divisible by the value in alignmentparam.&lt;br /&gt;
|-&lt;br /&gt;
|fsmLastDigits&lt;br /&gt;
|The last digits of the address must end with the digits provided by alignmentparam.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Scan Region Preference Values===&lt;br /&gt;
{|width=&amp;quot;85%&amp;quot; cellpadding=&amp;quot;10%&amp;quot; cellspacing=&amp;quot;0&amp;quot; border=&amp;quot;0&amp;quot;&lt;br /&gt;
!align=&amp;quot;left&amp;quot;|Value&lt;br /&gt;
!style=&amp;quot;width: 80%;background-color:white;&amp;quot; align=&amp;quot;left&amp;quot;|Description&lt;br /&gt;
|-&lt;br /&gt;
|scanDontCare&lt;br /&gt;
|Do not care whether this memory region attribute is present.&lt;br /&gt;
|-&lt;br /&gt;
|scanExclude&lt;br /&gt;
|Exclude memory regions with this attribute.&lt;br /&gt;
|-&lt;br /&gt;
|scanInclude&lt;br /&gt;
|Only include memory regions with this attribute.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Examples===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
local memscan = createMemScan()&lt;br /&gt;
&lt;br /&gt;
memscan.firstScan(&lt;br /&gt;
  soExactValue,&lt;br /&gt;
  vtDword,&lt;br /&gt;
  rtRounded,&lt;br /&gt;
  &amp;quot;100&amp;quot;,&lt;br /&gt;
  &amp;quot;&amp;quot;,&lt;br /&gt;
  0,&lt;br /&gt;
  0xffffffffffffffff,&lt;br /&gt;
  &amp;quot;&amp;quot;,&lt;br /&gt;
  fsmAligned,&lt;br /&gt;
  &amp;quot;4&amp;quot;,&lt;br /&gt;
  false,&lt;br /&gt;
  true,&lt;br /&gt;
  false,&lt;br /&gt;
  false&lt;br /&gt;
)&lt;br /&gt;
&lt;br /&gt;
memscan.waitTillDone()&lt;br /&gt;
&lt;br /&gt;
print(&amp;quot;First scan done&amp;quot;)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
local memscan = createMemScan()&lt;br /&gt;
&lt;br /&gt;
memscan.firstScan(&lt;br /&gt;
  soExactValue,&lt;br /&gt;
  vtDword,&lt;br /&gt;
  rtRounded,&lt;br /&gt;
  &amp;quot;100&amp;quot;,&lt;br /&gt;
  &amp;quot;&amp;quot;,&lt;br /&gt;
  0,&lt;br /&gt;
  0xffffffffffffffff,&lt;br /&gt;
  &amp;quot;&amp;quot;,&lt;br /&gt;
  fsmAligned,&lt;br /&gt;
  &amp;quot;4&amp;quot;,&lt;br /&gt;
  false,&lt;br /&gt;
  true,&lt;br /&gt;
  false,&lt;br /&gt;
  false&lt;br /&gt;
)&lt;br /&gt;
&lt;br /&gt;
memscan.waitTillDone()&lt;br /&gt;
&lt;br /&gt;
memscan.nextScan(&lt;br /&gt;
  soIncreasedValue,&lt;br /&gt;
  rtRounded,&lt;br /&gt;
  &amp;quot;&amp;quot;,&lt;br /&gt;
  &amp;quot;&amp;quot;,&lt;br /&gt;
  false,&lt;br /&gt;
  true,&lt;br /&gt;
  false,&lt;br /&gt;
  false,&lt;br /&gt;
  false&lt;br /&gt;
)&lt;br /&gt;
&lt;br /&gt;
memscan.waitTillDone()&lt;br /&gt;
&lt;br /&gt;
print(&amp;quot;Next scan done&amp;quot;)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
local memscan = createMemScan()&lt;br /&gt;
&lt;br /&gt;
memscan.setOnlyOneResult(true)&lt;br /&gt;
&lt;br /&gt;
memscan.firstScan(&lt;br /&gt;
  soExactValue,&lt;br /&gt;
  vtDword,&lt;br /&gt;
  rtRounded,&lt;br /&gt;
  &amp;quot;100&amp;quot;,&lt;br /&gt;
  &amp;quot;&amp;quot;,&lt;br /&gt;
  0,&lt;br /&gt;
  0xffffffffffffffff,&lt;br /&gt;
  &amp;quot;&amp;quot;,&lt;br /&gt;
  fsmAligned,&lt;br /&gt;
  &amp;quot;4&amp;quot;,&lt;br /&gt;
  false,&lt;br /&gt;
  true,&lt;br /&gt;
  false,&lt;br /&gt;
  false&lt;br /&gt;
)&lt;br /&gt;
&lt;br /&gt;
memscan.waitTillDone()&lt;br /&gt;
&lt;br /&gt;
local result = memscan.getOnlyResult()&lt;br /&gt;
&lt;br /&gt;
if result ~= nil then&lt;br /&gt;
  print(&amp;quot;Found address: &amp;quot; .. string.format(&amp;quot;%X&amp;quot;, result))&lt;br /&gt;
else&lt;br /&gt;
  print(&amp;quot;No result found&amp;quot;)&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
local memscan = createMemScan()&lt;br /&gt;
&lt;br /&gt;
memscan.OnGuiUpdate = function(memscan, total, scanned, found)&lt;br /&gt;
  print(&amp;quot;Scanned: &amp;quot; .. tostring(scanned) .. &amp;quot; / &amp;quot; .. tostring(total))&lt;br /&gt;
  print(&amp;quot;Found: &amp;quot; .. tostring(found))&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
memscan.OnScanDone = function(memscan)&lt;br /&gt;
  print(&amp;quot;Scan finished&amp;quot;)&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
local memscan = getCurrentMemscan()&lt;br /&gt;
&lt;br /&gt;
if memscan ~= nil then&lt;br /&gt;
  local progress = memscan.getProgress()&lt;br /&gt;
&lt;br /&gt;
  print(&amp;quot;Total: &amp;quot; .. tostring(progress.TotalAddressesToScan))&lt;br /&gt;
  print(&amp;quot;Scanned: &amp;quot; .. tostring(progress.CurrentlyScanned))&lt;br /&gt;
  print(&amp;quot;Found: &amp;quot; .. tostring(progress.ResultsFound))&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{LuaSeeAlso}}&lt;/div&gt;</summary>
		<author><name>Leunsel</name></author>
		
	</entry>
</feed>