永发信息网

VB 怎么阻止别的窗口的关闭

答案:4  悬赏:10  手机版
解决时间 2021-05-03 23:02
  • 提问者网友:半生酒醒
  • 2021-05-03 13:53

比如现在我有一个窗口,名称是:“ABCD”
这个窗口将在5秒后自动关闭
他的窗口句柄可以用
dim h as long
h=FindWindow(vbnullstring,"ABCD")
得到

我现在另外写个程序,来阻止这个窗口的自我关闭

要怎么写呢???

 

VB不好使,用其他的语言也可以...

最佳答案
  • 五星知识达人网友:爱难随人意
  • 2021-05-03 14:02

对,可以用内存修改工具来修改关闭时间。


也可以查到这个内存地址然后用VB来重新发送内存地址。


就像外挂一样。

全部回答
  • 1楼网友:酒安江南
  • 2021-05-03 17:02
可以截获这个窗口的wm_close消息阻止他关闭,大概流程是 form1.frm Private Sub Form_Load() lpPrevWndProc = SetWindowLong(Me.hwnd, -4, AddressOf WindowProc) '设置消息过滤函数为WindowProc函数,该函数必须位于VB的模块文件内 end sub bas1.bas Function WindowProc(ByVal hwnd2 As Long, ByVal message2 As Long, ByVal wParam2 As Long, ByVal lParam2 As Long) As Long '只要不把消息传递给默认窗口消息处理函数窗口就不会关闭 If message2 = WM_CLOSE Then   exitfunction   End If WindowProc = CallWindowProc(lpPrevWndProc, hwnd2, message2, wParam2, lParam2) '把消息传递给默认处理函数 end function
  • 2楼网友:过活
  • 2021-05-03 15:50
HOOK API可以实现
  • 3楼网友:从此江山别
  • 2021-05-03 14:30

看样子得通过修改程序所在的内存才行。将5秒修改成更长的时间即可。

不过简单的可以通过金山游侠之类的修改。

如果这个窗体有加密那就更麻烦了。就不止是获得句柄PID修改内存。

要代码不现实。随便建议。非您要的答案

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯