我对Windows API有问题。 我正在运行Office 2019和Win10。 我有两台具有相同客户端的计算机,但是在一台计算机上,我使用从user32.dll进行鼠标移动来进行一些自动化过程。 一切正常。 但是在这台机器上,我需要摆脱使用Outlook规则时会弹出的“新电子邮件警报”弹出窗口。 原因是我正在使用鼠标移动器功能。 所以我添加了以下代码来关闭弹出窗口,但它无法正常工作:
Public Declare PtrSafe Function ShowWindow Lib "User32" (ByVal hWnd As Long, nCmdShow As Long) As Long
Public Declare PtrSafe Function FindWindow Lib "User32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Public Const WM_CLOSE = &H10
Public Const SW_HIDE = 0
Public Const SW_SHOW = 5
Public Const SW_MINIMIZE = 6
Sub Win_Finder1()
'IE_window = FindWindow(vbNullString, "Untitled - Notepad")
IE_window = FindWindow(vbNullString, "New Mail Alerts")
'MsgBox IE_window
Call ShowWindow(IE_window, SW_HIDE)
有趣的事实是Msgbox将返回该值。 我还使用了代码来查看活动进程,并且该进程已存在。 正如您在常量中所看到的,我还使用了closewindow函数,将其最小化。 先感谢您。 M