在宏完成之前,请防止计算机上发生任何单击事件。

时间:2018-06-19 12:41:11

标签: vba access-vba mouseclick-event

是否可以防止任何鼠标单击计算机,直到Access VBA上的宏结束?该宏需要特定的应用程序来关注,因此我不希望用户在宏运行时转到其他地方。

3 个答案:

答案 0 :(得分:3)

您可以使用WinApi BlockInput函数来阻止任何输入,包括任务切换或其他任何内容。

        x      in            session_id    user_id
0     0.0     1.0     trn-04a23351-283d       paul
1    -1.0     2.0     trn-04a23351-283d       paul
2    -1.0     3.0     trn-04a23351-283d       paul
3    -1.0     4.0     trn-04a23351-283d       paul
4    -1.0     1.0      blz-412313we-333       paul
5    -1.0     2.0      blz-412313we-333       paul
6     0.0     3.0      blz-412313we-333       paul
7     1.0     1.0         bz-0000-01101      chris
8     0.0     2.0         bz-0000-01101      chris
9     1.0     1.0      pppppppppppppppp      chris
10    1.0     2.0      pppppppppppppppp      chris
11    1.0     3.0      pppppppppppppppp      chris
12   -1.0     1.0       333333333333333     philip
13   -1.0     2.0       333333333333333     philip
14   -1.0     3.0       333333333333333     philip
15    0.0     1.0          zz-222222222     philip
16   -1.0     2.0          zz-222222222     philip
17    0.0     1.0       f-32355261-ss3d      sarah
18   -1.0     2.0       f-32355261-ss3d      sarah
19    0.0     3.0       f-32355261-ss3d      sarah
20    0.0     1.0               adasdfs      sarah
21   -1.0     2.0               adasdfs      sarah
22    0.0     3.0               adasdfs      sarah

请注意,Declare PtrSafe Function BlockInput Lib "User32.dll" (ByVal fBlockIt As Boolean) As Boolean Private Sub DoStuff() On Error GoTo ErrHandler BlockInput True 'Do stuff here BlockInput False Exit Sub ErrHandler: BlockInput False 'Important! During message boxes, error handling, etc. input will still be blocked 'Handle error here Exit Sub 是绝对的。除了 Ctrl + Alt + Delete 之外,您什么都不能做。

在某些安全配置中,BlockInput可以被禁用,但是通常,不需要管理员权限或类似权限就可以使用它。

答案 1 :(得分:0)

那是不可能的。您随时可以转到另一个窗口或任务栏。

答案 2 :(得分:0)

是的

我无法在VBA中完成,但是有一些程序无法做到。 因此,您可能必须使用VBA-ProgramYouChoose-combination找到解决方法。

以下是链接:

https://www.raymond.cc/blog/how-to-restrict-or-disable-keyboard-mouse-and-even-power-button/

他们讨论的是这些程序:

  

KeyFreeze
  ToddlerTrap
  幼儿钥匙
  儿童钥匙锁
  键盘锁
  儿童锁
  捕食者
  锁定Windows

您将不得不对其进行测试,因为您只希望禁用鼠标,所以我选择了Kid-Key-Lock。