英裔在美国地位:用VB来模拟一次菜单操作(其他应用程序)
来源:百度文库 编辑:偶看新闻 时间:2024/04/28 03:59:50
用VB来模拟一次菜单操作(其他应用程序)收藏
思路:
1.用FindWindow查目标应用程序的句柄
2.用GetMenu,GetSubMenu查菜单句柄
3.用GetMenuItemID查菜单ID
4.用SendMessage 加WM_COMMAND消息,模拟一次菜单操作
例子:模拟单击记事本程序 "文件"->"另存为"菜单
Private Declare Function SendMessage Lib "user32.dll" Alias "SendMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, 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 GetMenuItemID Lib "user32.dll" (ByVal hMenu As Long, ByVal nPos As Long) As Long
Private Declare Function GetSubMenu Lib "user32.dll" (ByVal hMenu As Long, ByVal nPos As Long) As Long
Private Const WM_COMMAND As Long = &H111
Private Sub Command1_Click()
Dim hWnd As Long, hMenu As Long, MenuID As Long
hWnd = FindWindow(vbNullString, "新建 文本文档 - 记事本") '记事本的句柄,默认新建
hMenu = GetMenu(hWnd)
hMenu = GetSubMenu(hMenu, 0) '"文件"菜单的句柄
MenuID = GetMenuItemID(hMenu, 3) '子菜单"另存为"的ID
SendMessage hWnd, WM_COMMAND, MenuID, ByVal 0
End Sub
请问用VB编好的应用程序,怎样才能把它的图标改为其他图片显示?
怎么样用VB改写应用程序
WORD 正在等候其他应用程序完成OLE操作 ?
菜单操作
用SendMessage模拟键盘操作
用SendMessage模拟菜单命令无效??
用VB怎么做保存菜单?
VB使用____来管理应用程序的所有文件
怎么用vb来操作sqlite数据库,要求具体的完整例子
怎么用VB模拟F1到F12
用vb.net如何实现模拟键盘
如何利用VB编写像按键精灵一样能模拟键盘操作?
开机后svchost.exe应用程序错误,其他操作还是正常的。
vb弹出菜单设计
VB中 菜单编辑?
vb弹出式菜单问题
VB 右键菜单
如何VB用进行文件操作
用VB操作数据库的问题
怎样用VB打开应用程序?
vb如何导出应用程序
怎样用VB自动更新应用程序?
什么是操作选择菜单
如何用VB设计一个简单的应用程序来实现“单击按钮打开运行计算机中的某个应用程序”