<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-6274674188172478645</id><updated>2024-09-06T18:51:42.762-07:00</updated><category term="Controls"/><category term="Asynchronous"/><category term="CodingStyles"/><category term="WinSock"/><category term="Hooking"/><category term="Memory"/><category term="Assembler"/><category term="Communication"/><category term="CompInside"/><category term="DesignPatterns"/><category term="Fractal"/><category term="FunStuff"/><category term="ScreenSaver"/><category term="Security"/><category term="SpeechProcessing"/><category term="Techniques"/><category term="Thread"/><category term="Unicode"/><category term="UnmanagedCode"/><category term="WinNet"/><title type='text'>Windows Internal</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://win32secrets.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default'/><link rel='alternate' type='text/html' href='http://win32secrets.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default?start-index=26&amp;max-results=25'/><author><name>Researcher</name><uri>http://www.blogger.com/profile/10995990336221568904</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>35</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-6274674188172478645.post-2637141261155102461</id><published>2010-01-22T06:02:00.000-08:00</published><updated>2010-01-22T06:02:53.242-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Memory"/><title type='text'>Dynamical heap allocation</title><content type='html'>&lt;style type=&quot;text/css&quot;&gt;
&lt;!--
body { color: #000000; background-color: #FFFFFF; }
.cpp1-assembler { color: #006699; }
.cpp1-character { color: #A00000; }
.cpp1-comment { color: #008000; }
.cpp1-float { color: #0050C0; }
.cpp1-hexadecimal { color: #0000A0; }
.cpp1-identifier { color: #000000; }
.cpp1-illegalchar { color: #FF0000; }
.cpp1-number { color: #800080; }
.cpp1-octal { color: #006666; }
.cpp1-opengl { color: #8000FF; }
.cpp1-preprocessor { color: #0000FF; }
.cpp1-reservedword { color: #0000FF; }
.cpp1-string { color: #800000; }
.cpp1-symbol { color: #000080; }
.cpp1-whitespace { }
--&gt;
&lt;/style&gt;&lt;br /&gt;
&lt;blockquote&gt;&lt;pre&gt;&lt;code&gt;&lt;span style=&quot;font: 12pt Fixedsys;&quot;&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#include&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;windows&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;h&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;gt;
&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#include&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;iostream&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;h&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;gt;

&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; main&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;()
{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; HANDLE hHeap&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// handle to the heap
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;*&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;a &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// pointer to array
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; h_size &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;4096&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// size of the heap
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; a_size &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;2048&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// size of array
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; 
 hHeap &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; HeapCreate&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HEAP_NO_SERIALIZE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; h_size&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; h_size&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// create heap dynamically
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; a &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;*)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HeapAlloc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hHeap&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; a_size&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// heap allocation
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; cout &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;a[10] = &amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; a&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;10&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; endl&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; HeapFree&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hHeap&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; a&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// free memory from heap
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; HeapDestroy&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hHeap&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// destroy the heap
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
}
&lt;/span&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/blockquote&gt;&lt;span id=&quot;fullpost&quot;&gt;&lt;br /&gt;
HEAP_NO_SERIALIZE - allow parallel access to the heap.&lt;br /&gt;
&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://win32secrets.blogspot.com/feeds/2637141261155102461/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://win32secrets.blogspot.com/2010/01/dynamical-heap-allocation.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/2637141261155102461'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/2637141261155102461'/><link rel='alternate' type='text/html' href='http://win32secrets.blogspot.com/2010/01/dynamical-heap-allocation.html' title='Dynamical heap allocation'/><author><name>Researcher</name><uri>http://www.blogger.com/profile/10995990336221568904</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6274674188172478645.post-4599416330634699668</id><published>2010-01-22T03:16:00.000-08:00</published><updated>2010-01-22T03:17:23.022-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Memory"/><title type='text'>Allocation and Free memory from Heap</title><content type='html'>&lt;style type=&quot;text/css&quot;&gt;
&lt;!--
body { color: #000000; background-color: #FFFFFF; }
.cpp1-assembler { color: #006699; }
.cpp1-character { color: #A00000; }
.cpp1-comment { color: #008000; }
.cpp1-float { color: #0050C0; }
.cpp1-hexadecimal { color: #0000A0; }
.cpp1-identifier { color: #000000; }
.cpp1-illegalchar { color: #FF0000; }
.cpp1-number { color: #800080; }
.cpp1-octal { color: #006666; }
.cpp1-opengl { color: #8000FF; }
.cpp1-preprocessor { color: #0000FF; }
.cpp1-reservedword { color: #0000FF; }
.cpp1-string { color: #800000; }
.cpp1-symbol { color: #000080; }
.cpp1-whitespace { }
--&gt;
&lt;/style&gt;&lt;br /&gt;
&lt;blockquote&gt;&lt;pre&gt;&lt;code&gt;&lt;span style=&quot;font: 12pt Fixedsys;&quot;&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#include&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;windows&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;h&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;gt;
&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#include&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;iostream&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;h&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;gt;

&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; main&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;()
{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  HANDLE hHeap&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;*&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;a &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// pointer to array
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; size &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;100&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  hHeap &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; GetProcessHeap&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;();&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// receive handle of the process&#39;s heap
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  a &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;*)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HeapAlloc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hHeap&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; HEAP_ZERO_MEMORY&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; size &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;*&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;sizeof&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;));
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  cout &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot; a[10] = &amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; a&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;10&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; endl&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  HeapFree&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hHeap&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; a&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
}
&lt;/span&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/blockquote&gt;&lt;span id=&quot;fullpost&quot;&gt;&lt;br /&gt;
Functions to remember:&lt;br /&gt;
&lt;blockquote&gt;LPVOID HeapAlloc(HANDLE hHeap, DWORD dwFlags, SIZE_T dwBytes)&lt;br /&gt;
BOOL HeapFree(HANDLE hHeap, DWORD dwFlags, LPVOID lpMem)&lt;br /&gt;
&lt;/blockquote&gt;I think the parameters are straight-forward here.&lt;br /&gt;
&lt;br /&gt;
&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://win32secrets.blogspot.com/feeds/4599416330634699668/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://win32secrets.blogspot.com/2010/01/allocation-and-free-memory-from-heap.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/4599416330634699668'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/4599416330634699668'/><link rel='alternate' type='text/html' href='http://win32secrets.blogspot.com/2010/01/allocation-and-free-memory-from-heap.html' title='Allocation and Free memory from Heap'/><author><name>Researcher</name><uri>http://www.blogger.com/profile/10995990336221568904</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6274674188172478645.post-1415514460275356638</id><published>2009-10-29T12:53:00.000-07:00</published><updated>2010-01-17T03:09:06.556-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="SpeechProcessing"/><title type='text'>Reverse</title><content type='html'>REVERSE is a Windows with Multimedia sample application that illustrates how to use the low-level waveform playback services. It also shows how to use the multimedia file I/O services to read data from a WAVE file.&lt;br /&gt;
&lt;style type=&quot;text/css&quot;&gt;&lt;!--body { color: #000000; background-color: #FFFFFF; }.cpp1-assembler { color: #006699; }.cpp1-character { color: #A00000; }.cpp1-comment { color: #008000; }.cpp1-float { color: #0050C0; }.cpp1-hexadecimal { color: #0000A0; }.cpp1-identifier { color: #000000; }.cpp1-illegalchar { color: #FF0000; }.cpp1-number { color: #800080; }.cpp1-octal { color: #006666; }.cpp1-opengl { color: #8000FF; }.cpp1-preprocessor { color: #0000FF; }.cpp1-reservedword { color: #0000FF; }.cpp1-string { color: #800000; }.cpp1-symbol { color: #000080; }.cpp1-whitespace { }--&gt;&lt;/style&gt;&lt;br /&gt;
&lt;span id=&quot;fullpost&quot;&gt;&lt;br /&gt;
&lt;br /&gt;
reverse.h: &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;pre&gt;&lt;code&gt;&lt;span style=&quot;font: 12pt Fixedsys;&quot;&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* reverse.h - Header file for REVERSE sample application.
*/


/*
*  Constants
*/

// Child window identifiers
&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#define&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; IDE_NAME        &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;200
&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#define&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; IDB_PLAY        &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;201
&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#define&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; IDB_QUIT        &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;202

&lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// Window Position and size definitions
&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#define&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WMAIN_DX        &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;207
&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#define&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WMAIN_DY        &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;120
&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#define&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NAME_DX         &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;180
&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#define&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NAME_DY         &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;30
&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#define&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NAME_X          &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;10
&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#define&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NAME_Y          &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;10
&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#define&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; PLAY_DX         &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;85
&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#define&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; PLAY_DY         &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;35
&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#define&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; PLAY_X          &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;10
&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#define&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; PLAY_Y          &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;50
&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#define&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; QUIT_DX         &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;85
&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#define&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; QUIT_DY         &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;35
&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#define&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; QUIT_X          &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;105
&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#define&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; QUIT_Y          &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;50

&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#define&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; IDM_ABOUT           &lt;/span&gt;&lt;span class=&quot;cpp1-hexadecimal&quot;&gt;0x101

&lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/*
* Data Types
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;typedef&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;struct&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; waveInst
&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  HANDLE hWaveInst&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  HANDLE hWaveHdr&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  HANDLE hWaveData&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
}&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WAVEINST&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;

&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;typedef&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WAVEINST FAR &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;*&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LPWAVEINST&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;

&lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/*
*  Function prototypes
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;BOOL FAR PASCAL AppAbout&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HWND&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;unsigned&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; UINT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LONG&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LONG FAR PASCAL WndProc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HWND&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;unsigned&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; UINT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LONG&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;void&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; Interchange&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HPSTR&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; HPSTR&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;unsigned&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;void&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; ReversePlay&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;void&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
reverse.cpp: &lt;br /&gt;
&lt;br /&gt;
&lt;pre&gt;&lt;code&gt;&lt;span style=&quot;font: 12pt Fixedsys;&quot;&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#include&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;windows&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;h&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;gt;
&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#include&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;mmsystem&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;h&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;gt;
&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#include&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;reverse.h&amp;quot;

&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#define&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MAX_FILENAME_SIZE   &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;128

&lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* Global variables.
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;char&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szAppName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[]&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Reverse&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// application name
&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HANDLE hInstApp &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// instance handle
&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HWND hwndApp &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// main window handle
&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HWND hwndName &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// filename window handle
&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HWND hwndPlay &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// &amp;quot;Play&amp;quot; button window handle
&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HWND hwndQuit &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// &amp;quot;Exit&amp;quot; button window handle
&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HWAVEOUT hWaveOut &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LPWAVEHDR lpWaveHdr &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;VOID cleanup&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LPWAVEINST lpWaveInst&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);


&lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* WinMain - Entry point for Reverse.
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; PASCAL WinMain&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HANDLE hInst&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; HANDLE hPrev&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LPSTR szCmdLine&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; cmdShow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)
{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  MSG msg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  WNDCLASS wc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  hInstApp &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hInst&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* Define and register a window class for the main window.
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(!&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hPrev&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    wc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hCursor &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LoadCursor&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; IDC_ARROW&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    wc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hIcon &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LoadIcon&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hInst&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szAppName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    wc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpszMenuName &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szAppName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    wc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpszClassName &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szAppName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    wc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hbrBackground &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; GetStockObject&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LTGRAY_BRUSH&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    wc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hInstance &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hInst&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    wc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;style &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    wc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpfnWndProc &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WndProc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    wc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;cbWndExtra &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    wc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;cbClsExtra &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(!&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;RegisterClass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;wc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;))
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; FALSE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* Create and show the main window.
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  hwndApp &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CreateWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;szAppName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// class name
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  szAppName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// caption
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  WS_OVERLAPPEDWINDOW&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// style bits
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  CW_USEDEFAULT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// x position
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  CW_USEDEFAULT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// y position
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  WMAIN_DX&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// x size
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  WMAIN_DY&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// y size
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HWND&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// parent window
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HMENU&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// use class menu
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HANDLE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hInst&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// instance handle
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LPSTR&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;NULL  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// no params to pass on
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* Create child windows for the &amp;quot;Play&amp;quot; and &amp;quot;Exit&amp;quot; buttons
* and for an edit field to enter filenames.
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  hwndPlay &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CreateWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;BUTTON&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Play&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WS_CHILD &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WS_VISIBLE &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    BS_PUSHBUTTON&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; PLAY_X&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; PLAY_Y&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; PLAY_DX&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; PLAY_DY&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hwndApp&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HMENU&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;IDB_PLAY&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    hInstApp&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(!&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndPlay&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;FALSE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  hwndQuit &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CreateWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;BUTTON&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Exit&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WS_CHILD &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WS_VISIBLE &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    BS_PUSHBUTTON&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; QUIT_X&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; QUIT_Y&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; QUIT_DX&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; QUIT_DY&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hwndApp&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HMENU&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;IDB_QUIT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    hInstApp&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(!&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndQuit&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;FALSE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  hwndName &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CreateWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;EDIT&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WS_CHILD &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WS_VISIBLE &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WS_BORDER &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    ES_AUTOHSCROLL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NAME_X&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NAME_Y&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NAME_DX&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NAME_DY&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hwndApp&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HMENU&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;IDE_NAME&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    hInstApp&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(!&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;FALSE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  SendMessage&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; EM_LIMITTEXT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MAX_FILENAME_SIZE &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  ShowWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndApp&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; cmdShow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* Add about dialog to system menu.
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  AppendMenu&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;GetSystemMenu&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndApp&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;),&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MF_STRING &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MF_ENABLED&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; IDM_ABOUT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; 
&lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;About Reverse...&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);


&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* The main message processing loop. Nothing special here.
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;while&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;GetMessage&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;msg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;))
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    TranslateMessage&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;msg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    DispatchMessage&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;msg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; msg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;wParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
}


&lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* WndProc - Main window procedure function.
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LONG FAR PASCAL WndProc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HWND hWnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;unsigned&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; msg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; UINT wParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LONG lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)
{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  FARPROC fpfn&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  LPWAVEINST lpWaveInst&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;switch&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;msg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WM_DESTROY&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWaveOut&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        waveOutReset&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWaveOut&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        waveOutUnprepareHeader&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWaveOut&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; lpWaveHdr&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;sizeof&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;WAVEHDR&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;));
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        lpWaveInst &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LPWAVEINST&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpWaveHdr&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;dwUser&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        cleanup&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpWaveInst&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        waveOutClose&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWaveOut&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      PostQuitMessage&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WM_SYSCOMMAND&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;switch&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LOWORD&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;wParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;))
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; IDM_ABOUT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* Show ABOUTBOX dialog box.
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        fpfn &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MakeProcInstance&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;((&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;FARPROC&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;AppAbout&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hInstApp&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// no op in 32 bit
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        DialogBox&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hInstApp&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;ABOUTBOX&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hWnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;DLGPROC&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;fpfn&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        FreeProcInstance&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;fpfn&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* Process messages sent by the child window controls.
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WM_SETFOCUS&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      SetFocus&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WM_COMMAND&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;switch&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LOWORD&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;wParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;))
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; IDE_NAME&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// filename edit control
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0L&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; IDB_PLAY&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// &amp;quot;Play&amp;quot; button
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HIWORD&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;wParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;==&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; BN_CLICKED&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;          ReversePlay&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;();
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; IDB_QUIT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// &amp;quot;Exit&amp;quot; button
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HIWORD&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;wParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;==&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; BN_CLICKED&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;          PostQuitMessage&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0L&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MM_WOM_DONE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* This message indicates a waveform data block has
* been played and can be freed. Clean up the preparation
* done previously on the header.
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      waveOutUnprepareHeader&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;((&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HWAVEOUT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;wParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LPWAVEHDR&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;sizeof
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;WAVEHDR&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;));

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* Get a pointer to the instance data, then unlock and free
* all memory associated with the data block, including the
* memory for the instance data itself.
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      lpWaveInst &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LPWAVEINST&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)((&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LPWAVEHDR&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;dwUser&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      cleanup&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpWaveInst&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* Close the waveform output device.
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      waveOutClose&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;((&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HWAVEOUT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;wParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* Reenable both button controls.
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      EnableWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndPlay&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; TRUE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      EnableWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndQuit&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; TRUE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      SetFocus&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; DefWindowProc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; msg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; wParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
}


&lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* AppAbout -- Dialog procedure for ABOUTBOX  dialog box.
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;BOOL FAR PASCAL AppAbout&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HWND hDlg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;unsigned&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; msg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;unsigned&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; wParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LONG lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)
{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;switch&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;msg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WM_COMMAND&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LOWORD&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;wParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;==&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; IDOK&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        EndDialog&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hDlg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; TRUE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WM_INITDIALOG&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; TRUE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; FALSE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
}

&lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* ReversePlay - Gets a filename from the edit control, then uses
*  the multimedia file I/O services to read data from the requested
*  WAVE file. If the file is a proper WAVE file, ReversePlay() calls
*  the Interchange() function to reverse the order of the waveform
*  samples in the file. It then plays the reversed waveform data.
*
*  Note that ReversePlay() only handles a single waveform data block.
*  If the requested WAVE file will not fit in a single data block, it
*  will not be played. The size of a single data block depends on the
*  amount of available system memory.
*
* Params:  void
*
* Return:  void
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;void&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; ReversePlay&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;()
{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  HANDLE hWaveHdr&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  LPWAVEINST lpWaveInst&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  HMMIO hmmio&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  MMCKINFO mmckinfoParent&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  MMCKINFO mmckinfoSubchunk&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  DWORD dwFmtSize&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;char&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szFileName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;MAX_FILENAME_SIZE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;];
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  HANDLE hFormat&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  WAVEFORMAT &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;*&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;pFormat&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  DWORD dwDataSize&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  HPSTR hpch1&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hpch2&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  WORD wBlockSize&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  HANDLE hWaveInst&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  HANDLE hData &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  HPSTR lpData &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* Get the filename from the edit control.
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(!&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;GetWindowText&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LPSTR&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;szFileName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MAX_FILENAME_SIZE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;))
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    MessageBox&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndApp&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Failed to Get Filename&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MB_OK &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      MB_ICONEXCLAMATION&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* Open the given file for reading using buffered I/O.
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(!(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hmmio &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; mmioOpen&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;szFileName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MMIO_READ &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MMIO_ALLOCBUF&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)))
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    MessageBox&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndApp&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Failed to open file.&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MB_OK &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      MB_ICONEXCLAMATION&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* Locate a &#39;RIFF&#39; chunk with a &#39;WAVE&#39; form type
* to make sure it&#39;s a WAVE file.
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  mmckinfoParent&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;fccType &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; mmioFOURCC&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-character&quot;&gt;&#39;W&#39;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-character&quot;&gt;&#39;A&#39;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-character&quot;&gt;&#39;V&#39;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-character&quot;&gt;&#39;E&#39;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;mmioDescend&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hmmio&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LPMMCKINFO&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;mmckinfoParent&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MMIO_FINDRIFF&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;))
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    MessageBox&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndApp&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;This is not a WAVE file.&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MB_OK &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      MB_ICONEXCLAMATION&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    mmioClose&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hmmio&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* Now, find the format chunk (form type &#39;fmt &#39;). It should be
* a subchunk of the &#39;RIFF&#39; parent chunk.
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  mmckinfoSubchunk&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;ckid &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; mmioFOURCC&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-character&quot;&gt;&#39;f&#39;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-character&quot;&gt;&#39;m&#39;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-character&quot;&gt;&#39;t&#39;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-character&quot;&gt;&#39; &#39;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;mmioDescend&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hmmio&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;mmckinfoSubchunk&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;mmckinfoParent&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MMIO_FINDCHUNK&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;))
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    MessageBox&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndApp&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;WAVE file is corrupted.&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MB_OK &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      MB_ICONEXCLAMATION&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    mmioClose&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hmmio&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* Get the size of the format chunk, allocate and lock memory for it.
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  dwFmtSize &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; mmckinfoSubchunk&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;cksize&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  hFormat &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LocalAlloc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LMEM_MOVEABLE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LOWORD&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;dwFmtSize&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;));
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(!&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hFormat&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    MessageBox&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndApp&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Out of memory.&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MB_OK &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MB_ICONEXCLAMATION&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    mmioClose&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hmmio&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  pFormat &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;WAVEFORMAT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;*)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LocalLock&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hFormat&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(!&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;pFormat&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    MessageBox&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndApp&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Failed to lock memory for format chunk.&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MB_OK 
&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MB_ICONEXCLAMATION&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    LocalFree&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hFormat&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    mmioClose&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hmmio&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* Read the format chunk.
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;mmioRead&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hmmio&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HPSTR&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;pFormat&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; dwFmtSize&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;!=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LONG&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;dwFmtSize&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    MessageBox&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndApp&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Failed to read format chunk.&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MB_OK &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      MB_ICONEXCLAMATION&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    LocalUnlock&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hFormat&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    LocalFree&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hFormat&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    mmioClose&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hmmio&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* Make sure it&#39;s a PCM file.
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;pFormat&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;wFormatTag &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;!=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WAVE_FORMAT_PCM&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    LocalUnlock&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hFormat&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    LocalFree&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hFormat&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    mmioClose&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hmmio&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    MessageBox&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndApp&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;The file is not a PCM file.&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MB_OK &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      MB_ICONEXCLAMATION&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* Make sure a waveform output device supports this format.
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;waveOutOpen&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWaveOut&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WAVE_MAPPER&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LPWAVEFORMAT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;pFormat&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0L&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0L&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    WAVE_FORMAT_QUERY&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;))
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    LocalUnlock&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hFormat&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    LocalFree&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hFormat&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    mmioClose&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hmmio&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    MessageBox&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndApp&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;The waveform device can&#39;t play this format.&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      MB_OK &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MB_ICONEXCLAMATION&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* Ascend out of the format subchunk.
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  mmioAscend&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hmmio&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;mmckinfoSubchunk&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* Find the data subchunk.
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  mmckinfoSubchunk&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;ckid &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; mmioFOURCC&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-character&quot;&gt;&#39;d&#39;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-character&quot;&gt;&#39;a&#39;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-character&quot;&gt;&#39;t&#39;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-character&quot;&gt;&#39;a&#39;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;mmioDescend&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hmmio&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;mmckinfoSubchunk&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;mmckinfoParent&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MMIO_FINDCHUNK&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;))
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    MessageBox&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndApp&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;WAVE file has no data chunk.&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MB_OK &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      MB_ICONEXCLAMATION&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    LocalUnlock&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hFormat&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    LocalFree&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hFormat&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    mmioClose&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hmmio&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* Get the size of the data subchunk.
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  dwDataSize &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; mmckinfoSubchunk&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;cksize&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;dwDataSize &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;==&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0L&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    MessageBox&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndApp&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;The data chunk has no data.&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MB_OK &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      MB_ICONEXCLAMATION&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    LocalUnlock&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hFormat&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    LocalFree&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hFormat&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    mmioClose&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hmmio&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* Open a waveform output device.
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;waveOutOpen&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;((&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LPHWAVEOUT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWaveOut&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WAVE_MAPPER&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LPWAVEFORMAT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;pFormat&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; 
&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;UINT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndApp&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0L&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CALLBACK_WINDOW&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;))
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    MessageBox&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndApp&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Failed to open waveform output device.&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MB_OK &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      MB_ICONEXCLAMATION&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    LocalUnlock&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hFormat&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    LocalFree&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hFormat&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    mmioClose&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hmmio&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* Save block alignment info for later use.
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wBlockSize &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; pFormat&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;nBlockAlign&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* We&#39;re done with the format header, free it.
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  LocalUnlock&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hFormat&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  LocalFree&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hFormat&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* Allocate and lock memory for the waveform data.
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  hData &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; GlobalAlloc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;GMEM_MOVEABLE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; dwDataSize&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* GMEM_SHARE is not needed on 32 bits */
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(!&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hData&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    MessageBox&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndApp&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Out of memory.&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MB_OK &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MB_ICONEXCLAMATION&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    mmioClose&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hmmio&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  lpData &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; GlobalLock&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hData&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(!&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpData&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    MessageBox&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndApp&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Failed to lock memory for data chunk.&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MB_OK &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      MB_ICONEXCLAMATION&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    GlobalFree&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hData&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    mmioClose&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hmmio&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* Read the waveform data subchunk.
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;mmioRead&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hmmio&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HPSTR&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpData&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; dwDataSize&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;!=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LONG&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;dwDataSize&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    MessageBox&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndApp&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Failed to read data chunk.&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MB_OK &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      MB_ICONEXCLAMATION&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    GlobalUnlock&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hData&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    GlobalFree&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hData&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    mmioClose&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hmmio&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* We&#39;re done with the file, close it.
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  mmioClose&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hmmio&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* Reverse the sound for playing.
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  hpch1 &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; lpData&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  hpch2 &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; lpData &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; dwDataSize &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;while&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hpch1 &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hpch2&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    Interchange&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hpch1&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hpch2&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; wBlockSize&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    hpch1 &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; wBlockSize&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    hpch2 &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; wBlockSize&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* Allocate a waveform data header. The WAVEHDR must be
* globally allocated and locked.
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  hWaveHdr &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; GlobalAlloc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;GMEM_MOVEABLE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;DWORD&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;sizeof&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;WAVEHDR&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;));
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(!&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWaveHdr&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    GlobalUnlock&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hData&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    GlobalFree&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hData&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    MessageBox&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndApp&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Not enough memory for header.&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MB_OK &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      MB_ICONEXCLAMATION&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  lpWaveHdr &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LPWAVEHDR&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;GlobalLock&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWaveHdr&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(!&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpWaveHdr&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    GlobalUnlock&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hData&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    GlobalFree&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hData&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    GlobalFree&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWaveHdr&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    MessageBox&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndApp&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Failed to lock memory for header.&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MB_OK &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      MB_ICONEXCLAMATION&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* Allocate and set up instance data for waveform data block.
* This information is needed by the routine that frees the
* data block after it has been played.
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  hWaveInst &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; GlobalAlloc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;GMEM_MOVEABLE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;DWORD&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;sizeof&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;WAVEHDR&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;));
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(!&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWaveInst&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    GlobalUnlock&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hData&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    GlobalFree&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hData&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    GlobalUnlock&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWaveHdr&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    GlobalFree&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWaveHdr&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    MessageBox&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndApp&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Not enough memory for instance data.&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MB_OK &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      MB_ICONEXCLAMATION&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  lpWaveInst &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LPWAVEINST&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;GlobalLock&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWaveInst&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(!&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpWaveInst&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    GlobalUnlock&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hData&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    GlobalFree&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hData&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    GlobalUnlock&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWaveHdr&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    GlobalFree&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWaveHdr&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    GlobalFree&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWaveInst&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    MessageBox&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndApp&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Failed to lock memory for instance data.&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MB_OK
&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MB_ICONEXCLAMATION&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  lpWaveInst&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWaveInst &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hWaveInst&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  lpWaveInst&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWaveHdr &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hWaveHdr&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  lpWaveInst&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWaveData &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hData&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* Set up WAVEHDR structure and prepare it to be written to wave device.
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  lpWaveHdr&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpData &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; lpData&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  lpWaveHdr&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;dwBufferLength &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; dwDataSize&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  lpWaveHdr&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;dwFlags &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0L&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  lpWaveHdr&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;dwLoops &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0L&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  lpWaveHdr&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;dwUser &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;DWORD&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpWaveInst&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;waveOutPrepareHeader&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWaveOut&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; lpWaveHdr&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;sizeof&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;WAVEHDR&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)))
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    GlobalUnlock&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hData&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    GlobalFree&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hData&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    GlobalUnlock&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWaveHdr&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    GlobalFree&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWaveHdr&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    GlobalUnlock&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWaveInst&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    GlobalFree&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWaveInst&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    MessageBox&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndApp&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Unable to prepare wave header.&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MB_OK &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      MB_ICONEXCLAMATION&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* Then the data block can be sent to the output device.
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    MMRESULT mmResult&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    mmResult &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; waveOutWrite&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWaveOut&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; lpWaveHdr&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;sizeof&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;WAVEHDR&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;));
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;mmResult &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;!=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      waveOutUnprepareHeader&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWaveOut&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; lpWaveHdr&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;sizeof&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;WAVEHDR&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;));
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      GlobalUnlock&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hData&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      GlobalFree&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hData&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      MessageBox&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndApp&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Failed to write block to device&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MB_OK &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        MB_ICONEXCLAMATION&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* Disable input to the button controls.
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  EnableWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndPlay&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; FALSE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  EnableWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndQuit&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; FALSE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
}

&lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;/* Interchange - Interchanges two samples at the given positions.
*
* Params:  hpchPos1 - Points to one sample.
*          hpchPos2 - Points to the other sample.
*          wLength  - The length of a sample in bytes.
*
* Return:  void
*/
&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;void&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; Interchange&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HPSTR hpchPos1&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; HPSTR hpchPos2&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;unsigned&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; uLength&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)
{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;unsigned&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; uPlace&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  BYTE bTemp&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;for&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;uPlace &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; uPlace &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; uLength&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; uPlace&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;++)
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    bTemp &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hpchPos1&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;uPlace&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;];
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    hpchPos1&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;uPlace&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hpchPos2&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;uPlace&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;];
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    hpchPos2&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;uPlace&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; bTemp&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}
}

&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;VOID cleanup&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LPWAVEINST lpWaveInst&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)
{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  GlobalUnlock&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpWaveInst&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWaveData&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  GlobalFree&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpWaveInst&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWaveData&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  GlobalUnlock&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpWaveInst&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWaveHdr&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  GlobalFree&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpWaveInst&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWaveHdr&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  GlobalUnlock&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpWaveInst&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWaveInst&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  GlobalFree&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpWaveInst&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWaveInst&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
}
&lt;/span&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://win32secrets.blogspot.com/feeds/1415514460275356638/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://win32secrets.blogspot.com/2009/10/reverse.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/1415514460275356638'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/1415514460275356638'/><link rel='alternate' type='text/html' href='http://win32secrets.blogspot.com/2009/10/reverse.html' title='Reverse'/><author><name>Researcher</name><uri>http://www.blogger.com/profile/10995990336221568904</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6274674188172478645.post-4143168637199354966</id><published>2009-10-29T12:35:00.000-07:00</published><updated>2010-01-17T03:31:58.420-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Controls"/><title type='text'>Slider</title><content type='html'>&lt;span id=&quot;fullpost&quot;&gt;&lt;br /&gt;
&lt;blockquote&gt;#define STRICT&lt;br /&gt;
&lt;br /&gt;
#pragma comment(lib, &quot;comctl32.lib&quot;)&lt;br /&gt;
&lt;br /&gt;
#define ID_SPLITTER    1&lt;br /&gt;
&lt;br /&gt;
#include &lt;windows.h&gt;&lt;br /&gt;
#include &lt;commctrl.h&gt;&lt;br /&gt;
&lt;br /&gt;
LRESULT CALLBACK WndProc(HWND hwnd, UINT iMsg, WPARAM wParam, LPARAM lParam)&lt;br /&gt;
{&lt;br /&gt;
CREATESTRUCT *cs;&lt;br /&gt;
static HWND hWndSlider;&lt;br /&gt;
static DWORD dwPos;&lt;br /&gt;
&lt;br /&gt;
switch (iMsg)&lt;br /&gt;
{&lt;br /&gt;
case WM_CREATE:&lt;br /&gt;
cs = (LPCREATESTRUCT)lParam;&lt;br /&gt;
hWndSlider = CreateWindow(TRACKBAR_CLASS, &quot;&quot;, WS_CHILD | WS_VISIBLE |&lt;br /&gt;
TBS_AUTOTICKS, 10, 50, 200, 20, hwnd, (HMENU)ID_SPLITTER, cs-&gt;hInstance,&lt;br /&gt;
NULL);&lt;br /&gt;
break;&lt;br /&gt;
&lt;br /&gt;
case WM_HSCROLL:&lt;br /&gt;
switch (wParam)&lt;br /&gt;
{&lt;br /&gt;
case TB_THUMBTRACK:&lt;br /&gt;
dwPos = SendMessage(hWndSlider, TBM_GETPOS, 0, 0);&lt;br /&gt;
break;&lt;br /&gt;
}&lt;br /&gt;
break;&lt;br /&gt;
case WM_CLOSE:&lt;br /&gt;
DestroyWindow(hwnd);&lt;br /&gt;
break;&lt;br /&gt;
case WM_DESTROY:&lt;br /&gt;
PostQuitMessage(0);&lt;br /&gt;
break;&lt;br /&gt;
}&lt;br /&gt;
return DefWindowProc(hwnd, iMsg, wParam, lParam);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine,&lt;br /&gt;
int iCmdShow)&lt;br /&gt;
{&lt;br /&gt;
HWND hwnd;&lt;br /&gt;
MSG msg;&lt;br /&gt;
WNDCLASS wndclass;&lt;br /&gt;
char szAppName[] = &quot;Applicatie&quot;;&lt;br /&gt;
&lt;br /&gt;
wndclass.style = 0;&lt;br /&gt;
wndclass.lpfnWndProc = WndProc;&lt;br /&gt;
wndclass.cbClsExtra = 0;&lt;br /&gt;
wndclass.cbWndExtra = 0;&lt;br /&gt;
wndclass.hInstance = hInstance;&lt;br /&gt;
wndclass.hIcon = LoadIcon(hInstance, szAppName);&lt;br /&gt;
wndclass.hCursor = LoadCursor(NULL, IDC_ARROW);&lt;br /&gt;
wndclass.hbrBackground = (HBRUSH)(COLOR_BTNFACE + 1);&lt;br /&gt;
wndclass.lpszMenuName = szAppName;&lt;br /&gt;
wndclass.lpszClassName = szAppName;&lt;br /&gt;
RegisterClass(&amp;wndclass);&lt;br /&gt;
&lt;br /&gt;
InitCommonControls();&lt;br /&gt;
&lt;br /&gt;
hwnd = CreateWindow(szAppName, szAppName, WS_OVERLAPPEDWINDOW | WS_VISIBLE, 0,&lt;br /&gt;
0, 400, 400, NULL, NULL, hInstance, szCmdLine);&lt;br /&gt;
&lt;br /&gt;
while (GetMessage(&amp;msg, NULL, 0, 0))&lt;br /&gt;
{&lt;br /&gt;
TranslateMessage(&amp;msg);&lt;br /&gt;
DispatchMessage(&amp;msg);&lt;br /&gt;
}&lt;br /&gt;
return (int)msg.wParam;&lt;br /&gt;
}&lt;br /&gt;
&lt;/blockquote&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://win32secrets.blogspot.com/feeds/4143168637199354966/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://win32secrets.blogspot.com/2009/10/slider.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/4143168637199354966'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/4143168637199354966'/><link rel='alternate' type='text/html' href='http://win32secrets.blogspot.com/2009/10/slider.html' title='Slider'/><author><name>Researcher</name><uri>http://www.blogger.com/profile/10995990336221568904</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6274674188172478645.post-6768892624006168813</id><published>2009-10-29T12:33:00.000-07:00</published><updated>2010-01-17T03:20:20.697-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Controls"/><title type='text'>DataPicker</title><content type='html'>#define STRICT&lt;br /&gt;
&lt;br /&gt;
#include &lt;windows.h&gt;&lt;br /&gt;
#include &lt;stdio.h&gt;&lt;br /&gt;
#include &lt;commctrl.h&gt;&lt;br /&gt;
&lt;br /&gt;
#pragma comment(lib, &quot;comctl32.lib&quot;)&lt;br /&gt;
&lt;span id=&quot;fullpost&quot;&gt;&lt;br /&gt;
static char szAppName[] = &quot;DatePickerApp&quot;;&lt;br /&gt;
HINSTANCE hInst;&lt;br /&gt;
HWND hwnd;&lt;br /&gt;
&lt;br /&gt;
LRESULT CALLBACK WndProc(HWND hwnd, UINT iMsg, WPARAM wParam, LPARAM lParam)&lt;br /&gt;
{&lt;br /&gt;
  static SYSTEMTIME st;&lt;br /&gt;
  static HWND hWndStartDate, hWndStartTime;&lt;br /&gt;
  static char szDate[15], szTime[10], szStamp[20];&lt;br /&gt;
  NMDATETIMECHANGE *Date;&lt;br /&gt;
&lt;br /&gt;
  switch (iMsg)&lt;br /&gt;
  {&lt;br /&gt;
    case WM_CREATE:&lt;br /&gt;
      GetLocalTime(&amp;st);&lt;br /&gt;
      GetDateFormat(LOCALE_SYSTEM_DEFAULT, 0, &amp;st, &quot;yyyyMMdd&quot;, szDate, sizeof&lt;br /&gt;
        (szDate));&lt;br /&gt;
      GetTimeFormat(LOCALE_SYSTEM_DEFAULT, 0, &amp;st, &quot;HHmmss&quot;, szTime, sizeof&lt;br /&gt;
        (szTime));&lt;br /&gt;
&lt;br /&gt;
      hWndStartDate = CreateWindowEx(0, DATETIMEPICK_CLASS, NULL, WS_BORDER |&lt;br /&gt;
        WS_CHILD | WS_VISIBLE, 10, 10, 100, 25, hwnd, NULL, hInst, NULL);&lt;br /&gt;
&lt;br /&gt;
      hWndStartTime = CreateWindowEx(0, DATETIMEPICK_CLASS, NULL, WS_BORDER |&lt;br /&gt;
        WS_CHILD | WS_VISIBLE | DTS_TIMEFORMAT, 10, 40, 100, 25, hwnd, NULL,&lt;br /&gt;
        hInst, NULL);&lt;br /&gt;
      break;&lt;br /&gt;
&lt;br /&gt;
    case WM_NOTIFY:&lt;br /&gt;
      switch (((LPNMHDR)lParam)-&gt;code)&lt;br /&gt;
      {&lt;br /&gt;
      case DTN_DATETIMECHANGE:&lt;br /&gt;
        Date = (LPNMDATETIMECHANGE)lParam;&lt;br /&gt;
        if (Date-&gt;nmhdr.hwndFrom == hWndStartDate || Date-&gt;nmhdr.hwndFrom ==&lt;br /&gt;
          hWndStartTime)&lt;br /&gt;
        {&lt;br /&gt;
          DateTime_SetRange(hWndStartDate, GDTR_MAX, &amp;st);&lt;br /&gt;
          DateTime_SetRange(hWndStartTime, GDTR_MAX, &amp;st);&lt;br /&gt;
        }&lt;br /&gt;
        break;&lt;br /&gt;
&lt;br /&gt;
      case DTN_DROPDOWN:&lt;br /&gt;
        MonthCal_SetFirstDayOfWeek(DateTime_GetMonthCal(hWndStartDate), 0);&lt;br /&gt;
        break;&lt;br /&gt;
      }&lt;br /&gt;
      break;&lt;br /&gt;
&lt;br /&gt;
    case WM_COMMAND:&lt;br /&gt;
      if (IDCANCEL == LOWORD(wParam))&lt;br /&gt;
      {&lt;br /&gt;
        DateTime_GetSystemtime(hWndStartDate, &amp;st);&lt;br /&gt;
        DateTime_GetSystemtime(hWndStartTime, &amp;st);&lt;br /&gt;
        break;&lt;br /&gt;
      }&lt;br /&gt;
      break;&lt;br /&gt;
&lt;br /&gt;
    case WM_CLOSE:&lt;br /&gt;
      DestroyWindow(hwnd);&lt;br /&gt;
      break;&lt;br /&gt;
&lt;br /&gt;
    case WM_DESTROY:&lt;br /&gt;
      PostQuitMessage(0);&lt;br /&gt;
      break;&lt;br /&gt;
  }&lt;br /&gt;
  return DefWindowProc(hwnd, iMsg, wParam, lParam);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine,&lt;br /&gt;
  int iCmdShow)&lt;br /&gt;
{&lt;br /&gt;
  MSG msg;&lt;br /&gt;
  WNDCLASS wndclass;&lt;br /&gt;
  INITCOMMONCONTROLSEX icex;&lt;br /&gt;
&lt;br /&gt;
  wndclass.style = 0;&lt;br /&gt;
  wndclass.lpfnWndProc = WndProc;&lt;br /&gt;
  wndclass.cbClsExtra = 0;&lt;br /&gt;
  wndclass.cbWndExtra = 0;&lt;br /&gt;
  wndclass.hInstance = hInstance;&lt;br /&gt;
  wndclass.hIcon = LoadIcon(hInstance, szAppName);&lt;br /&gt;
  wndclass.hCursor = LoadCursor(NULL, IDC_ARROW);&lt;br /&gt;
  wndclass.hbrBackground = (HBRUSH)(COLOR_BTNFACE + 1);&lt;br /&gt;
  wndclass.lpszMenuName = szAppName;&lt;br /&gt;
  wndclass.lpszClassName = szAppName;&lt;br /&gt;
  RegisterClass(&amp;wndclass);&lt;br /&gt;
&lt;br /&gt;
  icex.dwSize = sizeof(icex);&lt;br /&gt;
  icex.dwICC = ICC_DATE_CLASSES;&lt;br /&gt;
  InitCommonControlsEx(&amp;icex);&lt;br /&gt;
&lt;br /&gt;
  hwnd = CreateWindow(szAppName, szAppName, WS_OVERLAPPEDWINDOW | WS_VISIBLE, 0,&lt;br /&gt;
    0, 400, 400, NULL, NULL, hInstance, szCmdLine);&lt;br /&gt;
&lt;br /&gt;
  while (GetMessage(&amp;msg, NULL, 0, 0))&lt;br /&gt;
  {&lt;br /&gt;
    TranslateMessage(&amp;msg);&lt;br /&gt;
    DispatchMessage(&amp;msg);&lt;br /&gt;
  }&lt;br /&gt;
  return (int)msg.wParam;&lt;br /&gt;
}&lt;br /&gt;
&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://win32secrets.blogspot.com/feeds/6768892624006168813/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://win32secrets.blogspot.com/2009/10/datapicker.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/6768892624006168813'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/6768892624006168813'/><link rel='alternate' type='text/html' href='http://win32secrets.blogspot.com/2009/10/datapicker.html' title='DataPicker'/><author><name>Researcher</name><uri>http://www.blogger.com/profile/10995990336221568904</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6274674188172478645.post-3802981014922272878</id><published>2009-10-29T12:32:00.000-07:00</published><updated>2010-01-10T10:43:45.622-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Controls"/><title type='text'>RichEdit</title><content type='html'>&lt;style type=&quot;text/css&quot;&gt;&lt;!--body { color: #000000; background-color: #FFFFFF; }.cpp1-assembler { color: #006699; }.cpp1-character { color: #A00000; }.cpp1-comment { color: #008000; }.cpp1-float { color: #0050C0; }.cpp1-hexadecimal { color: #0000A0; }.cpp1-identifier { color: #000000; }.cpp1-illegalchar { color: #FF0000; }.cpp1-number { color: #800080; }.cpp1-octal { color: #006666; }.cpp1-opengl { color: #8000FF; }.cpp1-preprocessor { color: #0000FF; }.cpp1-reservedword { color: #0000FF; }.cpp1-string { color: #800000; }.cpp1-symbol { color: #000080; }.cpp1-whitespace { }--&gt;&lt;/style&gt;&lt;br /&gt;&lt;span class=&quot;fullpost&quot;&gt;&lt;br /&gt;&lt;pre&gt;&lt;code&gt;&lt;span style=&quot;font: 12pt Fixedsys;&quot;&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#define&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; STRICT&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#include&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;windows&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;h&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#include&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;richedit&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;h&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;static&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;char&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szAppName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[]&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;RicheditApp&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;void&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; AddText&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HWND hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;char&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;*&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;szTextIn&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; COLORREF crNewColor&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;char&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;*&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;Text &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;char&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;*)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;malloc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lstrlen&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;szTextIn&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;5&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  CHARFORMAT cf&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; iTotalTextLength &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; GetWindowTextLength&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; iStartPos &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; iTotalTextLength&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; iEndPos&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  strcpy&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;Text&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szTextIn&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  strcat&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;Text&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;\r\n&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  SendMessage&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; EM_SETSEL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;WPARAM&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;iTotalTextLength&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LPARAM&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    iTotalTextLength&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  SendMessage&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; EM_REPLACESEL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;WPARAM&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;BOOL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;FALSE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LPARAM&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LPCSTR&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;Text&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  free&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;Text&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  cf&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;cbSize &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;sizeof&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;CHARFORMAT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  cf&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;dwMask &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CFM_COLOR &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CFM_UNDERLINE &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CFM_BOLD&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  cf&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;dwEffects &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;unsigned&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;long&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)~(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;CFE_AUTOCOLOR &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CFE_UNDERLINE &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CFE_BOLD&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  cf&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;crTextColor &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; crNewColor&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  iEndPos &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; GetWindowTextLength&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  SendMessage&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; EM_SETSEL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;WPARAM&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;iStartPos&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LPARAM&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;iEndPos&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  SendMessage&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; EM_SETCHARFORMAT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;WPARAM&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;UINT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;SCF_SELECTION&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LPARAM&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;cf&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  SendMessage&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; EM_HIDESELECTION&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;WPARAM&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;BOOL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;TRUE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LPARAM&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;BOOL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;FALSE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  SendMessage&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; EM_LINESCROLL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;WPARAM&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LPARAM&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LRESULT CALLBACK WndProc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HWND hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; UINT iMsg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WPARAM wParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LPARAM lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;static&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; HWND hWndEdit&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;static&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; iStartPos&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; iEndPos&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  CHARFORMAT cf&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  CREATESTRUCT &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;*&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;cs&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  RECT rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;switch&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;iMsg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WM_CREATE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      cs &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LPCREATESTRUCT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      hWndEdit &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CreateWindowEx&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;WS_EX_CLIENTEDGE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;RichEdit&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WS_CHILD &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        WS_CLIPCHILDREN &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; ES_WANTRETURN &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; ES_MULTILINE &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WS_VISIBLE &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; ES_LEFT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; cs&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hInstance&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      SendMessage&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWndEdit&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; EM_SETWORDBREAKPROCEX&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;WPARAM&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LPARAM&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      cf&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;cbSize &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;sizeof&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;CHARFORMAT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      cf&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;dwMask &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CFM_FACE &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CFM_SIZE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      cf&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;yHeight &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;180&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      strcpy&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;cf&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;szFaceName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;MS Sans Serif&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      SendMessage&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWndEdit&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; EM_SETCHARFORMAT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;WPARAM&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;UINT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LPARAM&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;cf&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      AddText&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWndEdit&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Hello world&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; RGB&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;164&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;));&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WM_SIZE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      GetClientRect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      MoveWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWndEdit&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;3&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;3&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;right &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;6&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;bottom &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;6&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WM_CLOSE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      DestroyWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WM_DESTROY&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      PostQuitMessage&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; DefWindowProc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; iMsg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; wParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WINAPI WinMain&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HINSTANCE hInstance&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; HINSTANCE hPrevInstance&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; PSTR szCmdLine&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; iCmdShow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  HWND hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  MSG msg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  WNDCLASS wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  HINSTANCE hRichEdit&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;style &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpfnWndProc &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WndProc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;cbClsExtra &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;cbWndExtra &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hInstance &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hInstance&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hIcon &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LoadIcon&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hInstance&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szAppName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hCursor &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LoadCursor&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; IDC_ARROW&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hbrBackground &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HBRUSH&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;COLOR_BTNFACE &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpszMenuName &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szAppName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpszClassName &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szAppName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  RegisterClass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  hRichEdit &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LoadLibrary&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;RICHED32.DLL&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  hwnd &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CreateWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;szAppName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szAppName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WS_OVERLAPPEDWINDOW &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WS_VISIBLE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;400&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;400&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hInstance&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szCmdLine&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;while&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;GetMessage&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;msg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;))&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    TranslateMessage&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;msg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    DispatchMessage&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;msg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  FreeLibrary&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hRichEdit&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;msg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;wParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;}&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://win32secrets.blogspot.com/feeds/3802981014922272878/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://win32secrets.blogspot.com/2009/10/richedit.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/3802981014922272878'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/3802981014922272878'/><link rel='alternate' type='text/html' href='http://win32secrets.blogspot.com/2009/10/richedit.html' title='RichEdit'/><author><name>Researcher</name><uri>http://www.blogger.com/profile/10995990336221568904</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6274674188172478645.post-85433326488481041</id><published>2009-10-29T12:22:00.000-07:00</published><updated>2010-01-10T10:43:45.641-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Controls"/><title type='text'>ListView</title><content type='html'>&lt;style type=&quot;text/css&quot;&gt;&lt;!--body { color: #000000; background-color: #FFFFFF; }.cpp1-assembler { color: #006699; }.cpp1-character { color: #A00000; }.cpp1-comment { color: #008000; }.cpp1-float { color: #0050C0; }.cpp1-hexadecimal { color: #0000A0; }.cpp1-identifier { color: #000000; }.cpp1-illegalchar { color: #FF0000; }.cpp1-number { color: #800080; }.cpp1-octal { color: #006666; }.cpp1-opengl { color: #8000FF; }.cpp1-preprocessor { color: #0000FF; }.cpp1-reservedword { color: #0000FF; }.cpp1-string { color: #800000; }.cpp1-symbol { color: #000080; }.cpp1-whitespace { }--&gt;&lt;/style&gt;&lt;br /&gt;&lt;span class=&quot;fullpost&quot;&gt;&lt;br /&gt;&lt;pre&gt;&lt;code&gt;&lt;span style=&quot;font: 12pt Fixedsys;&quot;&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#include&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;windows&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;h&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#include&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;stdio&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;h&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#include&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;commctrl&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;h&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#pragma&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; comment&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lib&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;comctl32.lib&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#define&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; ID_LISTVIEW    &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;1&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;typedef&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;struct&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;char&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szItemNr&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;8&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;];&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;char&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szItem&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;32&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;];&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;char&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szItemDescription&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;32&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;];&lt;br /&gt;}&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; Item&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;BOOL AdjustListView&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HWND hList&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LV_ITEM &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;*&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lv&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; iItems&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; i &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; iItems&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; iRet&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  ListView_DeleteAllItems&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hList&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  lv&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;mask &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LVIF_TEXT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  lv&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;iSubItem &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  lv&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;pszText &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LPSTR_TEXTCALLBACK&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;while&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;i &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    iRet &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; ListView_InsertItem&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hList&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; lv&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    i&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;--;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; TRUE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LRESULT CALLBACK WndProc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HWND hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; UINT iMsg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WPARAM wParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LPARAM lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;static&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CREATESTRUCT &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;*&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;cs&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;static&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; HWND hWndListView&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;static&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; HFONT hFont&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;static&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LV_ITEM lv&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;static&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; Item ListItem&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;3&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;];&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;static&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;char&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szColumnHeader&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;3&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;][&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;12&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;br /&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Number&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Item&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Description&amp;quot;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;};&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; index&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; iiWidth&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;3&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;];&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  LV_COLUMN lvC&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  RECT rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  LV_DISPINFO &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;*&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lvd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  NMHDR &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;*&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hdr&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;switch&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;iMsg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WM_CREATE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      cs &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;CREATESTRUCT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;*)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      hFont &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CreateFont&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;11&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;500&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; FALSE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; FALSE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; FALSE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; DEFAULT_CHARSET&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        OUT_DEFAULT_PRECIS&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CLIP_CHARACTER_PRECIS&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; PROOF_QUALITY&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; FF_DONTCARE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;br /&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;MS SANS SERIF&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      hWndListView &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CreateWindowEx&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;WS_EX_CLIENTEDGE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WC_LISTVIEW&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        WS_VISIBLE &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WS_CHILD &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LVS_REPORT &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LVS_SHOWSELALWAYS&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HMENU&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;ID_LISTVIEW&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; cs&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hInstance&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      ListView_SetExtendedListViewStyle&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWndListView&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LVS_EX_FULLROWSELECT &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        LVS_EX_GRIDLINES&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      iiWidth&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;60&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      iiWidth&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;100&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      iiWidth&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;2&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;400&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      lvC&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;mask &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LVCF_FMT &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LVCF_WIDTH &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LVCF_TEXT &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LVCF_SUBITEM&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      lvC&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;fmt &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LVCFMT_LEFT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;for&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;index &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; index &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;3&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; index&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;++)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        lvC&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;iSubItem &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; index&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        lvC&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;cx &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; iiWidth&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;index&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;];&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        lvC&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;pszText &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szColumnHeader&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;index&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;];&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        ListView_InsertColumn&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWndListView&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; index&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lvC&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// Add some items here&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      strcpy&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;ListItem&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;szItemNr&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;1&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      strcpy&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;ListItem&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;szItem&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Cat&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      strcpy&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;ListItem&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;szItemDescription&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Pet&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      strcpy&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;ListItem&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;szItemNr&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;2&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      strcpy&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;ListItem&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;szItem&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Dog&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      strcpy&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;ListItem&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;szItemDescription&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Pet&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      AdjustListView&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWndListView&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lv&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; index&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WM_SIZE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      GetClientRect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      MoveWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWndListView&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;3&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;3&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;right &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;6&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;bottom &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;6&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WM_NOTIFY&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;switch&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(((&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LPNMHDR&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;code&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NM_DBLCLK&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        hdr &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;NMHDR FAR&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;*)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hdr&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndFrom &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;==&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hWndListView&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;          index &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; ListView_GetNextItem&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hWndListView&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LVNI_SELECTED&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;          &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;index &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;!=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;          &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;            MessageBox&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; ListItem&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;index&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;szItem&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;br /&gt;              &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Doubleclicked on this item&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MB_OK&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;          &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LVN_GETDISPINFO&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        lvd &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LV_DISPINFO FAR&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;*)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;((((&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LPNMHDR&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndFrom &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;==&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hWndListView&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;))&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;          &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;switch&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lvd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;item&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;iSubItem&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;          &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;          &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;            lvd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;item&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;pszText &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; ListItem&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lvd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;item&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;iItem&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;szItemNr&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;            &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;          &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;            lvd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;item&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;pszText &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; ListItem&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lvd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;item&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;iItem&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;szItem&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;            &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;          &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;2&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;            lvd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;item&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;pszText &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; ListItem&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lvd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;item&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;iItem&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;].&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;szItemDescription&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;            &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;          &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;          &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WM_CLOSE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      DestroyWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WM_DESTROY&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      DeleteObject&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hFont&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      PostQuitMessage&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; DefWindowProc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; iMsg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; wParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WINAPI WinMain&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HINSTANCE hInstance&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; HINSTANCE hPrevInstance&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; PSTR szCmdLine&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; iCmdShow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  HWND hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  MSG msg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  WNDCLASS wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;char&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szAppName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[]&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;ListviewApp&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  INITCOMMONCONTROLSEX icex&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;style &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpfnWndProc &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WndProc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;cbClsExtra &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;cbWndExtra &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hInstance &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hInstance&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hIcon &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LoadIcon&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hInstance&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szAppName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hCursor &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LoadCursor&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; IDC_ARROW&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hbrBackground &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HBRUSH&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;COLOR_BTNFACE &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpszMenuName &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szAppName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpszClassName &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szAppName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  RegisterClass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  icex&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;dwSize &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;sizeof&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;INITCOMMONCONTROLSEX&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  icex&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;dwICC &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; ICC_LISTVIEW_CLASSES&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  InitCommonControlsEx&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;icex&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  hwnd &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CreateWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;szAppName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szAppName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WS_OVERLAPPEDWINDOW &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WS_VISIBLE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;100&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;100&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;600&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;250&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hInstance&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szCmdLine&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;while&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;GetMessage&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;msg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;))&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    TranslateMessage&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;msg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    DispatchMessage&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;msg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;msg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;wParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;}&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://win32secrets.blogspot.com/feeds/85433326488481041/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://win32secrets.blogspot.com/2009/10/listview.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/85433326488481041'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/85433326488481041'/><link rel='alternate' type='text/html' href='http://win32secrets.blogspot.com/2009/10/listview.html' title='ListView'/><author><name>Researcher</name><uri>http://www.blogger.com/profile/10995990336221568904</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6274674188172478645.post-6457293507984219026</id><published>2009-10-29T12:19:00.000-07:00</published><updated>2010-01-10T10:43:45.659-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Controls"/><title type='text'>RightClick-Menu</title><content type='html'>&lt;style type=&quot;text/css&quot;&gt;&lt;!--body { color: #000000; background-color: #FFFFFF; }.cpp1-assembler { color: #006699; }.cpp1-character { color: #A00000; }.cpp1-comment { color: #008000; }.cpp1-float { color: #0050C0; }.cpp1-hexadecimal { color: #0000A0; }.cpp1-identifier { color: #000000; }.cpp1-illegalchar { color: #FF0000; }.cpp1-number { color: #800080; }.cpp1-octal { color: #006666; }.cpp1-opengl { color: #8000FF; }.cpp1-preprocessor { color: #0000FF; }.cpp1-reservedword { color: #0000FF; }.cpp1-string { color: #800000; }.cpp1-symbol { color: #000080; }.cpp1-whitespace { }--&gt;&lt;/style&gt;&lt;br /&gt;&lt;span class=&quot;fullpost&quot;&gt;&lt;br /&gt;&lt;pre&gt;&lt;code&gt;&lt;span style=&quot;font: 12pt Fixedsys;&quot;&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#define&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; STRICT&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#include&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;windows&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;h&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#include&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;stdio&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;h&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#define&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; ID_CUT         &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;1000&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#define&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; ID_COPY        &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;1001&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#define&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; ID_PASTE       &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;1002&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LRESULT CALLBACK WndProc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HWND hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; UINT iMsg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WPARAM wParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LPARAM lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  CREATESTRUCT &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;*&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;cs&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  HMENU hMenu&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  POINT p&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;char&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szText&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;64&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;];&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// Menu-item identifiers &lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;static&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;char&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szMenuItem&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;3&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;][&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;10&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;br /&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Cut&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Copy&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Paste&amp;quot;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;};&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;switch&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;iMsg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WM_CREATE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      cs &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LPCREATESTRUCT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WM_RBUTTONUP&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      p&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;x &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LOWORD&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      p&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;y &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; HIWORD&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      hMenu &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CreatePopupMenu&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;();&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      AppendMenu&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hMenu&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MF_STRING&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; ID_CUT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Cut&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      AppendMenu&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hMenu&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MF_STRING&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; ID_COPY&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Copy&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      AppendMenu&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hMenu&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MF_STRING&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; ID_PASTE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Paste&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      ClientToScreen&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LPPOINT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;p&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      TrackPopupMenu&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hMenu&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; p&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;x&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; p&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;y&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      DestroyMenu&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hMenu&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WM_COMMAND&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;switch&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LOWORD&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;wParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;))&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; ID_CUT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; ID_COPY&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; ID_PASTE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        sprintf&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;szText&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;You chose %s&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szMenuItem&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LOWORD&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;wParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;1000&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;]);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        MessageBox&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szText&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;MenuApp&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MB_OK&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WM_CLOSE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      DestroyWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WM_DESTROY&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      PostQuitMessage&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; DefWindowProc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; iMsg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; wParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WINAPI WinMain&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HINSTANCE hInstance&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; HINSTANCE hPrevInstance&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; PSTR szCmdLine&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; iCmdShow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  HWND hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  MSG msg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  WNDCLASS wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;char&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szAppName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[]&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;RightclickMenuApp&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;style &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpfnWndProc &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WndProc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;cbClsExtra &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;cbWndExtra &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hInstance &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hInstance&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hIcon &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LoadIcon&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hInstance&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szAppName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hCursor &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LoadCursor&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; IDC_ARROW&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hbrBackground &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HBRUSH&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;COLOR_WINDOW &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpszMenuName &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szAppName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpszClassName &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szAppName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  RegisterClass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  hwnd &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CreateWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;szAppName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szAppName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WS_OVERLAPPEDWINDOW &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WS_VISIBLE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;400&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;400&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hInstance&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szCmdLine&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;while&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;GetMessage&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;msg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;))&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    TranslateMessage&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;msg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    DispatchMessage&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;msg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;msg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;wParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;}&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://win32secrets.blogspot.com/feeds/6457293507984219026/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://win32secrets.blogspot.com/2009/10/rightclick-menu.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/6457293507984219026'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/6457293507984219026'/><link rel='alternate' type='text/html' href='http://win32secrets.blogspot.com/2009/10/rightclick-menu.html' title='RightClick-Menu'/><author><name>Researcher</name><uri>http://www.blogger.com/profile/10995990336221568904</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6274674188172478645.post-4052793385244131859</id><published>2009-10-28T07:35:00.000-07:00</published><updated>2010-01-10T10:43:45.705-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Controls"/><title type='text'>Splitter</title><content type='html'>&lt;style type=&quot;text/css&quot;&gt;&lt;!--body { color: #000000; background-color: #FFFFFF; }.cpp1-assembler { color: #006699; }.cpp1-character { color: #A00000; }.cpp1-comment { color: #008000; }.cpp1-float { color: #0050C0; }.cpp1-hexadecimal { color: #0000A0; }.cpp1-identifier { color: #000000; }.cpp1-illegalchar { color: #FF0000; }.cpp1-number { color: #800080; }.cpp1-octal { color: #006666; }.cpp1-opengl { color: #8000FF; }.cpp1-preprocessor { color: #0000FF; }.cpp1-reservedword { color: #0000FF; }.cpp1-string { color: #800000; }.cpp1-symbol { color: #000080; }.cpp1-whitespace { }--&gt;&lt;/style&gt;&lt;br /&gt;&lt;span class=&quot;fullpost&quot;&gt;&lt;br /&gt;&lt;pre&gt;&lt;code&gt;&lt;span style=&quot;font: 12pt Fixedsys;&quot;&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#include&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;windows&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;h&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#define&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MINSIZE        &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;50&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;br /&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// The minimal width and height a childwindow should have&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#define&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; SBS            &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;2&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// Short for SplitterBarSize&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LRESULT CALLBACK WndProc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HWND hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; UINT iMsg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WPARAM wParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LPARAM lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;static&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; HWND hwndChild1&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hwndChild2&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hwndChild3&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;static&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CREATESTRUCT &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;*&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;cs&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;static&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; HCURSOR hcSizeNS&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hcSizeEW&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hcArrow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;static&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; xDiv&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; yDiv&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;static&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; BOOL xSizing&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; ySizing&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; xPos&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; yPos&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  RECT rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; focusrect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  HDC hdc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;switch&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;iMsg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WM_CREATE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      cs &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;CREATESTRUCT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;*)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      xDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;300&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      yDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;300&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      hwndChild1 &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CreateWindowEx&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;WS_EX_CLIENTEDGE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Pane 1&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Child 1&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        WS_CHILD &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WS_VISIBLE &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WS_CLIPCHILDREN&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; cs&lt;br /&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hInstance&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      hwndChild2 &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CreateWindowEx&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;WS_EX_CLIENTEDGE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Pane 2&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Child 2&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        WS_CHILD &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WS_VISIBLE &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WS_CLIPCHILDREN&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; cs&lt;br /&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hInstance&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      hwndChild3 &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CreateWindowEx&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;WS_EX_CLIENTEDGE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Pane 3&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Child 3&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        WS_CHILD &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WS_VISIBLE &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WS_CLIPCHILDREN&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; cs&lt;br /&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hInstance&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      hcSizeNS &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LoadCursor&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; IDC_SIZENS&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      hcSizeEW &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LoadCursor&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; IDC_SIZEWE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      hcArrow &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LoadCursor&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; IDC_ARROW&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WM_SIZE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      GetClientRect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// Make sure splitterbars are visible&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;xDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;right &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MINSIZE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        xDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;right &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MINSIZE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;else&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;xDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MINSIZE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        xDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MINSIZE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;yDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;bottom &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MINSIZE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        yDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;bottom &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MINSIZE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;else&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;yDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MINSIZE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        yDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MINSIZE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      MoveWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndChild1&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;left&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;top &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;left &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; xDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; SBS&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;top &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; yDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; SBS&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; FALSE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      MoveWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndChild2&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;left &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; xDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; SBS&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;top &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;right &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;left &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; xDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; SBS&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;top &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; yDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; SBS&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; FALSE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      MoveWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndChild3&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;left&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;top &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; yDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; SBS&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;right &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;left&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;bottom &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; top &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; yDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; SBS&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; FALSE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      InvalidateRect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; TRUE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WM_LBUTTONDOWN&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      xPos &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LOWORD&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      yPos &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HIWORD&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      xSizing &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;xPos &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; xDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; SBS &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; xPos &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; xDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; SBS&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      ySizing &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;yPos &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; yDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; SBS &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; yPos &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; yDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; SBS&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;xSizing &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;||&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; ySizing&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        SetCapture&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// Track movement of the mousepointer &lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;xSizing&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;          SetCursor&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hcSizeEW&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;else&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;ySizing&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;          SetCursor&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hcSizeNS&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WM_LBUTTONUP&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;xSizing &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;||&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; ySizing&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        ReleaseCapture&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;();&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        hdc &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; GetDC&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        GetClientRect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;xSizing&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;          SetRect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;focusrect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; xDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; SBS&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;top&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; xDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; SBS&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; yDiv&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;          DrawFocusRect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hdc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;focusrect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;          xSizing &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; FALSE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;ySizing&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;          SetRect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;focusrect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;left &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; yDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; SBS&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;right&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; yDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; SBS&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;            &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;          DrawFocusRect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hdc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;focusrect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;          ySizing &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; FALSE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        ReleaseDC&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hdc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// Post a size message so the childwindows get their new size&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      PostMessage&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WM_SIZE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WM_MOUSEMOVE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      xPos &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LOWORD&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      yPos &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HIWORD&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;wParam &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;==&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; MK_LBUTTON&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// Is one of the splitterbars being moved?&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;xSizing &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;||&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; ySizing&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;          hdc &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; GetDC&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;          GetClientRect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;          &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;xSizing&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;          &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;            SetRect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;focusrect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; xDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; SBS&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;top&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; xDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; SBS&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; yDiv&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;            DrawFocusRect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hdc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;focusrect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;            xDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; xPos&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;            SetRect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;focusrect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; xDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; SBS&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;top&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; xDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; SBS&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; yDiv&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;            DrawFocusRect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hdc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;focusrect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;          &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;          &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;ySizing&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;          &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;            SetRect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;focusrect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;left &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; yDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; SBS&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;right&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; yDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;              SBS&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;            DrawFocusRect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hdc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;focusrect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;            yDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; yPos&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;            SetRect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;focusrect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;left &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; yDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; SBS&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; rect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;right&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; yDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;              SBS&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;            DrawFocusRect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hdc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;focusrect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;          &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;          ReleaseDC&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hdc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// Leave&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;((&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;xPos &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; xDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; SBS &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; xPos &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; xDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; SBS&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; GetCursor&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;()&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;!=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hcSizeEW&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        SetCursor&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hcSizeEW&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// hovering above the vertical splitterbar&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;else&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;((&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;yPos &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; yDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; SBS &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; yPos &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; yDiv &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; SBS&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; GetCursor&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;()&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;!=&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        hcSizeNS&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        SetCursor&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hcSizeNS&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// hovering above the horizontal splitterbar&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;else&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;GetCursor&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;()&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;!=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hcArrow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        SetCursor&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hcArrow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// not hovering above a splitterbar&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WM_CLOSE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      DestroyWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WM_DESTROY&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      PostQuitMessage&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; DefWindowProc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; iMsg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; wParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LRESULT CALLBACK Child1WndProc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HWND hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; UINT iMsg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WPARAM wParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LPARAM&lt;br /&gt;  lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;switch&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;iMsg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WM_CREATE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; DefWindowProc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; iMsg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; wParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LRESULT CALLBACK Child2WndProc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HWND hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; UINT iMsg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WPARAM wParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LPARAM&lt;br /&gt;  lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;switch&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;iMsg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WM_CREATE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; DefWindowProc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; iMsg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; wParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LRESULT CALLBACK Child3WndProc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HWND hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; UINT iMsg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WPARAM wParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LPARAM&lt;br /&gt;  lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;switch&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;iMsg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WM_CREATE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; DefWindowProc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; iMsg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; wParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WINAPI WinMain&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HINSTANCE hInstance&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; HINSTANCE hPrevInstance&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; PSTR szCmdLine&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; iCmdShow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  HWND hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  MSG msg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  WNDCLASS wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;char&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szAppName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[]&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;SplitterApp&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;style &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpfnWndProc &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WndProc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;cbClsExtra &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;cbWndExtra &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hInstance &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hInstance&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hIcon &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LoadIcon&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hInstance&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szAppName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hCursor &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LoadCursor&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; IDC_ARROW&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hbrBackground &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HBRUSH&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;COLOR_BTNFACE &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpszMenuName &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szAppName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpszClassName &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szAppName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  RegisterClass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpfnWndProc &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; Child1WndProc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hbrBackground &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HBRUSH&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;COLOR_WINDOW &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpszClassName &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Pane 1&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  RegisterClass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpfnWndProc &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; Child2WndProc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpszClassName &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Pane 2&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  RegisterClass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpfnWndProc &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; Child3WndProc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpszClassName &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Pane 3&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  RegisterClass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  hwnd &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CreateWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;szAppName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szAppName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WS_OVERLAPPEDWINDOW &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; SW_MAXIMIZE &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    WS_VISIBLE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;600&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;500&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hInstance&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; szCmdLine&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;while&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;GetMessage&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;msg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;))&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    TranslateMessage&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;msg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    DispatchMessage&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;msg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;msg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;wParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;}&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://win32secrets.blogspot.com/feeds/4052793385244131859/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://win32secrets.blogspot.com/2009/10/splitter.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/4052793385244131859'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/4052793385244131859'/><link rel='alternate' type='text/html' href='http://win32secrets.blogspot.com/2009/10/splitter.html' title='Splitter'/><author><name>Researcher</name><uri>http://www.blogger.com/profile/10995990336221568904</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6274674188172478645.post-1793030369779702626</id><published>2009-10-22T14:15:00.000-07:00</published><updated>2010-01-17T03:14:08.705-08:00</updated><title type='text'>Part 1: Compile with MASM</title><content type='html'>&lt;style type=&quot;text/css&quot;&gt;&lt;!--body { color: #000000; background-color: #FFFFFF; }.cpp1-assembler { color: #006699; }.cpp1-character { color: #A00000; }.cpp1-comment { color: #008000; }.cpp1-float { color: #0050C0; }.cpp1-hexadecimal { color: #0000A0; }.cpp1-identifier { color: #000000; }.cpp1-illegalchar { color: #FF0000; }.cpp1-number { color: #800080; }.cpp1-octal { color: #006666; }.cpp1-opengl { color: #8000FF; }.cpp1-preprocessor { color: #0000FF; }.cpp1-reservedword { color: #0000FF; }.cpp1-string { color: #800000; }.cpp1-symbol { color: #000080; }.cpp1-whitespace { }--&gt;&lt;/style&gt;&lt;br /&gt;&lt;br /&gt;Create a file name test.asm&lt;br /&gt;&lt;span class=&quot;fullpost&quot;&gt;&lt;br /&gt;&lt;pre&gt;&lt;code&gt;&lt;span style=&quot;font: 12pt Fixedsys;&quot;&gt;&lt;span class=&quot;cpp1-float&quot;&gt;.486&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;model flat&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; stdcall &lt;br /&gt;option casemap &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;none &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;MessageBoxA PROTO STDCALL &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;DWORD&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;DWORD&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;DWORD&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;DWORD &lt;br /&gt;ExitProcess PROTO STDCALL &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;DWORD &lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;data &lt;br /&gt;     ttl db &lt;/span&gt;&lt;span class=&quot;cpp1-character&quot;&gt;&#39;11111&#39;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;code &lt;br /&gt;start&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;br /&gt;     invoke MessageBoxA&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;offset ttl&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;offset ttl&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;br /&gt;     invoke ExitProcess&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;br /&gt;end start &lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;Now compile and link with command:&lt;br /&gt;&lt;pre&gt;&lt;code&gt;&lt;span style=&quot;font: 12pt Fixedsys;&quot;&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;ml &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;coff test&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;asm&lt;/span&gt;&lt;span class=&quot;cpp1-assembler&quot;&gt; /link kernel32.lib user32.lib&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://win32secrets.blogspot.com/feeds/1793030369779702626/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://win32secrets.blogspot.com/2009/10/part-1-compile-with-masm.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/1793030369779702626'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/1793030369779702626'/><link rel='alternate' type='text/html' href='http://win32secrets.blogspot.com/2009/10/part-1-compile-with-masm.html' title='Part 1: Compile with MASM'/><author><name>Researcher</name><uri>http://www.blogger.com/profile/10995990336221568904</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6274674188172478645.post-7651440759057004714</id><published>2009-10-21T10:54:00.000-07:00</published><updated>2010-01-10T10:43:45.745-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Hooking"/><title type='text'>WH_CBT Hooking</title><content type='html'>&lt;style type=&quot;text/css&quot;&gt;&lt;!--body { color: #000000; background-color: #FFFFFF; }.cpp1-assembler { color: #006699; }.cpp1-character { color: #A00000; }.cpp1-comment { color: #008000; }.cpp1-float { color: #0050C0; }.cpp1-hexadecimal { color: #0000A0; }.cpp1-identifier { color: #000000; }.cpp1-illegalchar { color: #FF0000; }.cpp1-number { color: #800080; }.cpp1-octal { color: #006666; }.cpp1-opengl { color: #8000FF; }.cpp1-preprocessor { color: #0000FF; }.cpp1-reservedword { color: #0000FF; }.cpp1-string { color: #800000; }.cpp1-symbol { color: #000080; }.cpp1-whitespace { }--&gt;&lt;/style&gt;&lt;br /&gt;If you want to monitor programs in your computer: which programs execute, activate, or destroy , use the hook type WH_CBT.&lt;br /&gt;&lt;span class=&quot;fullpost&quot;&gt;&lt;br /&gt;The following messages are captured: &lt;br /&gt;&lt;blockquote&gt;HCBT_ACTIVATE — program is activated &lt;br /&gt;HCBT_CREATEWND — new window is created; &lt;br /&gt;HCBT_DESTROYWND — exsist window is destroyed; &lt;br /&gt;HCBT_MINMAX ; &lt;br /&gt;HCBT_MOVESIZE &lt;br /&gt;&lt;/blockquote&gt;Here&#39; s the sample code of the DLL .&lt;br /&gt;&lt;blockquote&gt;&lt;pre&gt;&lt;code&gt;&lt;span style=&quot;font: 12pt Fixedsys;&quot;&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// FileMonitor.cpp : Defines the entry point for the DLL application.&lt;br /&gt;//&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#include&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;windows&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;h&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HHOOK SysHook&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HINSTANCE hInst&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;BOOL APIENTRY DllMain&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HANDLE hModule&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; DWORD ul_reason_for_call&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LPVOID&lt;br /&gt;  lpReserved&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  hInst &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HINSTANCE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hModule&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; TRUE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LRESULT CALLBACK SysMsgProc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; code&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// hook code&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;WPARAM wParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// removal flag&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LPARAM lParam  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// address of structure with message&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;{&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;br /&gt;  CallNextHookEx&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;SysHook&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; code&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; wParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;code &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;==&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; HCBT_ACTIVATE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;char&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; windtext&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;255&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;];&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    HWND Wnd &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;((&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;tagMSG&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;*)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    GetWindowText&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;Wnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; windtext&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;255&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// Here you can save active window title    &lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;code &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;==&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; HCBT_CREATEWND&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;char&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; windtext&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;255&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;];&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    HWND Wnd &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;((&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;tagMSG&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;*)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    GetWindowText&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;Wnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; windtext&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;255&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// Here you can save New file title    &lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;///////////////////////////////////////////////////////////////////&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;extern&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;C&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;__declspec&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;dllexport&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;void&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; RunStopHook&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;bool&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; State&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; HINSTANCE hInstance&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;true&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    SysHook &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; SetWindowsHookEx&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;WH_CBT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;SysMsgProc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hInst&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;else&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    UnhookWindowsHookEx&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;SysHook&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;}&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/blockquote&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://win32secrets.blogspot.com/feeds/7651440759057004714/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://win32secrets.blogspot.com/2009/10/whcbt-hooking.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/7651440759057004714'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/7651440759057004714'/><link rel='alternate' type='text/html' href='http://win32secrets.blogspot.com/2009/10/whcbt-hooking.html' title='WH_CBT Hooking'/><author><name>Researcher</name><uri>http://www.blogger.com/profile/10995990336221568904</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6274674188172478645.post-5101309933695345112</id><published>2009-10-21T10:28:00.000-07:00</published><updated>2010-01-17T03:22:22.628-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="UnmanagedCode"/><title type='text'>Dynamic Stack Allocation</title><content type='html'>&lt;style type=&quot;text/css&quot;&gt;&lt;!--body { color: #000000; background-color: #FFFFFF; }.cpp1-assembler { color: #006699; }.cpp1-character { color: #A00000; }.cpp1-comment { color: #008000; }.cpp1-float { color: #0050C0; }.cpp1-hexadecimal { color: #0000A0; }.cpp1-identifier { color: #000000; }.cpp1-illegalchar { color: #FF0000; }.cpp1-number { color: #800080; }.cpp1-octal { color: #006666; }.cpp1-opengl { color: #8000FF; }.cpp1-preprocessor { color: #0000FF; }.cpp1-reservedword { color: #0000FF; }.cpp1-string { color: #800000; }.cpp1-symbol { color: #000080; }.cpp1-whitespace { }--&gt;&lt;/style&gt;&lt;br /&gt;
You want to dynamically allocate memory from stack ?&lt;br /&gt;
&lt;br /&gt;
Now use &lt;b&gt;DllImport &lt;/b&gt;and &lt;b&gt;stackalloc&lt;/b&gt; to implement this function.&lt;br /&gt;
Remember that the allocated memory block doesn&#39;t participate into the garbage collector&#39;s process.&lt;br /&gt;
&lt;span id=&quot;fullpost&quot;&gt;&lt;br /&gt;
&lt;blockquote&gt;&lt;pre&gt;&lt;code&gt;&lt;span style=&quot;font: 12pt Fixedsys;&quot;&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;using&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; System&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;using&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; System&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;Runtime&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;InteropServices&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;namespace&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; StackAllocation
&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;class&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; StackAllocator
&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; 
&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;DllImport&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;kernel32.dll&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)]
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;static&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;extern&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; unsafe &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;bool&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; GetComputerNameW&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;char&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;*&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; name&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; ref ulong size&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;STAThread&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;]
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;static&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; unsafe &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;void&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; Main&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;string&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[]&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; args&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;   ulong size &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;256&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;   &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;char&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;*&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; name &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; stackalloc &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;char&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;size&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;];
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;   &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;bool&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; success &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; GetComputerNameW&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;name&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; ref size&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;   &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;for&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;uint i &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; i &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; size&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; i&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;++,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; name&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;++)
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;   &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    System&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;Console&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;Write&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(*&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;name&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;   &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;   System&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;Console&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;WriteLine&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;();
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}
}
&lt;/span&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/blockquote&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://win32secrets.blogspot.com/feeds/5101309933695345112/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://win32secrets.blogspot.com/2009/10/dynamic-stack-allocation.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/5101309933695345112'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/5101309933695345112'/><link rel='alternate' type='text/html' href='http://win32secrets.blogspot.com/2009/10/dynamic-stack-allocation.html' title='Dynamic Stack Allocation'/><author><name>Researcher</name><uri>http://www.blogger.com/profile/10995990336221568904</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6274674188172478645.post-859953208763895367</id><published>2009-10-20T19:35:00.000-07:00</published><updated>2010-01-10T10:43:45.868-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="CodingStyles"/><title type='text'>C# Coding Style</title><content type='html'>&lt;p&gt;Here I offer some general coding styles for reference, you can get these C# coding standards documents freely available on the Internet.&lt;/p&gt;&lt;span class=&quot;fullpost&quot;&gt;&lt;br /&gt;&lt;font face=&quot;Verdana&quot; size=&quot;2&quot;&gt;&lt;br /&gt;&lt;table width=&quot;100%&quot; bgcolor=&quot;#0080ff&quot;&gt;  &lt;tr&gt; &lt;td&gt;&lt;font color=&quot;#FFFFFF&quot; Size=&quot;4&quot;&gt;&lt;b&gt;C# Coding Style&lt;/b&gt;&lt;/font&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;&lt;p&gt;1. &lt;b&gt;Kr&amp;uuml;ger&lt;/b&gt;&lt;/p&gt;&lt;p style=&quot;margin-left: 10pt&quot;&gt;This &lt;i&gt;C# Coding Style Cuide&lt;/i&gt; is based on the layout style devised by Mike Kr&amp;uuml;ger. The PDF format document is available &lt;a href=&quot;http://www.icsharpcode.net/TechNotes/SharpDevelopCodingStyle03.pdf&quot; target=&quot;_blank&quot;&gt;here&lt;/a&gt;. This document may be read as a guide to writing robust and reliable programs.&lt;/p&gt;&lt;p&gt;2. &lt;b&gt;Ahmed&lt;/b&gt;&lt;/p&gt;&lt;p style=&quot;margin-left: 10pt&quot;&gt;This Ahmed style is based on the layout style outlined of &lt;a href=&quot;http://www.csharpfriends.com/Articles/getArticle.aspx?articleID=336&quot; target=&quot;_blank&quot;&gt;C# Coding Style Guide of Salman Ahmed&lt;/a&gt;. This document is a nice guide to writing robust and reliable C# programs for beginners.&lt;/p&gt;&lt;br&gt;&lt;br /&gt;&lt;/font&gt;&lt;br /&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://win32secrets.blogspot.com/feeds/859953208763895367/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://win32secrets.blogspot.com/2009/10/c-coding-style.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/859953208763895367'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/859953208763895367'/><link rel='alternate' type='text/html' href='http://win32secrets.blogspot.com/2009/10/c-coding-style.html' title='C# Coding Style'/><author><name>Researcher</name><uri>http://www.blogger.com/profile/10995990336221568904</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6274674188172478645.post-7282947454699007911</id><published>2009-10-20T19:32:00.000-07:00</published><updated>2010-01-10T10:43:45.879-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="CodingStyles"/><title type='text'>Java Coding Style</title><content type='html'>&lt;p&gt;Here I offer some general coding styles for reference, you can get these Java coding standards documents freely available on the Internet.&lt;/p&gt;&lt;span class=&quot;fullpost&quot;&gt;&lt;br /&gt;&lt;font face=&quot;Verdana&quot; size=&quot;2&quot;&gt;&lt;br /&gt;&lt;table width=&quot;100%&quot; bgcolor=&quot;#0080ff&quot;&gt;  &lt;tr&gt; &lt;td&gt;&lt;font color=&quot;#FFFFFF&quot; Size=&quot;4&quot;&gt;&lt;b&gt;Java Coding Style&lt;/b&gt;&lt;/font&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;&lt;p&gt;1. &lt;b&gt;Sun&lt;/b&gt;&lt;/p&gt;&lt;p style=&quot;margin-left: 10pt&quot;&gt;This coding style is based on the layout style devised by Sun Microsystems, Inc. The PDF format document is available &lt;a href=&quot;http://wwws.sun.com/software/sundev/whitepapers/java-style.pdf&quot; target=&quot;_blank&quot;&gt;here&lt;/a&gt;. It is the authoritative document of Java. &lt;a href=&quot;http://java.sun.com/docs/codeconv/html/CodeConvTOC.doc.html&quot; target=&quot;_blank&quot;&gt;Here&lt;/a&gt; is the HTML format.&lt;/p&gt;&lt;p&gt;2. &lt;b&gt;AmbySoft&lt;/b&gt;&lt;/p&gt;&lt;p style=&quot;margin-left: 10pt&quot;&gt;This AmbySoft style is based on the layout style outlined of &lt;a href=&quot;http://www.ambysoft.com/javaCodingStandards.pdf&quot; target=&quot;_blank&quot;&gt;Coding standards for Java (PDF)&lt;/a&gt; and &lt;a href=&quot;http://gee.cs.oswego.edu/dl/html/javaCodingStd.html&quot;&gt;AmbySoft Java Coding Standard&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;3. &lt;b&gt;Sandvik&lt;/b&gt;&lt;/p&gt;&lt;p style=&quot;margin-left: 10pt&quot;&gt;This coding style is based on a combination of the layout of the source code generated by the &lt;a href=&quot;http://www.infospheres.caltech.edu/resources/ code_standards/java_standard.html&quot; target=&quot;_blank&quot;&gt;Kent Sandvik&#39;s Java Coding Style Guidelines&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;4. &lt;b&gt;Java Ranch&lt;/b&gt;&lt;/p&gt;&lt;p style=&quot;margin-left: 10pt&quot;&gt;This coding style is based on the layout style outlined in the &lt;a href=&quot;http://www.javaranch.com/style.jsp&quot; target=&quot;_blank&quot;&gt;Java Ranch&lt;/a&gt;. They think the official coding standards in Sun&#39;s style guide are dumb, this is their style.&lt;/p&gt;&lt;p&gt;5. &lt;b&gt;Netscape&lt;/b&gt;&lt;/p&gt;&lt;p style=&quot;margin-left: 10pt&quot;&gt;&lt;a href=&quot;http://developer.netscape.com/docs/technote/java/codestyle.html&quot; target=&quot;_blank&quot;&gt;The Netscape&#39;s Software Coding Standards Guide for Java&lt;/a&gt;, maybe useful for you.&lt;/p&gt;&lt;br&gt;&lt;br /&gt;&lt;/font&gt;&lt;br /&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://win32secrets.blogspot.com/feeds/7282947454699007911/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://win32secrets.blogspot.com/2009/10/java-coding-style.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/7282947454699007911'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/7282947454699007911'/><link rel='alternate' type='text/html' href='http://win32secrets.blogspot.com/2009/10/java-coding-style.html' title='Java Coding Style'/><author><name>Researcher</name><uri>http://www.blogger.com/profile/10995990336221568904</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6274674188172478645.post-1886753548995662724</id><published>2009-10-20T19:28:00.000-07:00</published><updated>2010-01-10T10:43:45.890-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="CodingStyles"/><title type='text'>C and C++ Coding Styles</title><content type='html'>You can get these C/C++ coding standards documents freely available on the Internet.&lt;br /&gt;&lt;span class=&quot;fullpost&quot;&gt;&lt;br /&gt;&lt;font face=&quot;Verdana&quot; size=&quot;2&quot;&gt;&lt;br /&gt;&lt;table width=&quot;100%&quot; bgcolor=&quot;#0080ff&quot;&gt;&lt;tr&gt;  &lt;td&gt;&lt;font color=&quot;#FFFFFF&quot; Size=&quot;4&quot;&gt;&lt;b&gt;C/C++ Coding Style&lt;/b&gt;&lt;/font&gt;&lt;/td&gt;   &lt;/tr&gt;&lt;/table&gt;&lt;p&gt;You can get these C/C++ coding standards documents freely available on the Internet.&lt;/p&gt;&lt;p&gt;1. &lt;b&gt;Stroustrup&lt;/b&gt;&lt;/p&gt;&lt;p style=&quot;margin-left: 10pt&quot;&gt;The classic Stroustrup style for C++ code as shown in the code samples from his bible &lt;i&gt;The C++ Programming Language&lt;/i&gt;. It is a C++ version of the classic &quot;K&amp;R&quot; (Kernighan and Ritchie) C formatting style. Bjarne Stroustrup&#39;s C++ Style and Technique FAQ is available &lt;a href=&quot;http://www.research.att.com/~bs/bs_faq2.html&quot; target=&quot;_blank&quot;&gt;here&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;2. &lt;b&gt;Possibility&lt;/b&gt;&lt;/p&gt;&lt;p style=&quot;margin-left: 10pt&quot;&gt;This coding style is based on the layout style outlined in the C++ Coding Standard document written by &lt;a href=&quot;http://www.possibility.com/Cpp/CppCodingStandard.html&quot; target=&quot;_blank&quot;&gt;Todd Hoff of Possibility Outpost, Inc.&lt;/a&gt;&lt;/p&gt;&lt;p&gt;3. &lt;b&gt;MFC&lt;/b&gt;&lt;/p&gt;&lt;p style=&quot;margin-left: 10pt&quot;&gt;This coding style is based on a combination of the layout of the source code generated by the Microsoft Visual C++ Class Wizard and the layout of the MFC source itself.&lt;/p&gt;&lt;p&gt;4. &lt;b&gt;Ellemtel&lt;/b&gt;&lt;/p&gt;&lt;p style=&quot;margin-left: 10pt&quot;&gt;This coding style is based on the layout style devised by Mats Henricson and Erik Nyquist while they worked at Ellemtel Telecommunications in Sweden. It is available in it&#39;s entirety &lt;a href=&quot;http://www.cs.umd.edu/users/cml/cstyle/Ellemtel-rules.html&quot; target=&quot;_blank&quot;&gt;here&lt;/a&gt;. It has also been rewritten as a book for Prentice Hall called &quot;Industrial Strength C++&quot; (ISBN: 0131209655).&lt;/p&gt;&lt;p&gt;5. &lt;b&gt;GNU&lt;/b&gt;&lt;/p&gt;&lt;p style=&quot;margin-left: 10pt&quot;&gt;This coding style is based on the layout style outlined in the &lt;a href=&quot;http://www.gnu.org/prep/standards_toc.html&quot; target=&quot;_blank&quot;&gt;GNU Coding Standard&lt;/a&gt; and the C++ ammendments from the &lt;a href=&quot;http://gcc.gnu.org/onlinedocs/libstdc++/17_intro/C++STYLE&quot; target=&quot;_blank&quot;&gt;C++ Standard Library Style Guidelines&lt;/a&gt;. It&#39;s the coding style of Richard Stallman too.&lt;/p&gt;&lt;p&gt;6. &lt;b&gt;Mozilla&lt;/b&gt;&lt;/p&gt;&lt;p style=&quot;margin-left: 10pt&quot;&gt;This coding style is based on the layout style outlined in the &lt;a href=&quot;http://www.mozilla.org/hacking/portable-cpp.html&quot; target=&quot;_blank&quot;&gt;Mozilla C++ portability guide &lt;/a&gt; of David Williams.&lt;/p&gt;&lt;p&gt;7. &lt;b&gt;Indhill&lt;/b&gt;&lt;/p&gt;&lt;p style=&quot;margin-left: 10pt&quot;&gt;This coding style is based on the layout style outlined of &lt;i&gt;Indian Hill C Style and Coding Stan-dards paper&lt;/i&gt;, the authors of it are Bell Labs, University of Toronto, Berkeley University &amp; SoftQuad Incorporated.&lt;/p&gt;&lt;p&gt;8. &lt;b&gt;Whitesmith&lt;/b&gt;&lt;/p&gt;&lt;p style=&quot;margin-left: 10pt&quot;&gt;Popularized by the examples that came with Whitesmith&#39;s C, an early commercial C compiler. This style is known as an &quot;Indented Braces&quot; style. Information on Whitesmith&#39;s and other styles can be found &lt;a href=&quot;http://www.tjhsst.edu/compsci/cpp/intro/style.html&quot; target=&quot;_blank&quot;&gt;here&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;9. &lt;b&gt;Wildfire&lt;/b&gt;&lt;/p&gt;&lt;p style=&quot;margin-left: 10pt&quot;&gt;This coding style is based on the layout style documented in the Wildfire C++ Programming Style by Keith Gabryelski. This document is available &lt;a href=&quot;http://www.cs.umd.edu/users/cml/cstyle/Wildfire-C++Style.html&quot; target=&quot;_blank&quot;&gt;here&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;10. &lt;b&gt;Flipcode&lt;/b&gt;&lt;/p&gt;&lt;p style=&quot;margin-left: 10pt&quot;&gt;This coding style is based on the style of Albert Sandberg. This document is available &lt;a href=&quot;http://www.flipcode.com/articles/article_codingstyle.shtml&quot; target=&quot;_blank&quot;&gt;here&lt;/a&gt;.&lt;/p&gt;&lt;br /&gt;&lt;/font&gt;&lt;br /&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://win32secrets.blogspot.com/feeds/1886753548995662724/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://win32secrets.blogspot.com/2009/10/c-and-c-coding-styles.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/1886753548995662724'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/1886753548995662724'/><link rel='alternate' type='text/html' href='http://win32secrets.blogspot.com/2009/10/c-and-c-coding-styles.html' title='C and C++ Coding Styles'/><author><name>Researcher</name><uri>http://www.blogger.com/profile/10995990336221568904</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6274674188172478645.post-2466858854145396262</id><published>2009-10-20T17:55:00.000-07:00</published><updated>2010-01-10T10:43:45.959-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="FunStuff"/><title type='text'>A job interview</title><content type='html'>&lt;style type=&quot;text/css&quot;&gt;blockquote {border:1px dashed #B0B0B0;margin:30px;padding:10px 10px 0;}p { line-height:1.5em; }code { font-size:1em; }&lt;/style&gt;&lt;br /&gt;&lt;span class=&quot;fullpost&quot;&gt;&lt;br /&gt;&lt;p&gt;&lt;code&gt;&lt;br /&gt;Story I&lt;br /&gt;&lt;br /&gt;E: Do u have a boyfriend?&lt;br /&gt;C: I have.&lt;br /&gt;&lt;br /&gt;E: Is he working Locally?&lt;br /&gt;C: No. He is working Overseas.&lt;br /&gt;&lt;br /&gt;E: Sorry, my company cannot employ u !&lt;br /&gt;C: Why?&lt;br /&gt;&lt;br /&gt;E: U will not be able to settle down here permanently. And my Company don’t want to pay extra expenses on the Overseas calls just because of u.&lt;br /&gt;&lt;br /&gt;*********&lt;br /&gt;&lt;/code&gt;&lt;/p&gt;&lt;p&gt;&lt;code&gt;&lt;br /&gt;Story II&lt;br /&gt;&lt;br /&gt;E: Any girl friends?&lt;br /&gt;C: No.&lt;br /&gt;&lt;br /&gt;E: So far chased any before?&lt;br /&gt;C: Have, but not successful.&lt;br /&gt;&lt;br /&gt;E: Ever think of getting a job first then start looking for a girlfriend?&lt;br /&gt;C: Career is first priority. Currently didn’t want to consider This personal issue.&lt;br /&gt;&lt;br /&gt;E: Sorry, my company cannot employ u.&lt;br /&gt;C: Why?&lt;br /&gt;&lt;br /&gt;E: You are lacking of P.R skills and confidence!!&lt;br /&gt;&lt;br /&gt;*********&lt;br /&gt;&lt;/code&gt;&lt;/p&gt;&lt;p&gt;&lt;code&gt;&lt;br /&gt;Story III&lt;br /&gt;&lt;br /&gt;E: Any girlfriends?&lt;br /&gt;C: Yes.&lt;br /&gt;&lt;br /&gt;E: Is she pretty?&lt;br /&gt;C: Not quite.&lt;br /&gt;&lt;br /&gt;E: Sorry, my company cannot employ you.&lt;br /&gt;C: Why? Will this affect your company’s reputation?&lt;br /&gt;&lt;br /&gt;E: No, it does not affect the company’s reputation but because My company is dealing with arts, our company requested an artist.&lt;br /&gt;&lt;br /&gt;*********&lt;br /&gt;&lt;/code&gt;&lt;/p&gt;&lt;p&gt;&lt;code&gt;&lt;br /&gt;Story IV&lt;br /&gt;&lt;br /&gt;E: Any girlfriends?&lt;br /&gt;C: Yes.&lt;br /&gt;&lt;br /&gt;E: Is she pretty?&lt;br /&gt;C: yes&lt;br /&gt;&lt;br /&gt;E: Is she your first lover?&lt;br /&gt;C: Yes.&lt;br /&gt;&lt;br /&gt;E: Sorry, we can’t employ you because you lack of fighting spirit.&lt;br /&gt;&lt;br /&gt;*********&lt;br /&gt;&lt;/code&gt;&lt;/p&gt;&lt;p&gt;&lt;code&gt;&lt;br /&gt;Story V&lt;br /&gt;&lt;br /&gt;E: Any girlfriends?&lt;br /&gt;C: Yes.&lt;br /&gt;&lt;br /&gt;E: Is she your first lover?&lt;br /&gt;C: No. Have a few already.&lt;br /&gt;&lt;br /&gt;E: Sorry, my company cannot employ you because you are a “grasshopper”! (Job hoper lah!)&lt;br /&gt;&lt;br /&gt;*********&lt;br /&gt;&lt;/code&gt;&lt;/p&gt;&lt;p&gt;&lt;code&gt;&lt;br /&gt;Story VI&lt;br /&gt;&lt;br /&gt;E: Any boyfriends?&lt;br /&gt;C: Yes.&lt;br /&gt;&lt;br /&gt;E: Is he rich?&lt;br /&gt;C: No.&lt;br /&gt;&lt;br /&gt;E: Then sorry, my company cannot employ you because our Company is dealing with money and you will seduce.&lt;br /&gt;&lt;br /&gt;*********&lt;br /&gt;&lt;/code&gt;&lt;/p&gt;&lt;p&gt;&lt;code&gt;&lt;br /&gt;Story VII&lt;br /&gt;&lt;br /&gt;E: Any boyfriends?&lt;br /&gt;C: Yes.&lt;br /&gt;&lt;br /&gt;E: Is he rich ?&lt;br /&gt;C: Yes, very rich.He owns a company.&lt;br /&gt;&lt;br /&gt;E: Sorry, we cannot employ you because your boyfriend don’t Even want to employ you, neither do we!&lt;br /&gt;C: But,…… there is no position in his company.&lt;br /&gt;&lt;br /&gt;E: Then,….. what is your qualification?&lt;br /&gt;C: Secretary!&lt;br /&gt;&lt;br /&gt;E: Sorry, we still cannot employ you because your prettiness Will affect your managers’ working spirits.&lt;br /&gt;C: But,…… I am not pretty at all.&lt;br /&gt;&lt;br /&gt;E: It is even worse because my managers will not be interested In you!!&lt;br /&gt;&lt;/code&gt;&lt;/p&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://win32secrets.blogspot.com/feeds/2466858854145396262/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://win32secrets.blogspot.com/2009/10/job-interview.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/2466858854145396262'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/2466858854145396262'/><link rel='alternate' type='text/html' href='http://win32secrets.blogspot.com/2009/10/job-interview.html' title='A job interview'/><author><name>Researcher</name><uri>http://www.blogger.com/profile/10995990336221568904</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6274674188172478645.post-2793154901388181040</id><published>2009-10-19T07:14:00.000-07:00</published><updated>2010-01-10T10:43:45.686-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Controls"/><title type='text'>Animation</title><content type='html'>&lt;style type=&quot;text/css&quot;&gt;blockquote {border:1px dashed #B0B0B0;margin:30px;padding:10px 10px 0;}p { line-height:1.5em; }code { font-size:1em; }&lt;/style&gt;&lt;style type=&quot;text/css&quot;&gt;&lt;!--body { color: #000000; background-color: #FFFFFF; }.cpp1-assembler { color: #006699; }.cpp1-character { color: #A00000; }.cpp1-comment { color: #008000; }.cpp1-float { color: #0050C0; }.cpp1-hexadecimal { color: #0000A0; }.cpp1-identifier { color: #000000; }.cpp1-illegalchar { color: #FF0000; }.cpp1-number { color: #800080; }.cpp1-octal { color: #006666; }.cpp1-opengl { color: #8000FF; }.cpp1-preprocessor { color: #0000FF; }.cpp1-reservedword { color: #0000FF; }.cpp1-string { color: #800000; }.cpp1-symbol { color: #000080; }.cpp1-whitespace { }--&gt;&lt;/style&gt;&lt;br /&gt;You want to view a .AVI file in your window. Use the Animtion control.&lt;br /&gt;&lt;span class=&quot;fullpost&quot;&gt;&lt;br /&gt;+ Creating an Animation Control&lt;br /&gt;The following function creates an animation control in a dialog box. The animation control is positioned below the specified control, and the dimensions of the animation control are based on the dimensions of a frame in the Audio-Video Interleaved (AVI) clip. &lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;pre&gt;&lt;code&gt;&lt;span style=&quot;font: 12pt Fixedsys;&quot;&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// CreateAnimationCtrl - creates an animation control, positions it &lt;br /&gt;//                       below the specified control in a dialog box, &lt;br /&gt;//                       and opens the AVI clip for the animation control. &lt;br /&gt;// Returns the handle to the animation control. &lt;br /&gt;// hwnd             - handle to the window. &lt;br /&gt;// hwndBtn              - handle of the control below which the animation control &lt;br /&gt;//                       is to be positioned. &lt;br /&gt;// &lt;br /&gt;// Constants &lt;br /&gt;//     IDC_ANIMATE - identifier of the animation control. &lt;br /&gt;//     CX_FRAME, CY_FRAME - width and height of the frames &lt;br /&gt;//     in the AVI clip. &lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HWND CreateAnimationCtrl&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HWND hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; nIDCtl&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  HWND hwndAnim &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  RECT rc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  POINT pt&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// Create the animation control. &lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  hwndAnim &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; Animate_Create&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; IDC_ANIMATE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WS_BORDER &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WS_CHILD&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; g_hinst&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// Get the screen coordinates of the specified control button. &lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  GetWindowRect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndBtn&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;rc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// Convert the coordinates of the lower-left corner to &lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// client coordinates. &lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  pt&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;x &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; rc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;left&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  pt&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;y &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; rc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;bottom&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  ScreenToClient&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;pt&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// Position the animation control below the Stop button. &lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  SetWindowPos&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndAnim&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; pt&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;x&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; pt&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;y &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;20&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CX_FRAME&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CY_FRAME&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; SWP_NOZORDER &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    SWP_DRAWFRAME&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// Open the AVI clip, and show the animation control. &lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  Animate_Open&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndAnim&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;video.AVI&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  ShowWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndAnim&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; SW_SHOW&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hwndAnim&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;}&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/blockquote&gt;+ Controlling the AVI Clip&lt;br /&gt;The following function uses the animation control macros to control the display of the AVI clip in an animation control. Use it inside the window procedure.&lt;br /&gt;&lt;blockquote&gt;&lt;pre&gt;&lt;code&gt;&lt;span style=&quot;font: 12pt Fixedsys;&quot;&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// DoAnimation - plays, stops, or closes an animation control&#39;s &lt;br /&gt;//               AVI clip, depending on the value of an action flag. &lt;br /&gt;// hwndAnim    - handle to an animation control &lt;br /&gt;// nAction     - flag that determines whether to play, stop, or close &lt;br /&gt;//               the AVI clip. &lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;void&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; DoAnimation&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HWND hwndAnim&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; nAction&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;switch&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;nAction&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; PLAYIT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// Play the clip continuously starting with the &lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// first frame. &lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      Animate_Play&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndAnim&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; STOPIT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      Animate_Stop&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndAnim&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CLOSEIT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      Animate_Close&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwndAnim&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;default&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;}&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/blockquote&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://win32secrets.blogspot.com/feeds/2793154901388181040/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://win32secrets.blogspot.com/2009/10/animation.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/2793154901388181040'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/2793154901388181040'/><link rel='alternate' type='text/html' href='http://win32secrets.blogspot.com/2009/10/animation.html' title='Animation'/><author><name>Researcher</name><uri>http://www.blogger.com/profile/10995990336221568904</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6274674188172478645.post-4578607446255189720</id><published>2009-10-18T13:02:00.000-07:00</published><updated>2010-01-10T10:43:45.947-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Hooking"/><title type='text'>Hook  WH_CALLWNDPROC</title><content type='html'>&lt;style type=&quot;text/css&quot;&gt;blockquote {border:1px dashed #B0B0B0;margin:30px;padding:10px 10px 0;}p { line-height:1.5em; }code { font-size:1em; }&lt;/style&gt;&lt;style type=&quot;text/css&quot;&gt;&lt;!--body { color: #000000; background-color: #FFFFFF; }.cpp1-assembler { color: #006699; }.cpp1-character { color: #A00000; }.cpp1-comment { color: #008000; }.cpp1-float { color: #0050C0; }.cpp1-hexadecimal { color: #0000A0; }.cpp1-identifier { color: #000000; }.cpp1-illegalchar { color: #FF0000; }.cpp1-number { color: #800080; }.cpp1-octal { color: #006666; }.cpp1-opengl { color: #8000FF; }.cpp1-preprocessor { color: #0000FF; }.cpp1-reservedword { color: #0000FF; }.cpp1-string { color: #800000; }.cpp1-symbol { color: #000080; }.cpp1-whitespace { }--&gt;&lt;/style&gt;&lt;br /&gt;The WH_CALLWNDPROC and WH_CALLWNDPROCRET hooks enable you to monitor messages sent to window procedures.&lt;br /&gt;&lt;span class=&quot;fullpost&quot;&gt;&lt;br /&gt;The system calls a WH_CALLWNDPROC hook procedure before passing the message to the receiving window procedure, and calls the WH_CALLWNDPROCRET hook procedure after the window procedure has processed the message.&lt;br /&gt;&lt;br /&gt;The WH_CALLWNDPROCRET hook passes a pointer to a CWPRETSTRUCT structure to the hook procedure. The structure contains the return value from the window procedure that processed the message, as well as the message parameters associated with the message. Subclassing the window does not work for messages set between processes.&lt;br /&gt;&lt;blockquote&gt;&lt;p&gt;&lt;code&gt;&lt;br /&gt;typedef struct {&lt;br /&gt;LRESULT lResult;&lt;br /&gt;LPARAM lParam;&lt;br /&gt;WPARAM wParam;&lt;br /&gt;UINT message;&lt;br /&gt;HWND hwnd;&lt;br /&gt;} CWPRETSTRUCT, *PCWPRETSTRUCT;&lt;br /&gt;&lt;/blockquote&gt;It&#39;s enough now for a demonstration program.&lt;br /&gt;&lt;blockquote&gt;&lt;pre&gt;&lt;code&gt;&lt;span style=&quot;font: 12pt Fixedsys;&quot;&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// compile with : cl /EHsc main.cpp /link /SUBSYSTEM:WINDOWS /RELEASE&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#include&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;windows.h&amp;quot;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#include&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;stdio.h&amp;quot;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#pragma&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; comment&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lib&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;user32&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#pragma&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; comment&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lib&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;gdi32&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HINSTANCE hInst&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HHOOK hHook&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HANDLE hFile&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LRESULT CALLBACK HookWndProc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HWND&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; UINT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; UINT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LONG&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LRESULT CALLBACK CallWndProc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WPARAM&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LPARAM&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WINAPI WinMain&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HINSTANCE hInstance&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; HINSTANCE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LPSTR&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; nCmdShow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  HWND hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  WNDCLASS wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  MSG msg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  hInst &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hInstance&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;style &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CS_HREDRAW &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CS_VREDRAW&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpfnWndProc &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;WNDPROC&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HookWndProc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;cbClsExtra &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;cbWndExtra &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hInstance &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hInstance&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hIcon &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LoadIcon&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; IDI_APPLICATION&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hCursor &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LoadCursor&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; IDC_ARROW&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hbrBackground &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HBRUSH&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;GetStockObject&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;WHITE_BRUSH&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpszMenuName &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpszClassName &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;WH_CALLWNDPROCExample&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  RegisterClass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;wndclass&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  hwnd &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CreateWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;WH_CALLWNDPROCExample&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;Hook example&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    WS_OVERLAPPEDWINDOW&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CW_USEDEFAULT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CW_USEDEFAULT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CW_USEDEFAULT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    CW_USEDEFAULT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hInstance&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  ShowWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; nCmdShow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  UpdateWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;while&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;GetMessage&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;msg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;))&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    TranslateMessage&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;msg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    DispatchMessage&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;msg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; msg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;wParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LRESULT CALLBACK HookWndProc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HWND hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; UINT msg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; UINT wParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LONG lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;switch&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;msg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WM_CREATE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      hFile &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CreateFile&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;testdemo.demo&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; GENERIC_WRITE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CREATE_ALWAYS&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        FILE_ATTRIBUTE_NORMAL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      hHook &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; SetWindowsHookEx&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;WH_CALLWNDPROC&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HOOKPROC&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;CallWndProc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        GetCurrentThreadId&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;());&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WM_DESTROY&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      UnhookWindowsHookEx&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hHook&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      CloseHandle&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hFile&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      PostQuitMessage&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;default&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; DefWindowProc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; msg&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; wParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LRESULT CALLBACK CallWndProc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; nCode&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WPARAM w&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LPARAM l&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;char&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; cBuffer&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-hexadecimal&quot;&gt;0x80&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;];&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  DWORD bytesWritten&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  Beep&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;440&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-float&quot;&gt;0.2&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;nCode &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CallNextHookEx&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hHook&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; nCode&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; w&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; l&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;else&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;nCode &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;==&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; HC_ACTION&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      sprintf&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;cBuffer&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;nCode - %08x&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; nCode&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      WriteFile&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hFile&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; cBuffer&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;17&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;bytesWritten&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      sprintf&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;cBuffer&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;wParam - %08x \n&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; w&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      WriteFile&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hFile&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; cBuffer&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;19&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;bytesWritten&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      sprintf&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;cBuffer&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;PCWPSTRUCT-&amp;gt;lParam - %08x \n&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;((&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;PCWPSTRUCT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;l&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      WriteFile&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hFile&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; cBuffer&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;31&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;bytesWritten&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      sprintf&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;cBuffer&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;PCWPSTRUCT-&amp;gt;wParam - %08x \n&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;((&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;PCWPSTRUCT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;l&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;wParam&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      WriteFile&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hFile&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; cBuffer&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;31&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;bytesWritten&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      sprintf&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;cBuffer&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;PCWPSTRUCT-&amp;gt;message - %08x \n&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;((&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;PCWPSTRUCT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;l&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;message&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      WriteFile&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hFile&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; cBuffer&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;32&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;bytesWritten&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      sprintf&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;cBuffer&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;PCWPSTRUCT-&amp;gt;hwnd - %08x \n&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;((&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;PCWPSTRUCT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;l&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hwnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      WriteFile&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hFile&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; cBuffer&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;29&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;bytesWritten&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CallNextHookEx&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hHook&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; nCode&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; w&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; l&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/blockquote&gt;&lt;br /&gt;Here&#39;s the result:&lt;br /&gt;&lt;blockquote&gt;&lt;p&gt;&lt;code&gt;&lt;br /&gt;nCode - 00000000 wParam - 00000000 &lt;br /&gt;PCWPSTRUCT-&gt;lParam - 00000000 &lt;br /&gt;PCWPSTRUCT-&gt;wParam - 00000001 &lt;br /&gt;PCWPSTRUCT-&gt;message - 00000018 &lt;br /&gt;PCWPSTRUCT-&gt;hwnd - 004b0cf2 &lt;br /&gt;nCode - 00000000 wParam - 00000000 &lt;br /&gt;PCWPSTRUCT-&gt;lParam - 0012fe80 &lt;br /&gt;PCWPSTRUCT-&gt;wParam - 00000000 &lt;br /&gt;PCWPSTRUCT-&gt;message - 00000046 &lt;br /&gt;PCWPSTRUCT-&gt;hwnd - 00060ce6 &lt;br /&gt;nCode - 00000000 wParam - 00000000 &lt;br /&gt;PCWPSTRUCT-&gt;lParam - 0012fe80 &lt;br /&gt;PCWPSTRUCT-&gt;wParam - 00000000 &lt;br /&gt;PCWPSTRUCT-&gt;message - 00000046 &lt;br /&gt;PCWPSTRUCT-&gt;hwnd - 004b0cf2 &lt;br /&gt;nCode - 00000000 wParam - 00000000 &lt;br /&gt;PCWPSTRUCT-&gt;lParam - 0012fe80 &lt;br /&gt;PCWPSTRUCT-&gt;wParam - 00000000 &lt;br /&gt;PCWPSTRUCT-&gt;message - 00000046 &lt;br /&gt;PCWPSTRUCT-&gt;hwnd - 00060ce6 &lt;br /&gt;nCode - 00000000 wParam - 00000000 &lt;br /&gt;PCWPSTRUCT-&gt;lParam - 0012fe80 &lt;br /&gt;PCWPSTRUCT-&gt;wParam - 00000000 &lt;br /&gt;PCWPSTRUCT-&gt;message - 00000046 &lt;br /&gt;PCWPSTRUCT-&gt;hwnd - 004b0cf2  &lt;br /&gt;&lt;/code&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://win32secrets.blogspot.com/feeds/4578607446255189720/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://win32secrets.blogspot.com/2009/10/hook-whcallwndproc.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/4578607446255189720'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/4578607446255189720'/><link rel='alternate' type='text/html' href='http://win32secrets.blogspot.com/2009/10/hook-whcallwndproc.html' title='Hook  WH_CALLWNDPROC'/><author><name>Researcher</name><uri>http://www.blogger.com/profile/10995990336221568904</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6274674188172478645.post-2346452120745552831</id><published>2009-10-18T10:16:00.000-07:00</published><updated>2010-01-10T10:43:45.579-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Fractal"/><title type='text'>Mandelbrot Fractal</title><content type='html'>&lt;style type=&quot;text/css&quot;&gt;blockquote {border:1px dashed #B0B0B0;margin:30px;padding:10px 10px 0;}p { line-height:1.5em; }code { font-size:1em; }&lt;/style&gt;&lt;style type=&quot;text/css&quot;&gt;&lt;!--body { color: #000000; background-color: #FFFFFF; }.cpp1-assembler { color: #006699; }.cpp1-character { color: #A00000; }.cpp1-comment { color: #008000; }.cpp1-float { color: #0050C0; }.cpp1-hexadecimal { color: #0000A0; }.cpp1-identifier { color: #000000; }.cpp1-illegalchar { color: #FF0000; }.cpp1-number { color: #800080; }.cpp1-octal { color: #006666; }.cpp1-opengl { color: #8000FF; }.cpp1-preprocessor { color: #0000FF; }.cpp1-reservedword { color: #0000FF; }.cpp1-string { color: #800000; }.cpp1-symbol { color: #000080; }.cpp1-whitespace { }--&gt;&lt;/style&gt;&lt;style type=&quot;text/css&quot;&gt;&lt;!--body { color: #000000; background-color: #FFFFFF; }.cpp1-assembler { color: #006699; }.cpp1-character { color: #A00000; }.cpp1-comment { color: #008000; }.cpp1-float { color: #0050C0; }.cpp1-hexadecimal { color: #0000A0; }.cpp1-identifier { color: #000000; }.cpp1-illegalchar { color: #FF0000; }.cpp1-number { color: #800080; }.cpp1-octal { color: #006666; }.cpp1-opengl { color: #8000FF; }.cpp1-preprocessor { color: #0000FF; }.cpp1-reservedword { color: #0000FF; }.cpp1-string { color: #800000; }.cpp1-symbol { color: #000080; }.cpp1-whitespace { }--&gt;&lt;/style&gt;&lt;br /&gt;This is a simple version of drawing fractal program using MFC.&lt;br /&gt;&lt;span class=&quot;fullpost&quot;&gt;&lt;br /&gt;&lt;img src=&quot;http://img34.imageshack.us/img34/1223/mandel.png&quot; /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;p&gt;&lt;code&gt;&lt;br /&gt;// menus.h&lt;br /&gt;&lt;br /&gt;#define IDM_DODRAW       1001&lt;br /&gt;#define IDM_EXIT   1002&lt;br /&gt;&lt;/code&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;pre&gt;&lt;code&gt;&lt;span style=&quot;font: 12pt Fixedsys;&quot;&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#include&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;windows&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;h&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#include&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;afxres&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;h&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#include&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;menus.h&amp;quot;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;MainMenu MENU&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  POPUP &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;&amp;amp;File&amp;quot;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    MENUITEM &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;&amp;amp;Draw&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; IDM_DODRAW MENUITEM &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;E&amp;amp;xit&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; IDM_EXIT&lt;br /&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;pre&gt;&lt;code&gt;&lt;span style=&quot;font: 12pt Fixedsys;&quot;&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#include&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;afxwin.h&amp;quot;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#include&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;menus.h&amp;quot;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#pragma&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; comment&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lib&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;nafxcw&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#define&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NUM_ITERATIONS &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;64&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;const&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;double&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; left &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-float&quot;&gt;1.0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;const&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;double&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; right &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-float&quot;&gt;1.0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;const&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;double&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; top &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-float&quot;&gt;1.0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;const&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;double&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; bottom &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-float&quot;&gt;1.0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;DWORD colors&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;64&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;];&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;typedef&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;struct&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;double&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; real&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;double&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; imag&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;}&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; complex&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// Define the application object class&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;class&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CManApp&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;public&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CWinApp&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;public&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;virtual&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; BOOL InitInstance&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;();&lt;br /&gt;};&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// Define the edit window class&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;class&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CManWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;public&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CFrameWnd&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;public&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    CManWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;();&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;void&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; RunMandel&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;();&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;void&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; SetPix&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; x&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; y&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WORD iter&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    afx_msg &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;void&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; OnPaint&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;();&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    afx_msg &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;void&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; OnDoDraw&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;();&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    afx_msg &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;void&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; OnExit&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;();&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    DECLARE_MESSAGE_MAP&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;()&lt;br /&gt;};&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// Create an instance of the application object&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;CManApp manApp&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// member function used to set pixel colors in&lt;br /&gt;// the window&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;void&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CManWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;::&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;SetPix&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; x&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; y&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WORD iter&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  CClientDC dc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;this&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  dc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;SetPixel&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;x&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; y&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; colors&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;iter&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;]);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// member function used to redraw the&lt;br /&gt;// mandelbrot set&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;void&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CManWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;::&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;RunMandel&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;()&lt;br /&gt;&lt;br /&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  CRect r&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;double&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; xstep&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; ystep&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;double&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; x&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; y&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; i&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; j&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  WORD iter&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  complex k&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  complex z&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;double&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; real&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; imag&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; spread&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  GetClientRect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;r&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  ystep &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;double&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;bottom &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; top&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; r&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;Height&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;();&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  xstep &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;double&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;right &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; left&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; r&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;Width&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;();&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;for&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;y &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; top&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; j &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; y &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; bottom&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; y &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; ystep&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; j&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;++)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;for&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;x &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; left&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; i &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; x &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; right&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; x &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; xstep&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; i&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;++)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      k&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;real &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; x&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      k&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;imag &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; y&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      z&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;real &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; z&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;imag &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-float&quot;&gt;0.0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;for&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;iter &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; iter &lt;/span&gt;&lt;span class=&quot;cpp1-float&quot;&gt;4.0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;((&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;CManWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;*)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;manApp&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;m_pMainWnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;SetPix&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; j&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; iter&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// The message map&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;BEGIN_MESSAGE_MAP&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;CManWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CFrameWnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;ON_WM_PAINT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;()&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;ON_COMMAND&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;IDM_DODRAW&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  OnDoDraw&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;ON_COMMAND&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;IDM_EXIT&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; OnExit&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;END_MESSAGE_MAP&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;()&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// Handler for the Draw menu option&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;void&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CManWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;::&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;OnDoDraw&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;()&lt;br /&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// clear the window&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  CClientDC dc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;this&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  CRect r&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  GetClientRect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;r&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  dc&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;PatBlt&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; r&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;Width&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(),&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; r&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;Height&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(),&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WHITENESS&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// Redraw the set&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  RunMandel&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;();&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// Handler for WM_PAINT messages&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;void&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CManWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;::&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;OnPaint&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;()&lt;br /&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// Do not do anything in response to&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// paint events&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  ValidateRect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// Handler for the Exit menu option&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;void&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CManWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;::&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;OnExit&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;()&lt;br /&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  DestroyWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;();&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// CManWindow constructor&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;CManWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;::&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;CManWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;()&lt;br /&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  WORD x&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  BYTE red &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; green &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; blue &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  Create&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; ONormal Mandel ExampleO&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; WS_OVERLAPPEDWINDOW&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CRect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;150&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;150&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;),&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; OMainMenuO&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;for&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;x &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; x &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;64&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; x&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;++)&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    colors&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;x&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; RGB&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;red&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; green&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; blue&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(!(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;red &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;64&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;))&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;      &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(!(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;green &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;64&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;))&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;        blue &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;64&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  colors&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;63&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; RGB&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;255&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;255&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;255&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;}&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;br /&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// Initialize the CManApp m_pMainWnd data member BOOL CManApp::InitInstance() { m_pMainWnd = new CManWindow(); m_pMainWnd -&amp;gt; ShowWindow( m_nCmdShow );&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;m_pMainWnd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;UpdateWindow&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;();&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; TRUE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;}&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;Compile resource: rc mandel.rc&lt;br /&gt;Compile project: cl /EHsc mandel.cpp /link /SUBSYSTEM:WINDOWS /RELEASE mandel.res&lt;br /&gt;&lt;b&gt;Download&lt;/b&gt; project &lt;a href=&quot;http://www.mediafire.com/download.php?mrmmkmnrtin&quot;&gt;here&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://win32secrets.blogspot.com/feeds/2346452120745552831/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://win32secrets.blogspot.com/2009/10/mandelbrot-fractal.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/2346452120745552831'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/2346452120745552831'/><link rel='alternate' type='text/html' href='http://win32secrets.blogspot.com/2009/10/mandelbrot-fractal.html' title='Mandelbrot Fractal'/><author><name>Researcher</name><uri>http://www.blogger.com/profile/10995990336221568904</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6274674188172478645.post-1476959859250782047</id><published>2009-10-18T06:16:00.000-07:00</published><updated>2010-01-10T10:43:46.032-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Techniques"/><title type='text'>Allocating a console inside an MFC program</title><content type='html'>&lt;style type=&quot;text/css&quot;&gt;blockquote {border:1px dashed #B0B0B0;margin:30px;padding:10px 10px 0;}p { line-height:1.5em; }code { font-size:1em; }&lt;/style&gt;&lt;br /&gt;If you want to write the text out to the console while this is an MFC program. Here&#39;s the tip:&lt;br /&gt;&lt;span class=&quot;fullpost&quot;&gt;&lt;br /&gt;The thing to be remarked here is the function &lt;b&gt;AllocConsole&lt;/b&gt;, it&#39;s called inside function &lt;b&gt;InitInstance()&lt;/b&gt; of the App class.&lt;br /&gt;&lt;blockquote&gt;&lt;p&gt;&lt;code&gt;&lt;br /&gt;// button.cpp&lt;br /&gt;// compile with : cl /EHsc button.cpp /link /SUBSYSTEM:WINDOWS /RELEASE&lt;br /&gt;#include &quot;afxwin.h&quot;&lt;br /&gt;#include &quot;iostream&quot;&lt;br /&gt;using namespace std;&lt;br /&gt;&lt;br /&gt;#define IDB_BUTTON 100&lt;br /&gt;&lt;br /&gt;// Declare the handles for the console&lt;br /&gt;HANDLE consoleStdout, consoleStdin;&lt;br /&gt;&lt;br /&gt;// Declare the application class&lt;br /&gt;class CButtonApp : public CWinApp&lt;br /&gt;{&lt;br /&gt;public:&lt;br /&gt;virtual BOOL InitInstance();&lt;br /&gt;};&lt;br /&gt;&lt;br /&gt;// Create an instance of the application class&lt;br /&gt;CButtonApp ButtonApp;&lt;br /&gt;&lt;br /&gt;// Declare the main window class&lt;br /&gt;class CButtonWindow : public CFrameWnd&lt;br /&gt;{&lt;br /&gt;CButton *button;&lt;br /&gt;public:&lt;br /&gt;CButtonWindow();&lt;br /&gt;~CButtonWindow();&lt;br /&gt;afx_msg void HandleButton();&lt;br /&gt;&lt;br /&gt;DECLARE_MESSAGE_MAP()&lt;br /&gt;};&lt;br /&gt;&lt;br /&gt;// The message handler function&lt;br /&gt;void CButtonWindow::HandleButton()&lt;br /&gt;{&lt;br /&gt;DWORD n;&lt;br /&gt;&lt;br /&gt;Beep(700,100);&lt;br /&gt;// Two different ways to write to the console&lt;br /&gt;WriteFile(consoleStdout, &quot;hello\n&quot;, 6, &amp;n, 0);&lt;br /&gt;cout &lt;&lt; &quot;test string&quot; &lt;&lt; endl;}// The message mapBEGIN_MESSAGE_MAP(CButtonWindow, CFrameWnd)   ON_COMMAND(IDB_BUTTON, HandleButton)END_MESSAGE_MAP()// The InitInstance function is called once// when the application first executesBOOL CButtonApp::InitInstance(){   // Create an auxiliary console for cout to use.   // As soon as this function returns you   // can write to it.   AllocConsole();      // Get handles for standard in and out   consoleStdin = GetStdHandle(STD_INPUT_HANDLE);   consoleStdout = GetStdHandle(STD_OUTPUT_HANDLE);   // they must be invalid if equal   if (consoleStdin == consoleStdout)      return FALSE;         m_pMainWnd = new CButtonWindow();   m_pMainWnd-&gt;ShowWindow(m_nCmdShow);&lt;br /&gt;m_pMainWnd-&gt;UpdateWindow();&lt;br /&gt;&lt;br /&gt;return TRUE;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;// The constructor for the window class&lt;br /&gt;CButtonWindow::CButtonWindow()&lt;br /&gt;{&lt;br /&gt;CRect r;&lt;br /&gt;&lt;br /&gt;// Create the window itself&lt;br /&gt;Create(NULL,&lt;br /&gt;&quot;CButton Tests&quot;,&lt;br /&gt;WS_OVERLAPPEDWINDOW,&lt;br /&gt;CRect(0,0,200,200));&lt;br /&gt;&lt;br /&gt;// Get the size of the client rectangle&lt;br /&gt;GetClientRect(&amp;r);&lt;br /&gt;r.InflateRect(-20,-20);&lt;br /&gt;&lt;br /&gt;// Create a button&lt;br /&gt;button = new CButton();&lt;br /&gt;button-&gt;Create(&quot;Push me&quot;,&lt;br /&gt;WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON,&lt;br /&gt;r,&lt;br /&gt;this,&lt;br /&gt;IDB_BUTTON);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;// The destructor for the window class&lt;br /&gt;CButtonWindow::~CButtonWindow()&lt;br /&gt;{&lt;br /&gt;delete button;&lt;br /&gt;CFrameWnd::~CFrameWnd();&lt;br /&gt;}&lt;br /&gt;&lt;/code&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://win32secrets.blogspot.com/feeds/1476959859250782047/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://win32secrets.blogspot.com/2009/10/allocating-console-inside-mfc-program.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/1476959859250782047'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/1476959859250782047'/><link rel='alternate' type='text/html' href='http://win32secrets.blogspot.com/2009/10/allocating-console-inside-mfc-program.html' title='Allocating a console inside an MFC program'/><author><name>Researcher</name><uri>http://www.blogger.com/profile/10995990336221568904</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6274674188172478645.post-8833760900094995733</id><published>2009-10-18T06:00:00.000-07:00</published><updated>2010-01-10T10:43:46.022-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Thread"/><title type='text'>Thread Local Storage</title><content type='html'>&lt;style type=&quot;text/css&quot;&gt;blockquote {border:1px dashed #B0B0B0;margin:30px;padding:10px 10px 0;}p { line-height:1.5em; }code { font-size:1em; }&lt;/style&gt;&lt;br /&gt;Suppose we have a Dll module, and in this dll occurs dynamic memory allocation.&lt;br /&gt;&lt;span class=&quot;fullpost&quot;&gt;&lt;br /&gt;If this Dll is used by only one thread of attched process, then we only need 1 pointer to save the address of new allocated memory. &lt;br /&gt;But we can use this mechanism if there are many threads accessing the Dll. &lt;br /&gt;Now we need TLS ( Thread Local Storage).&lt;br /&gt;TLS of thread is an array of pointers, which are accessed through indexes.&lt;br /&gt;We need to do the following:&lt;br /&gt;+ Allocation memory&lt;br /&gt;+ Work with pointer&lt;br /&gt;+ Free allocated memory.&lt;br /&gt;The functions used are TlsAlloc, TlsSetValue and TlsGetValue, and TlsFree.&lt;br /&gt;That&#39;s all about TLS !!!&lt;br /&gt;Here&#39;s the sample code of the DLL and the process with multiple threads.&lt;br /&gt;&lt;blockquote&gt;&lt;p&gt;&lt;code&gt;&lt;br /&gt;#include &quot;windows.h&gt;&lt;br /&gt;#include &quot;iostream&quot;&lt;br /&gt;using namespace std;&lt;br /&gt;int (*Add)(int);&lt;br /&gt;DWORD WINAPI thread(LPVOID iNum)&lt;br /&gt;{&lt;br /&gt;for(int i = 0; i &lt; (int)iNum; ++i)    {        cout &lt;&lt; &quot;count = &quot; &lt;&lt; Add((int)iNum) &lt;&lt; endl;        Sleep(15);    }    return 0;}int main(){    char c;    HMODULE hDll;    HANDLE hThread[2];    DWORD idThread[2];    hDll = LoadLibrary(&quot;Count.dll&quot;);    Add = (int (*)(int))GetProcAddress(hDll,&quot;Add&quot;);    hThread[0] = CreateThread(NULL, 0, thread, (void*)3, 0, &amp;idThread[0]);    hThread[1] = CreateThread(NULL, 0, thread, (void*)5, 0, &amp;idThread[1]);    WaitForMultipleObjects(2,hThread,TRUE,INFINITE);    FreeLibrary(hDll);    return 0;}&lt;/code&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Dll&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;p&gt;&lt;code&gt;&lt;br /&gt;#include &quot;windows.h&quot;&lt;br /&gt;#include &quot;iostream&quot;&lt;br /&gt;using namespace std;&lt;br /&gt;DWORD dwTlsIndex;&lt;br /&gt;&lt;br /&gt;BOOL WINAPI DllMain(HINSTANCE hDll, DWORD dwReason, LPVOID lpReserved)&lt;br /&gt;{&lt;br /&gt;BOOL retVal = TRUE;&lt;br /&gt;int *pCount; &lt;br /&gt;switch (dwReason)&lt;br /&gt;{&lt;br /&gt;case DLL_PROCESS_ATTACH:&lt;br /&gt;dwTlsIndex = TlsAlloc();&lt;br /&gt;break;&lt;br /&gt;case DLL_THREAD_ATTACH:&lt;br /&gt;pCount = new int(0);&lt;br /&gt;TlsSetValue(dwTlsIndex,pCount);&lt;br /&gt;break;&lt;br /&gt;case DLL_THREAD_DETACH:&lt;br /&gt;pCount = (int*)TlsGetValue(dwTlsIndex);&lt;br /&gt;delete pCount;&lt;br /&gt;break;&lt;br /&gt;case DLL_PROCESS_DETACH:&lt;br /&gt;TlsFree(dwTlsIndex);&lt;br /&gt;brek;&lt;br /&gt;}&lt;br /&gt;return retVal;&lt;br /&gt;}&lt;br /&gt;extern &quot;C&quot; __declspec(dllexport) int Add(int n)&lt;br /&gt;{&lt;br /&gt;int *pCount;&lt;br /&gt;pCount = (int*)TlsGetValue(dwTlsIndex);&lt;br /&gt;*pCount += n;&lt;br /&gt;return *pCount;&lt;br /&gt;}&lt;/code&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://win32secrets.blogspot.com/feeds/8833760900094995733/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://win32secrets.blogspot.com/2009/10/thread-local-storage.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/8833760900094995733'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/8833760900094995733'/><link rel='alternate' type='text/html' href='http://win32secrets.blogspot.com/2009/10/thread-local-storage.html' title='Thread Local Storage'/><author><name>Researcher</name><uri>http://www.blogger.com/profile/10995990336221568904</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6274674188172478645.post-2802813339385918542</id><published>2009-10-18T03:59:00.000-07:00</published><updated>2010-01-17T03:23:56.450-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Communication"/><title type='text'>Process communication via pagefile</title><content type='html'>&lt;style type=&quot;text/css&quot;&gt;blockquote {border:1px dashed #B0B0B0;margin:30px;padding:10px 10px 0;}p { line-height:1.5em; }code { font-size:1em; }&lt;/style&gt;&lt;style type=&quot;text/css&quot;&gt;&lt;!--body { color: #000000; background-color: #FFFFFF; }.cpp1-assembler { color: #006699; }.cpp1-character { color: #A00000; }.cpp1-comment { color: #008000; }.cpp1-float { color: #0050C0; }.cpp1-hexadecimal { color: #0000A0; }.cpp1-identifier { color: #000000; }.cpp1-illegalchar { color: #FF0000; }.cpp1-number { color: #800080; }.cpp1-octal { color: #006666; }.cpp1-opengl { color: #8000FF; }.cpp1-preprocessor { color: #0000FF; }.cpp1-reservedword { color: #0000FF; }.cpp1-string { color: #800000; }.cpp1-symbol { color: #000080; }.cpp1-whitespace { }--&gt;&lt;/style&gt;&lt;br /&gt;
We have 2 process, one is to create the file, and the other one is to read the file.&lt;br /&gt;
&lt;span id=&quot;fullpost&quot;&gt;&lt;br /&gt;
The tip i want to show here is using function of mapped file.&lt;br /&gt;
We need 2 functions to do the thing.&lt;br /&gt;
&lt;blockquote&gt;&lt;pre&gt;&lt;code&gt;&lt;span style=&quot;font: 12pt Fixedsys;&quot;&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HANDLE CreateFileMapping&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HANDLE hFile&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LPSECURITY_ATTRIBUTES lpAttr&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; DWORD
flProtect&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; DWORD maximum_size_high&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; DWORD maximum_size_low&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LPCTSTR lpName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);

&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;where hFile &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; file handle lpAttr &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; security attributes flProtect &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; flags of
file access maximum_size_ &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;*&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; size of object lpName &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; name of mapping object
&lt;/span&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/blockquote&gt;Yes, this function really creates a &lt;b&gt;mapping object&lt;/b&gt;, who will map our normal file to the memory. We need it with the second function:&lt;br /&gt;
&lt;blockquote&gt;&lt;pre&gt;&lt;code&gt;&lt;span style=&quot;font: 12pt Fixedsys;&quot;&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LPVOID MapViewOfFile&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HANDLE hFileMappingObject&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; DWORD desired_access&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; DWORD
offset_high&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; DWORD offset_low&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; SIZE_T number_of_bytes_to_map&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/blockquote&gt;To understand the functions, let &#39;s see the sample code.&lt;br /&gt;
&lt;blockquote&gt;&lt;pre&gt;&lt;code&gt;&lt;span style=&quot;font: 12pt Fixedsys;&quot;&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#include&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;windows&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;h&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;gt;
&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#include&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;fstream&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;gt;
&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;using&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;namespace&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; std&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;

&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; main&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;()
{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; a&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;10&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; 
&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;2&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;3&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;4&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;5&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;6&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;7&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;8&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;9
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;};
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;char&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; file_name&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[]&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;demo.bin&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  HANDLE hFile&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hMapping&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;*&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;ptr&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// pointer to a

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  ofstream out&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;file_name&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; ios&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; out &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; ios&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;::&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;binary&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;for&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; i &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; i &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;10&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; i&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;++)
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    out&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;write&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;((&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;char&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;*)&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;a&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;],&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;sizeof&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;));
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  out&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;close&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;();

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  hFile &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CreateFile&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;file_name&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; GENERIC_READ &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; GENERIC_WRITE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    OPEN_EXISTING&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; FILE_ATTRIBUTE_NORMAL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  hMapping &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CreateFileMapping&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hFile&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; PAGE_READWRITE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  ptr &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;*)&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;MapViewOfFile&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hMapping&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; FILE_MAP_WRITE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; 
&lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// here we map file from beginning and map all the file.

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// modify the array
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;for&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; i &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; i &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;10&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;++&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    ptr&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;10&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  UnmapViewOfFile&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;ptr&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  CloseHandle&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hMapping&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  CloseHandle&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hFile&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
}
&lt;/span&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/blockquote&gt;&lt;br /&gt;
&lt;br /&gt;
The process here is:&lt;br /&gt;
&lt;b&gt;[File on disk] --&gt; [View in memory] --&gt; [Modified File on disk]&lt;/b&gt;&lt;br /&gt;
You don&#39;t need to due complexly with direct operations on the file. Now with these 2 functions, we have a cool tool to work with files like variables and pointers.&lt;br /&gt;
&lt;br /&gt;
The last example now is the process communication using mapped file.&lt;br /&gt;
Suppose we had the file demo.bin on disk.&lt;br /&gt;
The above code doesn&#39;t have a &lt;b&gt;mapping object name&lt;/b&gt;. Now we need a name for the mapping object, and this object will be shared among processes !!!&lt;br /&gt;
I just recommend some modified codes here:&lt;br /&gt;
&lt;blockquote&gt;&lt;pre&gt;&lt;code&gt;&lt;span style=&quot;font: 12pt Fixedsys;&quot;&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;char&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; mapping_name&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[]&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;MappingName&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// now create the mapping object with this name
// use INVALID_HANDLE_VALUE indicates that we use the pagefile of operating system
&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hMapping &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CreateFileMapping&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;INVALID_HANDLE_VALUE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; PAGE_READWRITE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; n
&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;*&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;sizeof&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;),&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; b &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; mapping_name &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; b &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/blockquote&gt;Suppose now we have a file &quot;C:\\ReadArray.exe&quot; , which reads the array through file mapping.&lt;br /&gt;
Now is the code for loading the reading process:&lt;br /&gt;
&lt;blockquote&gt;&lt;pre&gt;&lt;code&gt;&lt;span style=&quot;font: 12pt Fixedsys;&quot;&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;char&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; lpszAppName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[]&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;C:\\ReadArray.exe&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;STARTUPINFO si&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;PROCESS_INFORMATION pi&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;ZeroMemory&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;si&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;sizeof&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;STARTUPINFO&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;));
&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;si&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;cb &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;sizeof&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;STARTUPINFO&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// spawn new console process
&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;CreateProcess&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpszAppName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; FALSE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CREATE_NEW_CONSOLE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;si&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;pi&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// just wait now...
&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;WaitForSingleObject&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;pi&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hProcess&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NIFINITE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;CloseHandle&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;pi&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hThread&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;CloseHandle&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;pi&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hProcess&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/blockquote&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://win32secrets.blogspot.com/feeds/2802813339385918542/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://win32secrets.blogspot.com/2009/10/process-communication-via-pagefile.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/2802813339385918542'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/2802813339385918542'/><link rel='alternate' type='text/html' href='http://win32secrets.blogspot.com/2009/10/process-communication-via-pagefile.html' title='Process communication via pagefile'/><author><name>Researcher</name><uri>http://www.blogger.com/profile/10995990336221568904</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6274674188172478645.post-657147008283755086</id><published>2009-10-18T03:12:00.000-07:00</published><updated>2010-01-17T03:28:30.517-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Asynchronous"/><title type='text'>Asynchronous windows I/O ( Overlapped I/O ) (continue)</title><content type='html'>In part 1, i described functions and how to use the asynchronous I/O operations.&lt;br /&gt;
Now it&#39;s time to go more deeply in these operations&lt;br /&gt;
&lt;span id=&quot;fullpost&quot;&gt;&lt;br /&gt;
The thing i want to show here is the &lt;b&gt;CALLBACK &lt;/b&gt;function for the completion of overlapped I/O operations.&lt;br /&gt;
At first, let&#39;s see the codes sample:&lt;br /&gt;
&lt;blockquote&gt;&lt;pre&gt;&lt;code&gt;&lt;span style=&quot;font: 12pt Fixedsys;&quot;&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#include&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;windows&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;h&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;gt;
&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#include&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;iostream&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;gt;
&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;using&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;namespace&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; std&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;

&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;VOID CALLBACK completion_routine&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;DWORD error_code&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; DWORD
number_bytes_transferred&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; LPOVERLAPPED lovl&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)
{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  cout &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;ErrorCode: &amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; error_code &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; endl &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; 
&lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;\tNumber of bytes transferred: &amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; number_bytes_transferred &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; endl &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; 
&lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;\t Offsets: &amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(*&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lovl&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;).&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;OffsetHigh &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-character&quot;&gt;&#39; &#39;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(*&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lovl&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;).&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;Offset &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; endl&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
}

&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; main&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;()
{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  HANDLE hFile&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  OVERLAPPED ovl &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; 
&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;};
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  hFile &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CreateFile&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;C:\demo.dat&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; GENERIC_WRITE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; FILE_SHARE_WRITE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    OPEN_ALWAYS&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; FILE_FLAG_OVERLAPPED&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// write to file
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;for&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; i &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; i &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;10&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;++&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    WriteFileEx&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hFile&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;sizeof&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;),&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;ovl&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; completion_routine&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    SleepEx&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;INFINITE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; TRUE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    ovl&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;Offset &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;sizeof&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  CloseHandle&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hFile&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
}
&lt;/span&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/blockquote&gt;&lt;br /&gt;
&lt;br /&gt;
Firstly is the prototype of callback function:&lt;br /&gt;
&lt;blockquote&gt;&lt;p&gt;&lt;code&gt;&lt;br /&gt;
VOID CALLBACK procedure_name(DWORD error_code, DWORD number_of_byte_transferred, LPOVERLAPPED lovl);&lt;/code&gt;&lt;/p&gt;&lt;/blockquote&gt;The parameters are self-explained.&lt;br /&gt;
Secondly, we use the function &lt;b&gt;WriteFileEx&lt;/b&gt; with prototype:&lt;br /&gt;
&lt;blockquote&gt;&lt;p&gt;&lt;code&gt;&lt;br /&gt;
BOOL WriteFileEx(HANDLE hFile, LPCVOID lpBuffer, DWORD number_of_bytes_to_write, LPOVERLAPPED lovl, LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine);&lt;/code&gt;&lt;/p&gt;&lt;/blockquote&gt;Remark the LPOVERLAPPED_COMPLETION_ROUTINE here, it&#39;s the type of callback function we described above.&lt;br /&gt;
&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://win32secrets.blogspot.com/feeds/657147008283755086/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://win32secrets.blogspot.com/2009/10/asynchronous-windows-io-overlapped-io.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/657147008283755086'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/657147008283755086'/><link rel='alternate' type='text/html' href='http://win32secrets.blogspot.com/2009/10/asynchronous-windows-io-overlapped-io.html' title='Asynchronous windows I/O ( Overlapped I/O ) (continue)'/><author><name>Researcher</name><uri>http://www.blogger.com/profile/10995990336221568904</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6274674188172478645.post-1722809310810184911</id><published>2009-10-18T02:33:00.000-07:00</published><updated>2010-01-17T03:29:11.674-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Asynchronous"/><title type='text'>Asynchronous windows I/O ( Overlapped I/O )</title><content type='html'>You may check the artical : &quot;TransmitFile internal&quot; for understanding the use of asynchronous operations on socket.&lt;br /&gt;
&lt;span id=&quot;fullpost&quot;&gt;&lt;br /&gt;
Now it&#39;s time to clear out something. And i think after reading this artical, you can go through other codes about asychronous I/O without problems.&lt;br /&gt;
Remember that, in windows, asynchronous I/O is also called overlapped I/O.&lt;br /&gt;
To use asynchronous I/O operations, the functions are ReadFile and WriteFile , but the file needs to be opened in the mode FILE_FLAG_OVERLAPPED.&lt;br /&gt;
Now there is a question: How can thread knows about the completion of I/O operations ?&lt;br /&gt;
The answer is : Use an event descriptor.&lt;br /&gt;
This is the format of structure OVERLAPPED.&lt;br /&gt;
&lt;blockquote&gt;&lt;pre&gt;&lt;code&gt;&lt;span style=&quot;font: 12pt Fixedsys;&quot;&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;typedef&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;struct&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; _OVERLAPPED
&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  DWORD Internal&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// reserved
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  DWORD InternalHigh&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// reserved
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  DWORD Offset&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  DWORD OffsetHigh&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  HANDLE hEvent&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
}&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; OVERLAPPED&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;*&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;LPOVERLAPPED&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/blockquote&gt;The fields &lt;b&gt;Offset&lt;/b&gt; and OffsetHigh indicate low part and high part of the offset according to the beggining of the file. From this offset, operating system begins run the asynchronous operations.&lt;br /&gt;
Parameter hEvent is used by thread for the completion of I/O operations.&lt;br /&gt;
OK, let&#39;s go to the codes: Writing 0 to 10 to file demo.dat&lt;br /&gt;
&lt;blockquote&gt;&lt;pre&gt;&lt;code&gt;&lt;span style=&quot;font: 12pt Fixedsys;&quot;&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#include&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;windows&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;h&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;gt;

&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;using&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;namespace&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; std&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; main&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;()
{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  HANDLE hFile&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  HANDLE hEndWrite&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// event
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  OVERLAPPED ovl&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  hEndWrite &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CreateEvent&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; FALSE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; FALSE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  ovl &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; 
&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; hEvent
&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;};

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  hFile &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CreateFile&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;C:\\demo.dat&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; GENERIC_WRITE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; FILE_SHARE_WRITE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    OPEN_ALWAYS&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; FILE_FLAG_OVERLAPPED&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; NULL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-comment&quot;&gt;// write to file

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;for&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; i &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; i &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;10&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;++&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;{
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    DWORD dwBytesWritten&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    DWORD ret&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    WriteFile&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hFile&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;sizeof&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;),&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;dwBytesWritten&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;ovl&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    WaitForSingleObject&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hEndWrite&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; INFINITE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    ovl&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;Offset &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;+=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;sizeof&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;}

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  CloseHandle&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hFile&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);
&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  CloseHandle&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;hEndWrite&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);

&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;
}
&lt;/span&gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/blockquote&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://win32secrets.blogspot.com/feeds/1722809310810184911/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://win32secrets.blogspot.com/2009/10/asynchronous-windows-io-overlapped-io_18.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/1722809310810184911'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/1722809310810184911'/><link rel='alternate' type='text/html' href='http://win32secrets.blogspot.com/2009/10/asynchronous-windows-io-overlapped-io_18.html' title='Asynchronous windows I/O ( Overlapped I/O )'/><author><name>Researcher</name><uri>http://www.blogger.com/profile/10995990336221568904</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6274674188172478645.post-1614236584644960588</id><published>2009-10-18T02:08:00.000-07:00</published><updated>2010-01-10T10:43:45.774-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Security"/><title type='text'>Understanding security</title><content type='html'>&lt;style type=&quot;text/css&quot;&gt;blockquote {border:1px dashed #B0B0B0;margin:30px;padding:10px 10px 0;}p { line-height:1.5em; }code { font-size:1em; }&lt;/style&gt;&lt;style type=&quot;text/css&quot;&gt;&lt;!--body { color: #000000; background-color: #FFFFFF; }.cpp1-assembler { color: #006699; }.cpp1-character { color: #A00000; }.cpp1-comment { color: #008000; }.cpp1-float { color: #0050C0; }.cpp1-hexadecimal { color: #0000A0; }.cpp1-identifier { color: #000000; }.cpp1-illegalchar { color: #FF0000; }.cpp1-number { color: #800080; }.cpp1-octal { color: #006666; }.cpp1-opengl { color: #8000FF; }.cpp1-preprocessor { color: #0000FF; }.cpp1-reservedword { color: #0000FF; }.cpp1-string { color: #800000; }.cpp1-symbol { color: #000080; }.cpp1-whitespace { }--&gt;&lt;/style&gt;&lt;br /&gt;&lt;span class=&quot;fullpost&quot;&gt;&lt;br /&gt;- When users log in, they receive &lt;i&gt;access token&lt;/i&gt;. An access token contains the users&#39;ID, the users&#39;groups, and the users&#39;s privileges according to the groups.&lt;br /&gt;- Each object has a &lt;i&gt;security descriptor&lt;/i&gt;, which acts as its lock. A security descriptor contains an owner and group identifier, a &lt;i&gt;System ACL&lt;/i&gt; and a &lt;i&gt;Discretionary ACL&lt;/i&gt;.&lt;br /&gt;- A &lt;i&gt;DACL&lt;/i&gt; controls who is allowed to do what to the object.&lt;br /&gt;- A &lt;i&gt;SACL&lt;/i&gt; controls who is audited for doing what to the object.&lt;br /&gt;- ACLs consist of ACEs. Each ACE contains a &lt;b&gt;SID&lt;/b&gt;, which identifies the user or group, an &lt;b&gt;access mask&lt;/b&gt;, which determines the actions allowed to the user or group, and an &lt;b&gt;ACE header&lt;/b&gt;, which determines the type of ACE.&lt;br /&gt;&lt;br /&gt;First sample code: A simple security program (without any error checking) that creates a file that only the user &quot;guest&quot; can read. This code will not work unless you have formatted your hard disk with the NT File System&lt;br /&gt;&lt;blockquote&gt;&lt;pre&gt;&lt;code&gt;&lt;span style=&quot;font: 12pt Fixedsys;&quot;&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#include&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;windows.h&amp;quot;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-preprocessor&quot;&gt;#include&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;iostream&amp;quot;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;using&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;namespace&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; std&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;SECURITY_ATTRIBUTES sa&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;SECURITY_DESCRIPTOR sd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;BYTE aclBuffer&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;1024&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;];&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;PACL pacl &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;PACL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;aclBuffer&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;BYTE sidBuffer&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;100&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;];&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;PSID psid &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;PSID&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;sidBuffer&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;DWORD sidBufferSize &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;100&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;char&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; domainBuffer&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;80&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;];&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;DWORD domainBufferSize &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;80&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;SID_NAME_USE snu&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;HANDLE file&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;void&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; main&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;void&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;)&lt;br /&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  InitializeSecurityDescriptor&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;sd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; SECURITY_DESCRIPTOR_REVISION&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  InitializeAcl&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;pacl&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;1024&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; ACL_REVISION&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  LookupAccountName&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;guest&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; psid&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;sidBufferSize&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; domainBuffer&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;br /&gt;    &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;domainBufferSize&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;snu&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  AddAccessAllowedAce&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;pacl&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; ACL_REVISION&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; GENERIC_READ&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; psid&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  SetSecurityDescriptorDacl&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;sd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; TRUE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; pacl&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; FALSE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  sa&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;nLength &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-reservedword&quot;&gt;sizeof&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;SECURITY_ATTRIBUTES&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  sa&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;bInheritHandle &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; FALSE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  sa&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;lpSecurityDescriptor &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;sd&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  file &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; CreateFile&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-string&quot;&gt;&amp;quot;c:\\testfile&amp;quot;&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; GENERIC_READ &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; GENERIC_WRITE&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;sa&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;    CREATE_NEW&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; FILE_ATTRIBUTE_NORMAL&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt; &lt;/span&gt;&lt;span class=&quot;cpp1-number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;cpp1-whitespace&quot;&gt;  CloseHandle&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;cpp1-identifier&quot;&gt;file&lt;/span&gt;&lt;span class=&quot;cpp1-symbol&quot;&gt;);&lt;br /&gt;}&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/blockquote&gt;Understand the code:&lt;br /&gt;+ The creation of a security descriptor starts with a call to theInitialize SecurityDescriptor function &lt;br /&gt;&lt;blockquote&gt;&lt;p&gt;&lt;code&gt;&lt;br /&gt;BOOL InitializeSecurityDescriptor(&lt;br /&gt;PSECURITY_DESCRIPTOR psd,&lt;br /&gt;DWORD revision)&lt;br /&gt;where psd -  a pointer to the security descriptor &lt;br /&gt;and revision -  revision level, must be SECURITY_DESCRIPTOR_REVISION &lt;br /&gt;&lt;/code&gt;&lt;/p&gt;&lt;/blockquote&gt;The new security descriptor initially contains no information besides the revision level: no owner identifier, no group identifier, no SACL, and no DACL.&lt;br /&gt;+ The next line calls InitializeAcl to create the ACL that will become the DACL for the security descriptor.&lt;br /&gt;&lt;blockquote&gt;&lt;p&gt;&lt;code&gt;&lt;br /&gt;BOOL InitializeAcl(&lt;br /&gt;PACL pacl,&lt;br /&gt;DWORD bufferLen,&lt;br /&gt;DWORD revision)&lt;br /&gt;&lt;br /&gt;where   &lt;br /&gt;pacl - a pointer to an ACL &lt;br /&gt;bufferLen - the length of the ACL buffer supplied &lt;br /&gt;revision - revision level, must be ACL_REVISION &lt;br /&gt;&lt;/code&gt;&lt;/p&gt;&lt;/blockquote&gt;When the InitializeAcl function returns, pacl points to an empty ACL. That is, the ACL contains no ACEs. If you were to comment out the next two lines so that this empty ACL was placed into the security descriptor, and that security descriptor was then applied to the file, no one would be able to access the file.&lt;br /&gt;+ The LookupAccountName function returns a SID for the specified account name.&lt;br /&gt;&lt;blockquote&gt;&lt;p&gt;&lt;code&gt;&lt;br /&gt;BOOL LookupAccountName(&lt;br /&gt;LPCTSTR system,&lt;br /&gt;LPCTSTR accountName,&lt;br /&gt;PSID psid,&lt;br /&gt;LPDWORD sidBufferSize,&lt;br /&gt;LPTSTR domainName,&lt;br /&gt;LPDWORD domainNameLen,&lt;br /&gt;PSID_NAME_USE psnu)&lt;br /&gt;&lt;br /&gt;where&lt;br /&gt;system - name of a remote system, or 0 for local &lt;br /&gt;accountName - the name of the account to look up &lt;br /&gt;psid - a pointer to a buffer for the returned SID &lt;br /&gt;sidBufferSize - the size of the psid buffer &lt;br /&gt;domainName - a pointer to a buffer for the returned domain name &lt;br /&gt;domainNameLen - size of the domain name buffer &lt;br /&gt;psnu - returned enumerated type indicating the type of account &lt;br /&gt;&lt;/code&gt;&lt;/p&gt;&lt;/blockquote&gt;The function returns a SID for the account, the domain where it was found if the SID came from a domain controller, and an enumerated value that indicates the type of account:&lt;br /&gt;&lt;blockquote&gt;&lt;p&gt;&lt;code&gt;&lt;br /&gt;SidTypeUser &lt;br /&gt;SidTypeGroup &lt;br /&gt;SidTypeDomain &lt;br /&gt;SidTypeAlias &lt;br /&gt;SidTypeWellKnownGroup &lt;br /&gt;SidTypeDeletedAccount &lt;br /&gt;SidTypeInvalid &lt;br /&gt;SidTypeUnknown &lt;br /&gt;&lt;/code&gt;&lt;/p&gt;&lt;/blockquote&gt;A SID is asecurity identifier. It uniquely identifies a user or a group to the system.&lt;br /&gt;&lt;br /&gt;+ The SID returned by the LookupAccountName function is used in a call to the AddAccessAllowedAce function to create an access-allowed (as opposed to access-denied) ACE and add it to the currently-empty ACL.&lt;br /&gt;&lt;blockquote&gt;&lt;p&gt;&lt;code&gt;&lt;br /&gt;BOOL AddAccessAllowedAce(&lt;br /&gt;PACL pacl,&lt;br /&gt;DWORD revision,&lt;br /&gt;DWORD accessMask,&lt;br /&gt;PSID psid)&lt;br /&gt;&lt;br /&gt;where    &lt;br /&gt;pacl - a pointer to an ACL &lt;br /&gt;revision - revision level. Must be ACL_REVISION &lt;br /&gt;accessMask - access mask bits &lt;br /&gt;Psid - A SID &lt;br /&gt;&lt;/code&gt;&lt;/p&gt;&lt;/blockquote&gt;+ Now we has an ACL containing one ACE that specifies that the user &quot;guest&quot; should have read access. This ACL needs to be placed into the Discretionary ACL of the security descriptor using the Set SecurityDescriptorDacl function.&lt;br /&gt;&lt;blockquote&gt;&lt;p&gt;&lt;code&gt;&lt;br /&gt;BOOL SetSecurityDescriptorDacl(&lt;br /&gt;PSECURITY_DESCRIPTOR psd,&lt;br /&gt;BOOL daclPresent,&lt;br /&gt;PACL pacl,&lt;br /&gt;BOOL daclDefaulted)&lt;br /&gt;&lt;br /&gt;where &lt;br /&gt;psd - a pointer to a security descriptor &lt;br /&gt;daclPresent - a boolean that if TRUE says pacl contains an ACL. If it is FALSE, the function ignores anything in pacl and sets the DACL in the security descriptor to NULL &lt;br /&gt;pacl - a pointer to the ACL to add &lt;br /&gt;daclDefaulted - a boolean indicating the source of the DACL &lt;br /&gt;&lt;/code&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://win32secrets.blogspot.com/feeds/1614236584644960588/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://win32secrets.blogspot.com/2009/10/understanding-security.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/1614236584644960588'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6274674188172478645/posts/default/1614236584644960588'/><link rel='alternate' type='text/html' href='http://win32secrets.blogspot.com/2009/10/understanding-security.html' title='Understanding security'/><author><name>Researcher</name><uri>http://www.blogger.com/profile/10995990336221568904</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>