Ctrl X Ctrl C Ctrl V

Discussion in 'Computer Science & Culture' started by curioucity, Oct 29, 2003.

Thread Status:
Not open for further replies.
  1. curioucity Unbelievable and odd Registered Senior Member

    Messages:
    2,429
    Hello

    About text 'ripping' (runnin outta idea...).
    I have a theory on that, though I'm not entirely sure bout that:
    When we choose to cut or copy a text from a page (not a MSWord document), the text is memorized in a part of the RAM. When Paste is hit, the text in RAM is copied to the area of pasting.
    Now the question, ignoring the theory:
    Suppose we have cut or copied a text. Is there a way to cause the Paste command to display nothing instead of text?
    Thanks
     
  2. Google AdSense Guest Advertisement



    to hide all adverts.
  3. DeeCee Valued Senior Member

    Messages:
    1,793
    Not as far as I'm aware although I believe there are some paste buffer managment progs out there.
    Knowing why you would want to do this may help.
    Why cut/copy in the first place?
    Dee Cee
     
  4. Google AdSense Guest Advertisement



    to hide all adverts.
  5. okinrus Registered Senior Member

    Messages:
    2,669
    You can use the winap to mess around with the clipboard if you really wanted to.
     
  6. Google AdSense Guest Advertisement



    to hide all adverts.
  7. curioucity Unbelievable and odd Registered Senior Member

    Messages:
    2,429
    Of course, I cut/copy a text to create multiple of them, or just transfer them to a different location. The problem is, do we always have to shut down our system just to nullify this particular memory containing the text?
     
  8. okinrus Registered Senior Member

    Messages:
    2,669
    You should be able to code it use the functions <a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/WinUI/WindowsUserInterface/DataExchange/Clipboard/UsingtheClipboard.asp">here</a> but this depends on alot of different things I think.
     
  9. daktaklakpak God is irrelevant! Registered Senior Member

    Messages:
    710
    If you write a program, you can disable the copy and paste functions. So nothing can copy from your program and nothing will paste onto your program.
     
  10. curioucity Unbelievable and odd Registered Senior Member

    Messages:
    2,429
    Nope, I'm not writing one. I only want to know how to erase the 'paste memory' in Windows applications.
     
  11. okinrus Registered Senior Member

    Messages:
    2,669
    I think then all you need to do is call GetClipboardData(CF_TEXT).
    The sequence in used in the winapi example is
    <code>
    if (!IsClipboardFormatAvailable(CF_TEXT))
    return;
    if (!OpenClipboard(hwndMain))
    return;

    hglb = GetClipboardData(CF_TEXT);
    if (hglb != NULL)
    {
    lptstr = GlobalLock(hglb);
    if (lptstr != NULL)
    {
    // Don't need this
    // ReplaceSelection(hwndSelected, pbox, lptstr);
    GlobalUnlock(hglb);
    }
    }
    CloseClipboard();
    </code>
    It's worth a try at least. As long as your application keeps retrieving data from the global clipboard, no other application will be able keep its data there.
     
  12. daktaklakpak God is irrelevant! Registered Senior Member

    Messages:
    710
    If you don't write your own program, you can use clipboard manager to "clear" the "paste memory". Just remember, the OS is not secure and most software aren't too. The so called "clear" feature is just makes the current software forget where the "paste memory" was. The "infomation" could potentially still intact in your computer's memory. And any program that does a full memory scan/dump can reveal them.
     
  13. okinrus Registered Senior Member

    Messages:
    2,669
    I was a bit interested in this so I wrote a short windows program that removes the data. The main change I made to the code that I had written was a call to EmptyClipboard after reading from the clipbaord. To clear the data do file->clear
     
  14. curioucity Unbelievable and odd Registered Senior Member

    Messages:
    2,429
    WOW, that works! You're great! Maybe if I have enough skill I'll try to check you program structure.
     
  15. okinrus Registered Senior Member

    Messages:
    2,669
    Most of it's machine generated. I added a hook into the the winproc that calls clearWindow(hWnd) when the clear menu item is clicked.
    <div>
    <p><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">// clip.cpp : Defines the entry point for the application.</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">//</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">#include</span><span style="font-size: 10pt; font-family: 'Courier New'"> "stdafx.h"</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">#include</span><span style="font-size: 10pt; font-family: 'Courier New'"> "clip.h"</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">#define</span><span style="font-size: 10pt; font-family: 'Courier New'"> MAX_LOADSTRING 100</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">// Global Variables:</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'">HINSTANCE hInst; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">// current instance</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'">TCHAR szTitle[MAX_LOADSTRING]; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">// The title bar text</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'">TCHAR szWindowClass[MAX_LOADSTRING]; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">// the main window class name</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">// Forward declarations of functions included in this code module:</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'">ATOM &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MyRegisterClass(HINSTANCE hInstance);</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'">BOOL &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;InitInstance(HINSTANCE, </span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">int</span><span style="font-size: 10pt; font-family: 'Courier New'">);</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'">LRESULT CALLBACK &nbsp;&nbsp;&nbsp;WndProc(HWND, UINT, WPARAM, LPARAM);</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'">LRESULT CALLBACK &nbsp;&nbsp;&nbsp;About(HWND, UINT, WPARAM, LPARAM);</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">int</span><span style="font-size: 10pt; font-family: 'Courier New'"> APIENTRY _tWinMain(HINSTANCE hInstance,</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HINSTANCE hPrevInstance,</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;LPTSTR &nbsp;&nbsp;&nbsp;lpCmdLine,</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">int</span><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;nCmdShow)</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'">{</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">// TODO: Place code here.</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;MSG msg;</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;HACCEL hAccelTable;</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">// Initialize global strings</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;LoadString(hInstance, IDS_APP_TITLE, szTitle, MAX_LOADSTRING);</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;LoadString(hInstance, IDC_CLIP, szWindowClass, MAX_LOADSTRING);</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;MyRegisterClass(hInstance);</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">// Perform application initialization:</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">if</span><span style="font-size: 10pt; font-family: 'Courier New'"> (!InitInstance (hInstance, nCmdShow)) </span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;{</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">return</span><span style="font-size: 10pt; font-family: 'Courier New'"> FALSE;</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;}</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;hAccelTable = LoadAccelerators(hInstance, (LPCTSTR)IDC_CLIP);</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">// Main message loop:</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">while</span><span style="font-size: 10pt; font-family: 'Courier New'"> (GetMessage(&amp;msg, NULL, 0, 0)) </span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;{</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">if</span><span style="font-size: 10pt; font-family: 'Courier New'"> (!TranslateAccelerator(msg.hwnd, hAccelTable, &amp;msg)) </span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TranslateMessage(&amp;msg);</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DispatchMessage(&amp;msg);</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;}</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">return</span><span style="font-size: 10pt; font-family: 'Courier New'"> (</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">int</span><span style="font-size: 10pt; font-family: 'Courier New'">) msg.wParam;</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'">}</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">//</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">// &nbsp;FUNCTION: MyRegisterClass()</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">//</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">// &nbsp;PURPOSE: Registers the window class.</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">//</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">// &nbsp;COMMENTS:</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">//</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">// &nbsp;&nbsp;&nbsp;This function and its usage are only necessary if you want this code</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">// &nbsp;&nbsp;&nbsp;to be compatible with Win32 systems prior to the 'RegisterClassEx'</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">// &nbsp;&nbsp;&nbsp;function that was added to Windows 95. It is important to call this function</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">// &nbsp;&nbsp;&nbsp;so that the application will get 'well formed' small icons associated</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">// &nbsp;&nbsp;&nbsp;with it.</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">//</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'">ATOM MyRegisterClass(HINSTANCE hInstance)</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'">{</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;WNDCLASSEX wcex;</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;wcex.cbSize = </span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">sizeof</span><span style="font-size: 10pt; font-family: 'Courier New'">(WNDCLASSEX); </span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;wcex.style &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= CS_HREDRAW | CS_VREDRAW;</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;wcex.lpfnWndProc &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= (WNDPROC)WndProc;</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;wcex.cbClsExtra &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= 0;</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;wcex.cbWndExtra &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= 0;</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;wcex.hInstance &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= hInstance;</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;wcex.hIcon &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= LoadIcon(hInstance, (LPCTSTR)IDI_CLIP);</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;wcex.hCursor &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= LoadCursor(NULL, IDC_ARROW);</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;wcex.hbrBackground &nbsp;&nbsp;&nbsp;= (HBRUSH)(COLOR_WINDOW+1);</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;wcex.lpszMenuName &nbsp;&nbsp;&nbsp;&nbsp;= (LPCTSTR)IDC_CLIP;</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;wcex.lpszClassName &nbsp;&nbsp;&nbsp;= szWindowClass;</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;wcex.hIconSm &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= LoadIcon(wcex.hInstance, (LPCTSTR)IDI_SMALL);</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">return</span><span style="font-size: 10pt; font-family: 'Courier New'"> RegisterClassEx(&amp;wcex);</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'">}</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">//</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">// &nbsp;&nbsp;FUNCTION: InitInstance(HANDLE, int)</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">//</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">// &nbsp;&nbsp;PURPOSE: Saves instance handle and creates main window</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">//</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">// &nbsp;&nbsp;COMMENTS:</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">//</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">// &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;In this function, we save the instance handle in a global variable and</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">// &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;create and display the main program window.</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">//</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'">BOOL InitInstance(HINSTANCE hInstance, </span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">int</span><span style="font-size: 10pt; font-family: 'Courier New'"> nCmdShow)</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'">{</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;HWND hWnd;</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;hInst = hInstance; </span><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">// Store instance handle in our global variable</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;hWnd = CreateWindow(szWindowClass, szTitle, WS_OVERLAPPEDWINDOW,</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, NULL, NULL, hInstance, NULL);</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">if</span><span style="font-size: 10pt; font-family: 'Courier New'"> (!hWnd)</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;{</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">return</span><span style="font-size: 10pt; font-family: 'Courier New'"> FALSE;</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;}</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;ShowWindow(hWnd, nCmdShow);</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;UpdateWindow(hWnd);</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">return</span><span style="font-size: 10pt; font-family: 'Courier New'"> TRUE;</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'">}</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">void</span><span style="font-size: 10pt; font-family: 'Courier New'"> clearClipboard(HWND hWnd)</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'">{</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;HANDLE hglb;</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;LPTSTR lptstr;</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">if</span><span style="font-size: 10pt; font-family: 'Courier New'"> (!IsClipboardFormatAvailable(CF_TEXT)) </span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">return</span><span style="font-size: 10pt; font-family: 'Courier New'">; </span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">if</span><span style="font-size: 10pt; font-family: 'Courier New'"> (!OpenClipboard(hWnd)) </span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">return</span><span style="font-size: 10pt; font-family: 'Courier New'">; </span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;hglb = GetClipboardData(CF_TEXT); </span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">if</span><span style="font-size: 10pt; font-family: 'Courier New'"> (hglb != NULL) &nbsp;{ </span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;lptstr = (LPTSTR)GlobalLock(hglb); </span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MessageBox(hWnd, lptstr, "Going to delete this data", MB_OK);</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">// clear clipboard</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;EmptyClipboard();</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;GlobalUnlock(hglb); </span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;} </span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;CloseClipboard(); </span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'">}</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">//</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">// &nbsp;FUNCTION: WndProc(HWND, unsigned, WORD, LONG)</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">//</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">// &nbsp;PURPOSE: &nbsp;Processes messages for the main window.</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">//</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">// &nbsp;WM_COMMAND &nbsp;&nbsp;&nbsp;- process the application menu</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">// &nbsp;WM_PAINT &nbsp;&nbsp;&nbsp;- Paint the main window</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">// &nbsp;WM_DESTROY &nbsp;&nbsp;&nbsp;- post a quit message and return</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">//</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">//</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'">LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'">{</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">int</span><span style="font-size: 10pt; font-family: 'Courier New'"> wmId, wmEvent;</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;PAINTSTRUCT ps;</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;HDC hdc;</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">switch</span><span style="font-size: 10pt; font-family: 'Courier New'"> (message) </span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;{</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">case</span><span style="font-size: 10pt; font-family: 'Courier New'"> WM_COMMAND:</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;wmId &nbsp;&nbsp;&nbsp;= LOWORD(wParam); </span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;wmEvent = HIWORD(wParam); </span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">// Parse the menu selections:</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">switch</span><span style="font-size: 10pt; font-family: 'Courier New'"> (wmId)</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">case</span><span style="font-size: 10pt; font-family: 'Courier New'"> IDM_ABOUT:</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DialogBox(hInst, (LPCTSTR)IDD_ABOUTBOX, hWnd, (DLGPROC)About);</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">break</span><span style="font-size: 10pt; font-family: 'Courier New'">;</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">case</span><span style="font-size: 10pt; font-family: 'Courier New'"> IDM_EXIT:</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DestroyWindow(hWnd);</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">break</span><span style="font-size: 10pt; font-family: 'Courier New'">;</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">case</span><span style="font-size: 10pt; font-family: 'Courier New'"> ID_FILE_CLEAR:</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;clearClipboard(hWnd);</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">break</span><span style="font-size: 10pt; font-family: 'Courier New'">;</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">default</span><span style="font-size: 10pt; font-family: 'Courier New'">:</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">return</span><span style="font-size: 10pt; font-family: 'Courier New'"> DefWindowProc(hWnd, message, wParam, lParam);</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">break</span><span style="font-size: 10pt; font-family: 'Courier New'">;</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">case</span><span style="font-size: 10pt; font-family: 'Courier New'"> WM_PAINT:</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;hdc = BeginPaint(hWnd, &amp;ps);</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">// TODO: Add any drawing code here...</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;EndPaint(hWnd, &amp;ps);</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">break</span><span style="font-size: 10pt; font-family: 'Courier New'">;</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">case</span><span style="font-size: 10pt; font-family: 'Courier New'"> WM_DESTROY:</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PostQuitMessage(0);</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">break</span><span style="font-size: 10pt; font-family: 'Courier New'">;</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">default</span><span style="font-size: 10pt; font-family: 'Courier New'">:</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">return</span><span style="font-size: 10pt; font-family: 'Courier New'"> DefWindowProc(hWnd, message, wParam, lParam);</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;}</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">return</span><span style="font-size: 10pt; font-family: 'Courier New'"> 0;</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'">}</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'; color: #008000">// Message handler for about box.</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'">LRESULT CALLBACK About(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'">{</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">switch</span><span style="font-size: 10pt; font-family: 'Courier New'"> (message)</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;{</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">case</span><span style="font-size: 10pt; font-family: 'Courier New'"> WM_INITDIALOG:</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">return</span><span style="font-size: 10pt; font-family: 'Courier New'"> TRUE;</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">case</span><span style="font-size: 10pt; font-family: 'Courier New'"> WM_COMMAND:</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">if</span><span style="font-size: 10pt; font-family: 'Courier New'"> (LOWORD(wParam) == IDOK || LOWORD(wParam) == IDCANCEL) </span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;EndDialog(hDlg, LOWORD(wParam));</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">return</span><span style="font-size: 10pt; font-family: 'Courier New'"> TRUE;</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">break</span><span style="font-size: 10pt; font-family: 'Courier New'">;</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;}</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'"> &nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; font-family: 'Courier New'; color: #0000ff">return</span><span style="font-size: 10pt; font-family: 'Courier New'"> FALSE;</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"><span style="font-size: 10pt; font-family: 'Courier New'">}</span></p>
    <p dir="ltr" style="text-align: left; margin-bottom: 0.0000in; margin-top: 0.0000in; margin-right: 0.0000in"></p>
    </div>
     
  16. curioucity Unbelievable and odd Registered Senior Member

    Messages:
    2,429
    *collapses*
    *gets up*
    to think that I'm bad at C++.........
     
Thread Status:
Not open for further replies.

Share This Page