Click here to Skip to main content
Click here to Skip to main content

Spying on computer usage via keyboard hooks

, 22 Sep 2001
Rate this:
Please Sign up or sign in to vote.
This program can be used to find out how your computer is being used while you are away.

Introduction

This program can be used to find out how your computer is being used while you are away. After installing, this program stores all the keystrokes and uploads a text file containing these strokes to an FTP site daily.

There are 4 sections to this program as described below. One is the keyboard hook. Second is the text file FTP uploader. The third section deals with looking for a connection to the internet. The last one is the installation program. The four sections are discussed below.

I. The keyboard hook DLL.

The first section of the program is a keyboard hook DLL. There is nothing new in this DLL. The DLL stores all the keystrokes in a text file in the System Folder. This DLL is described in detail in the Keyboard hook DLL article in CodeProject.

II. Uploading a text file to a FTP site

This program simply uploads the text file in the system folder to a FTP site.

III. Looking for connection to the Internet

This program looks for a connection to the 'net. If the connection is found, it calls the program to upload the text file created in section II. This is the main program that executes every time the system starts up. This program installs the keyboard hook and checks the registry to find if a text file has been uploaded today. If not, it sets a timer that checks for a network connection.

IV. Installing the programs in your system

This program installs the 3 sections to your computer. The executables of sections I to III are stored as binary resources. After the first execution of this program, the 3 resource files are stored in the System folder as Servv22.dll, Serv22.exe and Servpost.exe.

I know the description is not as good as it could be, so please check the source files. These really help to show how this program works. I know that there are many faults in this program structure, so please excuse me, as I am still learning VC++.

I welcome your valuable comments about this article.

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here

About the Author

H. Joseph

United States United States
No Biography provided

Comments and Discussions

 
GeneralCharacters come in different order sometimes Pinmembernavinkaus19-Jan-06 4:31 
GeneralWM_KEYDOWN & WM_KEYUP PinmemberGaiza29-Jan-04 9:47 
GeneralKeyboard Hook Pinmemberpercyvimal4-Sep-03 21:13 
Generalto hirosh! PinmemberSage_Archer16-Feb-03 2:49 
QuestionHow to get the Window Title PinsussAnonymous5-Sep-02 10:12 
AnswerRe: How to get the Window Title PinmemberCarlos Antollini5-Sep-02 10:30 
GeneralRe: How to get the Window Title PinsussAnonymous6-Sep-02 3:07 
GeneralRe: How to get the Window Title Pinmemberblongtq7-Aug-03 23:02 
QuestionI am unable to see the process in task bar ? PinmemberAnonymous5-Jun-02 6:42 
QuestionUnHooked when keypressed and window not in focus ? PinmemberAnonymous19-Feb-02 0:27 
AnswerRe: UnHooked when keypressed and window not in focus ? PinmemberFordy11-Mar-02 9:42 
AnswerRe: UnHooked when keypressed and window not in focus ? PinsussAnonymous22-Jul-02 6:45 
I can't say that I'm an expert on this subject either, but from what I gather, the dll is mapped to each process's memory. It's not actually unhooked, it would be like an entirely different dll monitoring the host program's ( the program the dll is attached to ) keystokes. I found a similar program elsewhere that uses the FindWindow() function to find the main program ( the one that installed the keyboard hook ) and then it uses this to CWnd::SendMessage() containing the actual keystroke. This seems to work pretty good. Hope this isn't too cryptic of an explanation. Blush | :O

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

| Advertise | Privacy | Mobile
Web01 | 2.8.140721.1 | Last Updated 23 Sep 2001
Article Copyright 2001 by H. Joseph
Everything else Copyright © CodeProject, 1999-2014
Terms of Service
Layout: fixed | fluid