| 
     | 
    
   
     | 
    Zac M. Leider | 
    
   
     | 
    St. Norbert College | 
    
   
     | 
    CS460 | 
    
   
     | 
    April 29th, 2003 | 
    
   
   
   | 
 
 
  | 
  
   | 
 
 
  
  
  
  
   
     | 
     | 
    
   
     | 
    The system must recognize several popular brand
    name remote controls. | 
    
   
     | 
    The system must be able to control an
    application on a PC remotely. | 
    
   
     | 
    The system should be able to control an event
    such as mouse or keyboard in an application. | 
    
   
     | 
    Investigate using the remote to control OS
    command (gui and shell). | 
    
   
   
   | 
 
 
  
  
  
  
   
     | 
     | 
     | 
    
   
     | 
    Started with C++ Microsoft Foundation Classes | 
    
   
     | 
    Scrapped first program and went to the “Dark
    Side” as Dr. Pankratz called it | 
    
   
     | 
    Easy use of VB and OnComm method | 
    
   
     | 
    TreeView control | 
    
   
     | 
    Simple data structures | 
    
   
     | 
    structs and arrays | 
    
   
   
   | 
 
 
  | 
  
   | 
 
 
  
  
  
  
   
     | 
     | 
    
   
     | 
    Modular Design | 
    
   
     | 
    Bottom-up design | 
    
   
     | 
    Multitasking | 
    
   
     | 
    Focus Small | 
    
   
     | 
    Keep “working” version handy | 
    
   
     | 
    Proper VB attire | 
    
   
   
   | 
 
 
  | 
  
   | 
 
 
  
  
  
  
   
     | 
     | 
    
   
     | 
    More robust | 
    
   
     | 
    Simulates actions the same way the actual
    program does | 
    
   
     | 
    Hard to find applications API constants | 
    
   
     | 
    Gets the job done but with issues | 
    
   
     | 
    Need window active - use SetForegroundWindow API
    call | 
    
   
     | 
    Problems with minimized windows | 
    
   
   
   | 
 
 
  
  
  
  
   
     | 
     | 
    
   
     | 
    WinAmp 2.76 | 
    
   
     | 
    InterVideo WinDVD 4.9 | 
    
   
     | 
    Microsoft Speech SDK 5.1 | 
    
   
     | 
    Microsoft Office 2000 – Word & PowerPoint | 
    
   
     | 
    AOL Instant Messenger | 
    
   
     | 
    Internet Explorer | 
    
   
     | 
    Accessories – Calculator & Paint | 
    
   
   
   | 
 
 
  
  
  
  
   
     | 
     | 
    
   
     | 
    Program searches for designated files in
    beginning to load (Remote1-5.txt) | 
    
   
     | 
    Stores current remotes out to text files upon
    exiting the program | 
    
   
     | 
    Can type your own if you know what you are doing | 
    
   
   
   | 
 
 
  | 
  
   | 
 
 
  
  
  
  
   
     | 
     | 
     | 
     | 
    
   
     | 
    Implement more applications with pre-programmed
    commands. | 
    
   
     | 
    Adding and storing of remotes while running. | 
    
   
     | 
    Create a program to recognize remotes. | 
    
   
     | 
    Implement functions to cycle through windows,
    minimize/maximize and close them. | 
    
   
     | 
    Recursive function to get handle to all windows | 
    
   
     | 
    GetDesktopWindow, GetWindow for child and
    siblings | 
    
   
   
   | 
 
 
  | 
  
   | 
 
 
  | 
  
   | 
 
 
  | 
  
   | 
 
 
  
  
  
  
   
     | 
     | 
    
   
     | 
    Methodology – Modular design, multitasking,
    focus small, “working” version, VB attire | 
    
   
     | 
    Make use of the CS faculty, if they have time,
    they are all more then willing to help. | 
    
   
     | 
    Used meeting with Dr. Pankratz as a way to stay
    on track. | 
    
   
     | 
    I found the Internet quite useful with my
    project. | 
    
   
   
   | 
 
 
  
  
  
  
   
     | 
     | 
    
   
     | 
    General programming knowledge | 
    
   
     | 
    CS skills from past 4 years | 
    
   
     | 
    Debugging | 
    
   
     | 
    Problem solving | 
    
   
     | 
    Modular design | 
    
   
     | 
    Event Programming | 
    
   
     | 
    Years of TV remote usage | 
    
   
   
   | 
 
 
  
  
  
  
   
     | 
     | 
    
   
     | 
    Attack project with interest and enthusiasm. | 
    
   
     | 
    Debug, debug and … debug some more. | 
    
   
     | 
    Do a better job than I have at updating your web
    page and your journal. | 
    
   
     | 
    Allow time for the unexpected. | 
    
   
     | 
    Do a good job with documentation and explanation
    for future use. | 
    
   
     | 
    Know when to say when. | 
    
   
   
   | 
 
 
  
  
  
  
   
     | 
     | 
    
   
     | 
    Professor Blahnik, Dr. McVey and Dr. Pankratz | 
    
   
     | 
    My parents | 
    
   
     | 
    My girlfriend Nadia | 
    
   
     | 
    The IRMAN | 
    
   
   
   | 
 
 
  | 
  
   |