<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://vistapedia.com/index.php?action=history&amp;feed=atom&amp;title=CPRS_Windows_Messaging_Standards</id>
	<title>CPRS Windows Messaging Standards - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://vistapedia.com/index.php?action=history&amp;feed=atom&amp;title=CPRS_Windows_Messaging_Standards"/>
	<link rel="alternate" type="text/html" href="https://vistapedia.com/index.php?title=CPRS_Windows_Messaging_Standards&amp;action=history"/>
	<updated>2026-05-13T22:11:25Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.0</generator>
	<entry>
		<id>https://vistapedia.com/index.php?title=CPRS_Windows_Messaging_Standards&amp;diff=15752&amp;oldid=prev</id>
		<title>DavidWhitten: /* Step 3:  Capture all &#039;VistA Event – Clinical&#039; and &#039;VistA Domain Event – Clinical&#039; messages that were not sent by this window.  (this enables applications to send messages and not process the ones sent by themselves. */</title>
		<link rel="alternate" type="text/html" href="https://vistapedia.com/index.php?title=CPRS_Windows_Messaging_Standards&amp;diff=15752&amp;oldid=prev"/>
		<updated>2013-04-18T19:01:33Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Step 3:  Capture all &amp;#039;VistA Event – Clinical&amp;#039; and &amp;#039;VistA Domain Event – Clinical&amp;#039; messages that were not sent by this window.  (this enables applications to send messages and not process the ones sent by themselves.&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 19:01, 18 April 2013&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l207&quot;&gt;Line 207:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 207:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  begin&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  begin&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   inherited DefaultHandler(Message);&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   inherited DefaultHandler(Message);&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   with TMessage(Message) do if ((Msg = FVistaMsg) or (Msg = FVistaDomainMsg)) and (wParam &amp;lt;&amp;gt; Handle) then&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   with TMessage(Message) do&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;  &lt;/del&gt;begin&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;  &lt;/ins&gt;if ((Msg = FVistaMsg) or (Msg = FVistaDomainMsg)) and (wParam &amp;lt;&amp;gt; Handle) then&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;    &lt;/del&gt;GlobalGetAtomName(lParam, buf, 255);&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;    &lt;/ins&gt;begin&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;    &lt;/del&gt;mmoMessages.Lines.Add(StrPas(buf));&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;      &lt;/ins&gt;GlobalGetAtomName(lParam, buf, 255);&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;  &lt;/del&gt;end;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;      &lt;/ins&gt;mmoMessages.Lines.Add(StrPas(buf));&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;    &lt;/ins&gt;end;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  end;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  end;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>DavidWhitten</name></author>
	</entry>
	<entry>
		<id>https://vistapedia.com/index.php?title=CPRS_Windows_Messaging_Standards&amp;diff=15751&amp;oldid=prev</id>
		<title>DavidWhitten at 19:00, 18 April 2013</title>
		<link rel="alternate" type="text/html" href="https://vistapedia.com/index.php?title=CPRS_Windows_Messaging_Standards&amp;diff=15751&amp;oldid=prev"/>
		<updated>2013-04-18T19:00:41Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 19:00, 18 April 2013&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l260&quot;&gt;Line 260:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 260:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  begin&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  begin&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   inherited DefaultHandler(Message);&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   inherited DefaultHandler(Message);&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   with TMessage(Message) do if ((Msg = FVistaMsg) or (Msg = FVistaDomainMsg)) and (wParam &amp;lt;&amp;gt; Handle) then&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   with TMessage(Message) do&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;  &lt;/del&gt;begin&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;  &lt;/ins&gt;if ((Msg = FVistaMsg) or (Msg = FVistaDomainMsg)) and (wParam &amp;lt;&amp;gt; Handle) then&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;    &lt;/del&gt;GlobalGetAtomName(lParam, buf, 255);&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;    &lt;/ins&gt;begin&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;    &lt;/del&gt;mmoMessages.Lines.Add(StrPas(buf));&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;      &lt;/ins&gt;GlobalGetAtomName(lParam, buf, 255);&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;  &lt;/del&gt;end;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;      &lt;/ins&gt;mmoMessages.Lines.Add(StrPas(buf));&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;    &lt;/ins&gt;end;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  end;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  end;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  end.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  end.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>DavidWhitten</name></author>
	</entry>
	<entry>
		<id>https://vistapedia.com/index.php?title=CPRS_Windows_Messaging_Standards&amp;diff=15707&amp;oldid=prev</id>
		<title>DavidWhitten at 00:34, 15 March 2013</title>
		<link rel="alternate" type="text/html" href="https://vistapedia.com/index.php?title=CPRS_Windows_Messaging_Standards&amp;diff=15707&amp;oldid=prev"/>
		<updated>2013-03-15T00:34:10Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 00:34, 15 March 2013&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;== Original Source of Info for this page ==&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; http://download.opensourcevista.net/downloads/CPRS_Windows_Messaging_Standards.doc&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Windows Messaging ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Windows Messaging ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>DavidWhitten</name></author>
	</entry>
	<entry>
		<id>https://vistapedia.com/index.php?title=CPRS_Windows_Messaging_Standards&amp;diff=15706&amp;oldid=prev</id>
		<title>DavidWhitten: Created page with &quot;== Windows Messaging ==  The messages generated by CPRS in Windows provide a way to coordinate programs running concurrently with CPRS. CPRS generates a message whenever certa...&quot;</title>
		<link rel="alternate" type="text/html" href="https://vistapedia.com/index.php?title=CPRS_Windows_Messaging_Standards&amp;diff=15706&amp;oldid=prev"/>
		<updated>2013-03-15T00:31:46Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;== Windows Messaging ==  The messages generated by CPRS in Windows provide a way to coordinate programs running concurrently with CPRS. CPRS generates a message whenever certa...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Windows Messaging ==&lt;br /&gt;
&lt;br /&gt;
The messages generated by CPRS in Windows provide a way to coordinate programs running concurrently with CPRS. CPRS generates a message whenever certain state changes occur within the program. These state changes are: Program Startup Patient Selected, TIU Note Selected, Radiology Report Selected, Surgery Report Selected, Order Action Taken, and Program Close. Concurrently running programs can then make equivalent state changes to reflect the new state of CPRS.&lt;br /&gt;
&lt;br /&gt;
The most obvious state changes a program can make is to change the current patient at the time CPRS does, and to close concurrently with CPRS. It is also possible for an imaging program to access and display an image associated with a selected TIU document or radiology report. Similarly, a program can use one of the components of a selected TIU note to take some action.&lt;br /&gt;
&lt;br /&gt;
As specific needs are identified, this functionality in CPRS will be expanded by increasing the types of messages broadcast and adding the ability to act upon messages broadcast from other applications.&lt;br /&gt;
 &lt;br /&gt;
== CPRS Message Types ==&lt;br /&gt;
&lt;br /&gt;
Following are sample messages broadcast by the CPRS Windows executable, followed by their current definitions.  Note that there are two different messages shown in each sample section, one which includes the user&amp;#039;s domain, and one which does not.  The shorter message is the old version, with the domain being added in later CPRS versions.  Both types of message are now broadcast simultaneously to insure backward compatibility.&lt;br /&gt;
&lt;br /&gt;
=== 1.	Program is starting: ===&lt;br /&gt;
&lt;br /&gt;
This message is generated whenever CPRS starts up.&lt;br /&gt;
&lt;br /&gt;
 BEG^CPRS^^1329 &lt;br /&gt;
 BEG^CPRS;ROX-REV.FO-SLC.MED.VA.GOV^^1329&lt;br /&gt;
&lt;br /&gt;
 Program is Starting fields:&lt;br /&gt;
&lt;br /&gt;
 Field Name	Example	Comment&lt;br /&gt;
 Message Name	BEG	&lt;br /&gt;
&lt;br /&gt;
Originating Program and Domain	CPRS	Both messages broadcast for backward compatibility&lt;br /&gt;
 User DUZ	1329	&lt;br /&gt;
&lt;br /&gt;
=== 2.	Program is Ending: ===&lt;br /&gt;
&lt;br /&gt;
This message is generated whenever CPRS closes. &lt;br /&gt;
&lt;br /&gt;
The  close event could be the result of a specific user action such as EXIT, or it could be the result of CPRS timing out.&lt;br /&gt;
&lt;br /&gt;
 END^CPRS;ROX-REV.FO-SLC.MED.VA.GOV^70&lt;br /&gt;
 END^CPRS^70&lt;br /&gt;
&lt;br /&gt;
 Program is Ending fields:&lt;br /&gt;
&lt;br /&gt;
 Field Name	Example	Comment&lt;br /&gt;
 Message Name	END	&lt;br /&gt;
 Originating Program and Domain	CPRS	Both messages broadcast for backward compatibility&lt;br /&gt;
 Patient DFN	70	&lt;br /&gt;
&lt;br /&gt;
=== 3.	Patient Changed: ===&lt;br /&gt;
&lt;br /&gt;
This message is generated whenever CPRS changes the current patient. On receipt of this message, a program coordinating with CPRS can use Broker calls to change the patient it is displaying.&lt;br /&gt;
&lt;br /&gt;
==== Example Patient Changed message: ====&lt;br /&gt;
&lt;br /&gt;
 XPT^CPRS;ROX-REV.FO-SLC.MED.VA.GOV^70^999-99-9999^2600303^PATIENT,ONE XPT^CPRS^70^999-99-9999^2600303^PATIENT,ONE&lt;br /&gt;
&lt;br /&gt;
 Patient Changed fields:&lt;br /&gt;
&lt;br /&gt;
 Field Name	Example	Comment&lt;br /&gt;
 Message Name	XPT	&lt;br /&gt;
 Originating Program and Domain	CPRS	Both messages broadcast for backward compatibility&lt;br /&gt;
 Patient DFN	70	&lt;br /&gt;
 Patient Social Security Number	999-99-9999	&lt;br /&gt;
 Patient Date of Birth	2600303	FileMan format&lt;br /&gt;
 Patient Name	PATIENT,ONE	&lt;br /&gt;
&lt;br /&gt;
=== 4.	Report Message: ===&lt;br /&gt;
&lt;br /&gt;
This message is generated when a TIU message is selected in the Notes, Consults, Discharge Summary, and Surgery tabs; when a radiology report or Progress Note is selected on the Reports tab; when a medicine result is selected on the Consults tab; and when a Surgery case is selected on either the Surgery or Reports tabs. A coordinating program can react to this message by taking some action based on the contents of the specific message, such as displaying an image associated with a radiology report.&lt;br /&gt;
&lt;br /&gt;
==== Example TIU Report message: ====&lt;br /&gt;
&lt;br /&gt;
 RPT^CPRS;ROX-REV.FO-SLC.MED.VA.GOV^16^TIU^6488^^^^^^^^1&lt;br /&gt;
 RPT^CPRS^16^TIU^6488^^^^^^^^1&lt;br /&gt;
&lt;br /&gt;
 TIU Report fields:&lt;br /&gt;
&lt;br /&gt;
 Field Name	Example	Comment&lt;br /&gt;
 Message Name	RPT	&lt;br /&gt;
 Originating Program and Domain	CPRS	Both messages broadcast for backward compatibility&lt;br /&gt;
 Patient DFN	16	&lt;br /&gt;
 Message Sub-name	TIU	&lt;br /&gt;
 Note ID	6488	TIU document IEN in file 8925&lt;br /&gt;
&lt;br /&gt;
 Note has images	1 = images  0 = none	&lt;br /&gt;
 Always located in &amp;quot;^&amp;quot; piece 13 of the message (note: not yet supported in all CPRS locations that display the text of a note)&lt;br /&gt;
 &lt;br /&gt;
==== Example Medicine Report message from Consults tab: ====&lt;br /&gt;
&lt;br /&gt;
 RPT^CPRS;ROX-REV.FO-SLC.MED.VA.GOV^16^MED^1234^^^^^^^^1&lt;br /&gt;
 RPT^CPRS^16^MED^1234^^^^^^^^1&lt;br /&gt;
&lt;br /&gt;
 Medicine Report fields:&lt;br /&gt;
&lt;br /&gt;
 Field Name	Example	Comment&lt;br /&gt;
 Message Name	RPT	&lt;br /&gt;
 Originating Program and Domain	CPRS	Both messages broadcast for backward compatibility&lt;br /&gt;
 Patient DFN	16	&lt;br /&gt;
&lt;br /&gt;
 Message Sub-name	MED	&lt;br /&gt;
 Note ID	1234	Medicine result IEN in file 691.5&lt;br /&gt;
 Note has images	1 = images 0 = none	&lt;br /&gt;
 Always located in &amp;quot;^&amp;quot; piece 13 of the message.&lt;br /&gt;
&lt;br /&gt;
==== Example Radiology Report message: ====&lt;br /&gt;
&lt;br /&gt;
 RPT^CPRS;ROX-REV.FO-SLC.MED.VA.GOV^16^RA^i7039389.8989-1^^^^^^^^1&lt;br /&gt;
 RPT^CPRS^16^RA^i7039389.8989-1^^^^^^^^1&lt;br /&gt;
&lt;br /&gt;
 Radiology Report fields:&lt;br /&gt;
&lt;br /&gt;
 Field Name	Example	Comment&lt;br /&gt;
 Message Name	RPT	&lt;br /&gt;
 Originating Program and Domain	CPRS	Both messages broadcast for backward compatibility&lt;br /&gt;
 Patient DFN	16	&lt;br /&gt;
 Message Sub-name	RA	&lt;br /&gt;
 Report/Case ID	i7039389.8989-1	Date-time stamp used for Radiology messages.&lt;br /&gt;
 Report has images	1 = images 0 = none	&lt;br /&gt;
 Always located in &amp;quot;^&amp;quot; piece 13 of the message.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
==== Example TIU Report message, from &amp;quot;Progress Notes&amp;quot; on Reports tab: ====&lt;br /&gt;
&lt;br /&gt;
 RPT^CPRS;ROX-REV.FO-SLC.MED.VA.GOV^37^PN^0^7484^WASHINGTON, DC^^^^^^0&lt;br /&gt;
 RPT^CPRS^37^PN^0^7484^WASHINGTON, DC^^^^^^0&lt;br /&gt;
&lt;br /&gt;
 TIU Report fields:&lt;br /&gt;
&lt;br /&gt;
 Field Name	Example	Comment&lt;br /&gt;
 Message Name	RPT	&lt;br /&gt;
 Originating Program and Domain	CPRS	Both messages broadcast for backward compatibility&lt;br /&gt;
 Patient DFN	37	&lt;br /&gt;
 Message Sub-name	PN	&lt;br /&gt;
 Number of attached images	0	&lt;br /&gt;
 Note ID	7484	TIU document IEN in file 8925&lt;br /&gt;
 Facility	WASHINGTON, DC	Facility being queried, whether locally or via Remote Data Views&lt;br /&gt;
 Note has images	1 = images 0 = none	&lt;br /&gt;
 Always located in &amp;quot;^&amp;quot; piece 13 of the message.&lt;br /&gt;
&lt;br /&gt;
==== Example Surgery Report message, from Surgery or Reports tabs: ====&lt;br /&gt;
&lt;br /&gt;
 RPT^CPRS;ROX-REV.FO-SLC.MED.VA.GOV^16^SUR^2345^^^^^^^^1&lt;br /&gt;
 RPT^CPRS^16^SUR^2345^^^^^^^^1&lt;br /&gt;
&lt;br /&gt;
 Surgery Report fields:&lt;br /&gt;
&lt;br /&gt;
 Field Name	Example	Comment&lt;br /&gt;
 Message Name	RPT	&lt;br /&gt;
 Originating Program and Domain	CPRS	Both messages broadcast for backward compatibility&lt;br /&gt;
 Patient DFN	16	&lt;br /&gt;
 Message Sub-name	SUR	&lt;br /&gt;
 Case ID	2345	Surgery case IEN in file 130&lt;br /&gt;
 Case has images	1 = images 0 = none	&lt;br /&gt;
 Not yet supported in CPRS v27.  Will be added in a future version.&lt;br /&gt;
 &lt;br /&gt;
=== 5.	Order Messages ===&lt;br /&gt;
&lt;br /&gt;
CPRS also broadcasts messages to other applications when certain order actions take place.  These actions include new order placed, or an existing order being discontinued, renewed, held, edited, released, or acted on in some other way.  These messages all follow the same format, with the ACTION field varying depending on the specific action being taken. This message can be triggered from a variety of locations in CPRS that can perform these various actions.&lt;br /&gt;
&lt;br /&gt;
==== Example Order message: ====&lt;br /&gt;
&lt;br /&gt;
 ORD^CPRS;ROX-REV.FO-SLC.MED.VA.GOV^37^NW^7093393;1&lt;br /&gt;
 ORD^CPRS^37^NW^7093393;1&lt;br /&gt;
&lt;br /&gt;
 Order message fields:&lt;br /&gt;
&lt;br /&gt;
 Field Name	Example	Comment&lt;br /&gt;
 Message Name	ORD	&lt;br /&gt;
 Originating Program and Domain	CPRS	Both messages broadcast for backward compatibility&lt;br /&gt;
 Patient DFN	37	&lt;br /&gt;
 Action	NW	This field contains the action being taken that triggered this message:&lt;br /&gt;
&lt;br /&gt;
 NW: New order&lt;br /&gt;
 DC: Discontinued order&lt;br /&gt;
 RN: Renewed order&lt;br /&gt;
 HD: Held order&lt;br /&gt;
 XX: Changed order&lt;br /&gt;
 RL: Released order&lt;br /&gt;
 AC: Other unspecified action&lt;br /&gt;
 Order ID	7093393;1	Order IEN in file 100&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= How to Capture Messages =&lt;br /&gt;
&lt;br /&gt;
An example program, written in Delphi, that displays all messages broadcast using the “VistA Event – Clinical” and &amp;#039;VistA Domain Event – Clinical’ Windows message types, is presented here. &lt;br /&gt;
&lt;br /&gt;
== Here is the code of the main form: ==&lt;br /&gt;
&lt;br /&gt;
=== Step 1: Register the &amp;#039;VistA Event – Clinical&amp;#039; and &amp;#039;VistA Domain Event – Clinical&amp;#039; Windows message types when the form is created ===&lt;br /&gt;
&lt;br /&gt;
 procedure TfrmMsgCatch.FormCreate(Sender: TObject);&lt;br /&gt;
 begin&lt;br /&gt;
  FVistaMsg := RegisterWindowMessage(&amp;#039;VistA Event - Clinical&amp;#039;);&lt;br /&gt;
  FVistaDomainMsg := RegisterWindowMessage(&amp;#039;VistA Domain Event - Clinical&amp;#039;);&lt;br /&gt;
  mmoMessages.Lines.Clear;&lt;br /&gt;
 end;&lt;br /&gt;
&lt;br /&gt;
=== Step 2: Override the windows default message handler.  (see procedure ‘DefaultHandler’ in the code below.) ===&lt;br /&gt;
&lt;br /&gt;
  // do the default message handling&lt;br /&gt;
  inherited DefaultHandler(Message);&lt;br /&gt;
&lt;br /&gt;
=== Step 3:  Capture all &amp;#039;VistA Event – Clinical&amp;#039; and &amp;#039;VistA Domain Event – Clinical&amp;#039; messages that were not sent by this window.  (this enables applications to send messages and not process the ones sent by themselves. ===&lt;br /&gt;
&lt;br /&gt;
 procedure TfrmMsgCatch.DefaultHandler(var Message);&lt;br /&gt;
 var&lt;br /&gt;
  buf: array[0..255] of Char;&lt;br /&gt;
 begin&lt;br /&gt;
  inherited DefaultHandler(Message);&lt;br /&gt;
  with TMessage(Message) do if ((Msg = FVistaMsg) or (Msg = FVistaDomainMsg)) and (wParam &amp;lt;&amp;gt; Handle) then&lt;br /&gt;
  begin&lt;br /&gt;
    GlobalGetAtomName(lParam, buf, 255);&lt;br /&gt;
    mmoMessages.Lines.Add(StrPas(buf));&lt;br /&gt;
  end;&lt;br /&gt;
 end;&lt;br /&gt;
 &lt;br /&gt;
 Example MsgCatch program in Delphi:  &lt;br /&gt;
 &lt;br /&gt;
 unit MsgCatch;&lt;br /&gt;
 &lt;br /&gt;
 interface&lt;br /&gt;
 &lt;br /&gt;
 uses&lt;br /&gt;
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,&lt;br /&gt;
  Dialogs, StdCtrls;&lt;br /&gt;
 &lt;br /&gt;
 type&lt;br /&gt;
  TfrmMsgCatch = class(TForm)&lt;br /&gt;
    mmoMessages: TMemo;&lt;br /&gt;
    btnClear: TButton;&lt;br /&gt;
    procedure FormCreate(Sender: TObject);&lt;br /&gt;
    procedure btnClearClick(Sender: TObject);&lt;br /&gt;
  private&lt;br /&gt;
    FVistaMsg: word;&lt;br /&gt;
    FVistaDomainMsg: word;&lt;br /&gt;
    procedure DefaultHandler(var Message); override;&lt;br /&gt;
  end;&lt;br /&gt;
 &lt;br /&gt;
 var&lt;br /&gt;
  frmMsgCatch: TfrmMsgCatch;&lt;br /&gt;
 &lt;br /&gt;
 implementation&lt;br /&gt;
 &lt;br /&gt;
 {$R *.dfm}&lt;br /&gt;
 &lt;br /&gt;
 procedure TfrmMsgCatch.FormCreate(Sender: TObject);&lt;br /&gt;
 begin&lt;br /&gt;
  FVistaMsg := RegisterWindowMessage(&amp;#039;VistA Event - Clinical&amp;#039;);&lt;br /&gt;
  FVistaDomainMsg := RegisterWindowMessage(&amp;#039;VistA Domain Event - Clinical&amp;#039;);&lt;br /&gt;
  mmoMessages.Lines.Clear;&lt;br /&gt;
 end;&lt;br /&gt;
 &lt;br /&gt;
 procedure TfrmMsgCatch.btnClearClick(Sender: TObject);&lt;br /&gt;
 begin&lt;br /&gt;
  mmoMessages.Lines.Clear;&lt;br /&gt;
 end;&lt;br /&gt;
 &lt;br /&gt;
 procedure TfrmMsgCatch.DefaultHandler(var Message);&lt;br /&gt;
 var&lt;br /&gt;
  buf: array[0..255] of Char;&lt;br /&gt;
 begin&lt;br /&gt;
  inherited DefaultHandler(Message);&lt;br /&gt;
  with TMessage(Message) do if ((Msg = FVistaMsg) or (Msg = FVistaDomainMsg)) and (wParam &amp;lt;&amp;gt; Handle) then&lt;br /&gt;
  begin&lt;br /&gt;
    GlobalGetAtomName(lParam, buf, 255);&lt;br /&gt;
    mmoMessages.Lines.Add(StrPas(buf));&lt;br /&gt;
  end;&lt;br /&gt;
 end;&lt;br /&gt;
 &lt;br /&gt;
 end.&lt;/div&gt;</summary>
		<author><name>DavidWhitten</name></author>
	</entry>
</feed>