Solved

Alternative to SendKeys

Posted on 2002-05-30
4
488 Views
Last Modified: 2012-05-04
I need to control a menu in an external app.

SendKeys "%C" & "H"
or
SendKeys "%C" & "x"

does not always work.

I have the Window Handle, which means I can get the Menu Handle. How can I use PostMessage or SendMessage to do this?

0
Comment
Question by:Neal Hartman
  • 2
4 Comments
 
LVL 16

Expert Comment

by:Richie_Simonetti
ID: 7045552
0
 
LVL 16

Expert Comment

by:Richie_Simonetti
ID: 7045553
0
 
LVL 1

Accepted Solution

by:
Toad224 earned 100 total points
ID: 7046035
I believe you would use SendMessage with WM_CHAR... ie.

    iChar = Asc("A")  ' ansi value
    nRtn = SendMessage(hTxtLabel, WM_CHAR, iChar, 1)


This would be a good site to look at:
http://home.att.net/~geekStuff/wshAvoidingSendkeysPage.htm


You could always use the keybd_event API to do stuff like that...

Public Declare Sub keybd_event Lib "user32" Alias "keybd_event" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)


Good luck.
0
 
LVL 1

Author Comment

by:Neal Hartman
ID: 7046921
You put me in the right direction.
Acually it is:

Dim M1 As Long
Dim M2 As Long
Static sExit As Long
Static sHangUp As Long

    M1 = GetMenu(MainHwnd)
    M2 = GetSubMenu(M1, 0)
    sExit = GetMenuItemID(M2, 12)
    sHangUp = GetMenuItemID(M2, 11)


        PostMessage MainHwnd, WM_COMMAND, sHangUp, 0
        PostMessage MainHwnd, WM_COMMAND, sExit, 0

0

Featured Post

How your wiki can always stay up-to-date

Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
- Increase transparency
- Onboard new hires faster
- Access from mobile/offline

Join & Write a Comment

Background What I'm presenting in this article is the result of 2 conditions in my work area: We have a SQL Server production environment but no development or test environment; andWe have an MS Access front end using tables in SQL Server but we a…
I was working on a PowerPoint add-in the other day and a client asked me "can you implement a feature which processes a chart when it's pasted into a slide from another deck?". It got me wondering how to hook into built-in ribbon events in Office.
Get people started with the process of using Access VBA to control Outlook using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Microsoft Outlook. Using automation, an Access applic…
Get people started with the process of using Access VBA to control Excel using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Excel. Using automation, an Access application can laun…

757 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

20 Experts available now in Live!

Get 1:1 Help Now