News:

GinGly.com - Used by 85,000 Members - SMS Backed up 7,35,000 - Contacts Stored  28,850 !!

Main Menu

How to send keys to Notepad?

Started by VelMurugan, Jul 29, 2008, 09:18 PM

Previous topic - Next topic

VelMurugan

How to send keys to Notepad?

Here's the simple code to use SendKeys function effectively
to write to a notepad.

Sending text to another program
------------------------------------------------------------

Private Declare Function SendMessage Lib "user32.dll" Alias "SendMessageA" (ByVal hWnd As Long, ByVal Msg As Long, wParam As Any, lParam As Any) As Long
Private Declare Function FindWindow Lib "user32.dll" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWndParent As Long, ByVal hwndChildAfter As Long, ByVal lpszClass As String, ByVal lpszWindow As String) As Long

Const WM_SETTEXT = 12

Public Sub ToNotePad(x As String)
    'assuming notepad is open
    Dim h As Long, ed As Long, t As Long
    h = FindWindow("Notepad", "Untitled - Notepad")
    If (h <> 0) Then
        ed = FindWindowEx(h, 0, "Edit", "")
        If (ed <> 0) Then
            SendMessage ed, WM_SETTEXT, ByVal 0, ByVal x
        Else
            MsgBox "Could not find notepad's edit"
        End If
    Else
        MsgBox "Could not find notepad"
    End If
End Sub


And for WordPad:

Public Sub ToWordPad(x As String)
    'assuming wordpad is open
    Dim h As Long, ed As Long, t As Long
    h = FindWindow("WordPadClass", "Document - WordPad")
    If (h <> 0) Then
        ed = FindWindowEx(h, 0, "RichEdit20A", "")
        If (ed <> 0) Then
            SendMessage ed, WM_SETTEXT, ByVal 0, ByVal x
        Else
            MsgBox "Could not find wordpad's richedit"
        End If
    Else
        MsgBox "Could not find wordpad"
    End If
End Sub