怎样将一个外部程序的一些菜单按纽屏蔽掉?

intel810 2003-08-22 12:30:09
如题
...全文
40 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
blueheart9734 2003-08-23
  • 打赏
  • 举报
回复
有时间自己写一些有用的东西,控制别人的程序有什么用啊,无聊~~
flc 2003-08-23
  • 打赏
  • 举报
回复
XUEXI
up
blueheart9734 2003-08-23
  • 打赏
  • 举报
回复
HAHAHAHA~~~~~
瞧你那小样~~气鼓鼓了吧~o_o~
intel810 2003-08-23
  • 打赏
  • 举报
回复
我写什么东西还得征求你同意?你是VB协会的主席啊?还是微软的代言人?抑或是这里的版主?
至于你所说的"有时间写一些有用的东西",我表示绝对的赞同,但问题是,你眼中那些所谓"有用的东西",在我眼中未必有用,你总不会认为全世界的人都跟你编写一样的代码才叫有用吧?
intel810 2003-08-22
  • 打赏
  • 举报
回复
"我的代码只是使菜单置灰"

你的代码在网上有很多,而且据我所知"你的代码"有以下部份是没用的你都粘上去了:

Private Type MENUITEMINFO
cbSize As Long
fMask As Long
fType As Long
fState As Long
wID As Long
hSubMenu As Long
hbmpChecked As Long
hbmpUnchecked As Long
dwItemData As Long
dwTypeData As String
cch As Long
End Type

这个用户自定义类型是没用的

hwdSubMenu = GetSubMenu(hwdMenu, 1) '这条代码也是多余的,不需要用到这个句柄

现在问题是,"我的电脑"里面的"文件","编辑"等菜单有没有办法屏蔽?
射天狼 2003-08-22
  • 打赏
  • 举报
回复
楼主说的是屏蔽,不是删除(这么霸道)
我的代码只是使菜单置灰(不可用)
iiboy 2003-08-22
  • 打赏
  • 举报
回复
楼上的朋友API使用得不错呀!嗯!应该可以解决问题!
jornet 2003-08-22
  • 打赏
  • 举报
回复
http://expert.csdn.net/Expert/topic/2110/2110175.xml?temp=3.596133E-02
lihonggen0 2003-08-22
  • 打赏
  • 举报
回复
以上程序是Remove计算器的“查看”菜单

运行的时候打开 计算器
lihonggen0 2003-08-22
  • 打赏
  • 举报
回复
Private Const MF_DISABLED = &H2&
Private Const MF_ENABLED = &H0&
Private Const MF_BYPOSITION = &H400&
Private Const MF_GRAYED = &H1&
Private Const MFT_RADIOCHECK = &H200&
Private Const MIIM_TYPE = &H10
Private Const MIIM_SUBMENU = &H4

Const MF_REMOVE = &H1000&

Private Type MENUITEMINFO
cbSize As Long
fMask As Long
fType As Long
fState As Long
wID As Long
hSubMenu As Long
hbmpChecked As Long
hbmpUnchecked As Long
dwItemData As Long
dwTypeData As String
cch As Long
End Type
Private Declare Function SetMenuItemInfo Lib "user32" Alias "SetMenuItemInfoA" (ByVal hMenu As Long, ByVal uItem As Long, ByVal fByPosition As Long, lpmii As MENUITEMINFO) As Long
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function GetMenu Lib "user32" (ByVal hwnd As Long) As Long
Private Declare Function SetMenu Lib "user32" (ByVal hwnd As Long, ByVal hMenu As Long) As Long
Private Declare Function GetSubMenu Lib "user32" (ByVal hMenu As Long, ByVal nPos As Long) As Long
Private Declare Function RemoveMenu Lib "user32" (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long) As Long

Private Sub Command1_Click()

Dim strMenu As MENUITEMINFO
Dim hwd As Long, hwdMenu As Long, hwdSubMenu As Long

hwd = FindWindow(vbNullString, "计算器")
hwdMenu = GetMenu(hwd) '取得窗口的菜单

hwdSubMenu = GetSubMenu(hwdMenu, 1)
'如果不为零就成功
MsgBox hwd & "," & hwdMenu & "," & hwdSubMenu
RemoveMenu hwdMenu, 1, MF_BYPOSITION Or MF_REMOVE
End Sub

射天狼 2003-08-22
  • 打赏
  • 举报
回复
Private Const MF_DISABLED = &H2&
Private Const MF_ENABLED = &H0&
Private Const MF_BYPOSITION = &H400&
Private Const MF_GRAYED = &H1&

Private Declare Function EnableMenuItem Lib "user32" (ByVal hMenu As Long, ByVal wIDEnableItem As Long, ByVal wEnable As Long) As Long
Private Declare Function SetMenuItemInfo Lib "user32" Alias "SetMenuItemInfoA" (ByVal hMenu As Long, ByVal un As Long, ByVal bool As Boolean, lpcMenuItemInfo As MENUITEMINFO) As Long
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function GetMenu Lib "user32" (ByVal hwnd As Long) As Long
Private Declare Function SetMenu Lib "user32" (ByVal hwnd As Long, ByVal hMenu As Long) As Long
Private Declare Function GetSubMenu Lib "user32" (ByVal hMenu As Long, ByVal nPos As Long) As Long

Private Sub Command1_Click()
Dim strMenu As MENUITEMINFO
Dim hwd As Long, hwdMenu As Long, hwdSubMenu As Long

hwd = FindWindow(vbNullString, "TextPad") 'TextPad为您要屏蔽程序的标题,自己改吧
hwdMenu = GetMenu(hwd) '取得窗口的菜单
hwdSubMenu = GetSubMenu(hwdMenu, 1)
MsgBox hwd & "," & hwdMenu & "," & hwdSubMenu '如果输出不为零就正确
EnableMenuItem hwdMenu, 1, MF_DISABLED + MF_BYPOSITION + MF_GRAYED
'第二个参数为你要屏蔽的菜单的位置
End Sub
hxy1982 2003-08-22
  • 打赏
  • 举报
回复
关注……

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧